private void Awake()
    {
        // singleton
        if (Instance != this)
        {
            Destroy(gameObject);
            return;
        }
        DontDestroyOnLoad(gameObject);

        fb            = FirebaseRest.Instance;
        Banks         = new List <Bank>();
        BankListReady = false;
        InitReady     = false;
    }
    async void Start()
    {
        fb = FirebaseRest.Instance;

        // === Create question bank ===

        /*
         * List<Question> bank = new List<Question>();
         * bank.Add(new Question("Is Python case sensitive when dealing with identifiers?"
         *  , "yes", new string[] { "No", "machine dependent", "none of the mentioned" }));
         * fb.CreateQuestionBank("Python", bank);
         * fb.AddQuestionToBank("Python", new Question("What is the maximum possible length of an identifier?"
         *  , "any length", new string[] { "31 characters", "63 characters", "127 chrarcters" }));
         */

        // === Retrieve data ===

        StartCoroutine(RetrieveQuestionBank());
    }