public static ISchoolRabbitHole GetTarget(GoToSchoolInRabbitHole ths)
        {
            ISchoolRabbitHole target = ths.Target as ISchoolRabbitHole;

            if (target == null)
            {
                SchoolRabbitholeProxy proxy;
                if (!sSchoolRabbitholeProxies.TryGetValue(ths.Target, out proxy))
                {
                    proxy = new SchoolRabbitholeProxy();
                    sSchoolRabbitholeProxies.Add(ths.Target, proxy);
                }

                target = proxy;
            }

            return(target);
        }
        public static ISchoolRabbitHole GetTarget(GoToSchoolInRabbitHole ths)
        {
            ISchoolRabbitHole target = ths.Target as ISchoolRabbitHole;
            if (target == null)
            {
                SchoolRabbitholeProxy proxy;
                if (!sSchoolRabbitholeProxies.TryGetValue(ths.Target, out proxy))
                {
                    proxy = new SchoolRabbitholeProxy();
                    sSchoolRabbitholeProxies.Add(ths.Target, proxy);
                }

                target = proxy;
            }

            return target;
        }