protected override void Dispose(bool disposing)
 {
     base.Dispose(disposing);
     if (disposing)
     {
         if (FlyingObjects != null)
         {
             FlyingObjects.Dispose();
             FlyingObjects = null;
         }
         if (DestinationViewController != null)
         {
             DestinationViewController.Dispose();
             DestinationViewController = null;
         }
         if (DidEnterBackgroundToken != null)
         {
             DidEnterBackgroundToken.Dispose();
             DidEnterBackgroundToken = null;
         }
         if (WillEnterForgroundToken != null)
         {
             WillEnterForgroundToken.Dispose();
             WillEnterForgroundToken = null;
         }
     }
 }
        public override void ViewDidDisappear(bool animated)
        {
            base.ViewDidDisappear(animated);

            DidEnterBackgroundToken?.Dispose();
            DidEnterBackgroundToken = null;

            WillEnterForgroundToken?.Dispose();
            WillEnterForgroundToken = null;

            DesignChangedToken?.Dispose();
            DesignChangedToken = null;
        }
        public override void ViewWillLayoutSubviews()
        {
            base.ViewWillLayoutSubviews();

            if (FlyingObjects != null)
                FlyingObjects.Frame = View.Frame;
        }
        void StartFlyingObjectsView()
        public override void ViewDidDisappear(bool animated)
        {
            base.ViewDidDisappear(animated);

            if (DidEnterBackgroundToken != null)
            {
                DidEnterBackgroundToken.Dispose();
                DidEnterBackgroundToken = null;
            }
            if (WillEnterForgroundToken != null)
            {
                WillEnterForgroundToken.Dispose();
                WillEnterForgroundToken = null;
            }
        }
        protected override void Dispose(bool disposing)
        {
            base.Dispose(disposing);
            if (disposing)
            {
                FlyingObjects?.Dispose();
                FlyingObjects = null;

                ContainerNavigationController?.Dispose();
                ContainerNavigationController = null;

                DidEnterBackgroundToken?.Dispose();
                DidEnterBackgroundToken = null;

                WillEnterForgroundToken?.Dispose();
                WillEnterForgroundToken = null;

                DesignChangedToken?.Dispose();
                DesignChangedToken = null;
            }
        }


       
        void ShowBanner(Dictionary<string, string> advertisingTargetInfo)