anchor.diff:  			{
   				if(entities[element.id] != null)
   				entities[element.id].updateGlow(true);
  -				
  +
   				intersectingObjects[element.id] = entityRect;
   			}
   			else
  
positive.code: 			camY = currentStreet.bounds.height - ui.gameScreenHeight;
  			translateY = ui.gameScreenHeight - (currentStreet.bounds.height - posY);
  		}
  		
  		camera.setCamera((camX~/1).toString()+','+(camY~/1).toString());
  		
  		//translateZ forces the whole operation to be gpu accelerated (which is very good)
  		String transform = 'translateX('+translateX.toString()+'px) translateY('+translateY.toString()+'px)';
  		if(!facingRight)
  		{
  			transform += ' scale(-1,1)';
  			playerName.style.transform = 'scale(-1,1)';
  			
  			if(chatBubble != null)
  			chatBubble.textElement.style.transform = 'scale(-1,1)';
  		}
  		else
  		{
  			playerName.style.transform = 'scale(1,1)';
  			
  			if(chatBubble != null)
  			chatBubble.textElement.style.transform = 'scale(1,1)';
  		}
  		
  		playerParentElement.style.transform = transform;
  		playerParentElement.attributes['translateX'] = translateX.toString();
  		playerParentElement.attributes['translateY'] = translateY.toString();
  		num diffX = translateX-prevX, diffY = translateY-prevY;
  	}
  	
  	void checkCollision(Element element)
  	{
  		//if the main screen is hidden don't check for quoin collection
  
negative.code: 					//if our feet are below the ladder, stop climbing
  					if(playerRect.top+playerRect.height > ladder.boundary.top+ladder.boundary.height)
  					break;
  
  					posY += speed/4 * dt;
  					climbingDown = true;
  					activeClimb = true;
  