my QandA array is not working when you choose 3 wrong answers

okay my problem is when i have 3 wrong answers and 1 correct the program will stop saying argument is out of range and i dont know why but when i only choose the correct answers its working well so here’s the code and thank you in advance

public class wawa : MonoBehaviour {
    private bool Poop;
    public string Info;

    private List<string[]> questions  = new List<string[]>();
    private List<int> answerOrder = new List<int>(new int[] {1,2,3,4});

    void DrawInfo() {
        Rect rect = new Rect(500, 100, 400, 200);
        Rect close = new Rect(600, 500, 200, 100);
        if(GUI.Button(close, "ATTACK")) {
            Poop = !Poop;
        }

        if (Poop) {
            GUI.Box(rect, Info);
            GUI.Label(new Rect(520, 110, 400, 30), questions[0][0]);
            if (GUI.Button(new Rect(520, 200, 100, 30), questions[0][answerOrder[0]])) {
                HandleAnswer(answerOrder[0]);
            }
            if (GUI.Button(new Rect(520, 250, 100, 30), questions[0][answerOrder[1]])) {
                HandleAnswer(answerOrder[1]);
            }
            if (GUI.Button(new Rect(780, 200, 100, 30), questions[0][answerOrder[2]])) {
                HandleAnswer(answerOrder[2]);
            }
            if (GUI.Button(new Rect(780, 250, 100, 30), questions[0][answerOrder[3]])) {
                HandleAnswer(answerOrder[3]);
            }
        }
    }

    private void HandleAnswer(int answer) {
        if (answer == 1) {
            
            NextQuestion();
        }
        else {
          
        }
    }

    void OnGUI() {
      
        if(questions.Count > 0) {
            DrawInfo();
        }
    }

    void Start() {
        // String order: question, correct, wrong, wrong, wrong
        questions.Add(new string[] { "What in the capital of France?", "Paris", "New York", "London", "Madrid" });
        questions.Add(new string[] { "Which of these is an amphibian?", "Frog", "Shark", "Lizard", "Hawk" });
        questions.Add(new string[] { "Which of these is an planet?", "Neptune", "Thor", "Pegasus", "Hera" });
	questions.Add(new string[] { "Which of these is smallest planet?", "Pluto", "Thor", "Pegasus", "Hera" });
questions.Add(new string[] { "What in the capital of Philippines?", "Manila", " Las Pinas", "Makati", "Bulacan" });
        Shuffle(questions);
        Shuffle(answerOrder);
    }

    void NextQuestion() {
        questions.RemoveAt(0);
        Shuffle(answerOrder);
    }

   
    static readonly System.Random rng = new System.Random();
    public static void Shuffle<T>(IList<T> list) {
        int n = list.Count;
        while(n > 1) {
            n--;
            int k = rng.Next(n + 1);
            T value = list[k];
            list[k] = list[n];
            list[n] = value;
        }
    }
}

When you answer the last question, the list questions becomes empty DURING the GUI loop. If the answer is the second one, you’ll get an error for the third one because questions is empty. Either check if questions is empty for each button, or empty it at another time.