public static GameReference FirstOrDefault(this GameReference[] source, GameReferenceFilter filter)
        {
            var r = default(GameReference);

            foreach (var s in source)
            {
                if (filter(s))
                {
                    r = s;
                    break;
                }
            }

            return r;
        }
        public static GameReference FirstOrDefault(this GameReference[] source, GameReferenceFilter filter)
        {
            var r = default(GameReference);

            foreach (var s in source)
            {
                if (filter(s))
                {
                    r = s;
                    break;
                }
            }

            return(r);
        }