Static Coroutine Singleton Class

using UnityEngine;
using System.Collections;

public class StaticCoroutine : MonoBehaviour {

  public static StaticCoroutine instance;

  void Awake () {
    instance = this;
  }

  IEnumerator Perform(IEnumerator coroutine) {
    yield return StartCoroutine(coroutine);
  }

  public static void DoCoroutine(IEnumerator coroutine) {
    instance.StartCoroutine(instance.Perform(coroutine) );
  }
}