Modal Panel Problem

I’ve been having problems with my Modal Panel. It should be just showing an ok button that, when clicked, should take the users to another scene. But instead of showing just one button, it shows 4 and instead of opening a new scene, it just does nothing! Here’s my code:

using UnityEngine;
using UnityEngine.UI;
using UnityEngine.Events;
using System.Collections;

public class ModalPanel : MonoBehaviour {

	public Text question;
	public Button yesButton;
	public Button noButton;
	public Button cancelButton;
	public Button okButton;
	public GameObject modalPanelObject;

	private static ModalPanel modalPanel;
	
	public static ModalPanel Instance () {
		if (!modalPanel) {
			modalPanel = FindObjectOfType(typeof (ModalPanel)) as ModalPanel;
			if (!modalPanel)
				Debug.LogError ("There needs to be one active ModalPanel script on a GameObject in your scene.");
		}
		
		return modalPanel;
	}
	
	//Yes/No/Cancel/Ok: A string, A Yes event, a no event, an OK event and a cancel event
	public void Choice (string question, UnityAction yesEvent, UnityAction noEvent, UnityAction cancelEvent, UnityAction okEvent) {
		modalPanelObject.SetActive (true);

		yesButton.onClick.RemoveAllListeners ();
		yesButton.onClick.AddListener (yesEvent);
		yesButton.onClick.AddListener (ClosePanel);

		noButton.onClick.RemoveAllListeners ();
		noButton.onClick.AddListener (noEvent);
		noButton.onClick.AddListener (ClosePanel);

		cancelButton.onClick.RemoveAllListeners ();
		cancelButton.onClick.AddListener (cancelEvent);
		cancelButton.onClick.AddListener (ClosePanel);

		okButton.onClick.RemoveAllListeners ();
		okButton.onClick.AddListener (okEvent);
		Application.LoadLevel("MainScene");
		okButton.onClick.AddListener (ClosePanel);

		this.question.text = question;

		yesButton.gameObject.SetActive (false);
		noButton.gameObject.SetActive (false);
		cancelButton.gameObject.SetActive (false);
		okButton.gameObject.SetActive (true);
	}

	void ClosePanel() {
		modalPanelObject.SetActive (false);
	}

}

Please Help Me!

Okay… so the function takes in a String and 4 unity events. When you call it, you only provide a String and 1 unity event. How does that even compile? You need to provide all the arguments for it to work.