public static object GetDefaultValue(CallSiteStorage<Func<CallSite, Proc, Hash, object, object>>/*!*/ storage, Hash/*!*/ self, object key) { if (self.DefaultProc != null) { var site = storage.GetCallSite("call", 2); return site.Target(site, self.DefaultProc, self, key); } return self.DefaultValue; }