anchor.diff:  			//mobile
   			querySelector("#ChatBubbleDisconnect").style.display = "inline-block";
   			querySelector("#ChatBubbleText").hidden = true;
  -			
  +
   			//wait 5 seconds and try to reconnect
   			new Timer(new Duration(seconds:5),()
   			{
  
positive.code: 			});
  		});
  	}
  	
  	void _addmessage(Map map)
  	{
  		NodeValidator validator = new NodeValidatorBuilder()
    			..allowHtml5()
          	..allowElement('a', attributes: ['href','class',])
  			..allowElement('span');
  		
  		numMessages++;
  		if(numMessages > 100) //limit chat history (each pane is seperate) to 100 messages
  		{
  			chatHistory.children.removeAt(0);
  			if(chatHistory.children.first.className == "RowSpacer") //if the top is a row spacer, remove that too
  				chatHistory.children.removeAt(0);
  			
  			//mobile
  			DivElement conversation = querySelector('#conversation-'+channelName.replaceAll(" ","_"));
  			conversation.children.removeAt(0);
  			
  			numMessages--;
  		}
  		
  		if(chat.getPlayMentionSound() && map["message"].toLowerCase().contains(chat.username.toLowerCase()) && int.parse(prevVolume) > 0 && isMuted == '0')
  		{
  			playSound('mention');
  
negative.code: 			if((chatHistory.scrollHeight - chatHistory.offsetHeight - chatHistory.scrollTop).abs() < 5)
              	atTheBottom = true;
  		}
  
  		chatHistory.children.add(chatString);
  		chatHistory.children.add(rowSpacer);
  
  		if(atTheBottom || (map['username'] == chat.username || map['newUsername'] == chat.username))
  			chatHistory.scrollTop = chatHistory.scrollHeight;
  
  		//for mobile version
  		DivElement chatLine = new DivElement()
  			..className = "bubble"
  			..setInnerHtml(chatString.innerHtml, treeSanitizer: new NullTreeSanitizer());
  
  		if(chatString.text.startsWith(chat.username))
  			chatLine.classes.add("me");
  		else
  			chatLine.classes.add("you");
  
  		DivElement chatRow = new DivElement()
  			..className = "bubbleRow";
  		chatRow.children.add(chatLine);
  
  		DivElement conversation = querySelector('#conversation-'+channelName.replaceAll(" ","_"));
  		atTheBottom = false;
  		if(!(querySelector("#MobileStyle") as LinkElement).disabled)
  