Whats wrong with this mutiplayer script

hey i am following the tutorial but i am facing a problem here , the problem is

NullReferenceException: Object reference not set to an instance of an object
MainManager.Menu_Main () (at Assets/Scripts/MainManager.cs:47)
MainManager.OnGUI () (at Assets/Scripts/MainManager.cs:23)

my both script are

using UnityEngine;
using System.Collections;

public class MainManager : MonoBehaviour {

public string CurrentMenu;
public string MatchName;
public string MatchPassword;
public int MatchMaxPlayers = 32 ;

private Vector2  ScrollLobby = Vector2.zero ;

void Start()
{
CurrentMenu = “Main”;
MatchName = “match name” + Random.Range(0,5000);
}

void OnGUI()
{
if(CurrentMenu == “Main”)
Menu_Main();
if(CurrentMenu == “Lobby”)
Menu_Lobby();
if(CurrentMenu == “Host”)
Menu_HostGame();

}

public void NavigateTo(string nextmenu)
{
CurrentMenu = nextmenu; //stores the value of current menue
}

private void Menu_Main()
{
if(GUI.Button(new Rect(10, 20, 200, 50),“Host game”))
{
NavigateTo(“Host”);
}
if(GUI.Button(new Rect(10, 70, 200, 50),“Refresh”))
{
MasterServer.RequestHostList(“DeathMatch”);

	}
MultiplayerManager.instance.PlayerName = GUI.TextField(new Rect(300, 20, 150, 50),MultiplayerManager.instance.PlayerName);	
GUI.Label(new Rect(220, 20, 150, 50),"Player Name");

  if(GUI.Button(new Rect(460, 10, 100, 30),"Save Name"))
	{
		PlayerPrefs.SetString("PlayerName",MultiplayerManager.instance.PlayerName);
	}

GUILayout.BeginArea(new Rect(Screen.width - 400 ,0,400, Screen.height),"Server List","Box");
	
	foreach(HostData match in MasterServer.PollHostList())
	{
		GUILayout.BeginHorizontal("BOX");
		
		GUILayout.Label(match.gameName);
		if(GUILayout.Button ("Connect"))
		{
			Network.Connect(match);
		}	
		
		
		GUILayout.EndHorizontal();
	}
	
	
GUILayout.EndArea();	
}

private void Menu_HostGame()
{
if(GUI.Button(new Rect(10, 20, 200, 50),“Back”))
{
NavigateTo(“Main”);
}
if(GUI.Button(new Rect(10, 70, 200, 50),“Start Server”))
{
MultiplayerManager.instance.StartServer(MatchName, MatchPassword,MatchMaxPlayers);
}
GUI.Label(new Rect(220,10,130,30),“Match Name”);
MatchName = GUI.TextField(new Rect(400,10,200,30),MatchName);

	GUI.Label(new Rect(220,40,130,30),"Match Password");
	MatchPassword = GUI.PasswordField(new Rect(400,40,200,30),MatchPassword,'*');
	
	GUI.Label(new Rect(220,70,130,30),"Match Max Players");
	GUI.Label(new Rect(400,70,200,30),MatchMaxPlayers.ToString());
    MatchMaxPlayers = Mathf.Clamp(MatchMaxPlayers ,8,32);
	
	if(GUI.Button(new Rect(425,70,25,30),"+"))
		MatchMaxPlayers +=2;
	if(GUI.Button (new Rect(450,70,25,30),"-"))
		MatchMaxPlayers -=2;



}	

private void Menu_Lobby()
{
ScrollLobby = GUILayout.BeginScrollView(ScrollLobby,GUILayout.MaxWidth(200));

	foreach(MPPlayer pl in MultiplayerManager.instance.PlayerList)
	{
		GUILayout.Box(pl.PlayerName);
	}
	
	GUILayout.EndScrollView();
	
	
}	

void OnServerInitialized()
{
NavigateTo(“Lobby”);
}

void OnConnectedToServer()
{
NavigateTo(“Lobby”);
}

}

and 2nd script MultiplayerManager

using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class MultiplayerManager : MonoBehaviour
{

public static MultiplayerManager instance ;
private string MatchName = " ";
private string MatchPassword = " ";
private int MatchMaxUsers = 32;
public string PlayerName = "Ali"  ;

public List< MPPlayer> PlayerList = new List(); 


void start()
{
	instance = this;
	PlayerName = PlayerPrefs.GetString ("PlayerName");
}

public void StartServer(string servername , string serverpassword, int maxusers)
{
	MatchName = servername;
	MatchPassword = serverpassword;
	MatchMaxUsers = maxusers;
	Network.InitializeServer(MatchMaxUsers,2550,false);
	MasterServer.RegisterHost("Death Match",MatchName,"");
	//Network.InitializeSecurity();
	
}
void OnServerInitialized()
{
	Server_PlayerJoinRequest(PlayerName,Network.player);
}

void OnConnectedToServer()
{
	networkView.RPC("Server_PlayerJoinRequest",RPCMode.Server,PlayerName,Network.player);
}
void OnPlayerDisconnected(NetworkPlayer id)
{
	networkView.RPC("Client_RemovePlayer",RPCMode.All, id);
}
[RPC]
void Server_PlayerJoinRequest(string playername, NetworkPlayer view)
{
	networkView.RPC("client_AddPlayerToList",RPCMode.All, playername, view);
}
[RPC]
void client_AddPlayerToList(string playername, NetworkPlayer view)
{
	MPPlayer tempplayer = new MPPlayer();
	tempplayer.PlayerName = playername;
	tempplayer.PlayerNetwork = view;
	PlayerList.Add(tempplayer);
}
[RPC]
void Client_RemovePlayer(NetworkPlayer view)
{
	MPPlayer  temppl = null;
	foreach(MPPlayer pl in PlayerList)
	{
		if(pl.PlayerNetwork == view)
		{
			temppl = pl;
		}
	}
	if(temppl != null)
	{
		PlayerList.Remove(temppl);
	}
	
}

}

public class MPPlayer
{
public string PlayerName= “”;
public NetworkPlayer PlayerNetwork;
}

The Start() method in MultiplayerManager is incorrectly named start() (Lower case S) so the instance value is never set.