internal void Setup(AlterraShippingTarget mono)
        {
            if (!_coroutineStarted)
            {
                base.InvokeRepeating(nameof(UpdateDisplay), DelayedStartTime * 3f, RepeatingUpdateInterval);
            }

            DisplayLanguagePatching.AdditionPatching();


            _mono = mono;

            if (FindAllComponents() == false)
            {
                QuickLogger.Error("// ============== Error getting all Components ============== //");
                return;
            }


            if (_mono == null)
            {
                QuickLogger.Error("CubeGeneratorMono component not found on the GameObject.");
                return;
            }

            if (_mono.GetTransferHandler() == null)
            {
                QuickLogger.Error($"Transfer Handler is returning null.");
                return;
            }

            _animatorController = _mono.AnimatorController;

            if (_mono != null)
            {
                _mono.OnReceivingTransfer += OnReceivingTransfer;
            }
            if (_mono != null)
            {
                _mono.OnTimerChanged += OnTimerChanged;
            }
            if (_mono != null)
            {
                _mono.OnItemSent += OnItemSent;
            }
            _initialized = true;

            _serializedColors = ColorList.Colors;


            CheckCurrentPage();

            DrawPage(1);

            DrawColorPage(1);

            ShippingTargetManager.GlobalChanged += GlobalChanged;

            InvokeRepeating("UpdateStatus", 1f, 0.5f);
        }