public static T Get <T>(this ThreadLocal <T> t) { return(t.Value); }
public static void Remove <T>(this ThreadLocal <T> t) { t.Dispose(); }
public static void Set <T>(this ThreadLocal <T> t, T val) { t.Value = val; }