anchor.diff:      procedure Build_ButtonClick(Sender: TObject);
       procedure Build_Fill(Sender:TObject);
       procedure Chat_Post(Sender:TObject; Key:word);
  +    procedure Chat_Close(Sender: TObject);
  +    procedure Allies_Close(Sender: TObject);
       procedure Store_Fill(Sender:TObject);
       procedure Stats_Fill(Sender:TObject);
       procedure Menu_Fill(Sender:TObject);
       procedure SetPause(aValue:boolean);
       procedure ShowDirectionCursor(Show:boolean; const aX: integer = 0; const aY: integer = 0; const Dir: TKMDirection = dir_NA);
  +    procedure UpdatePositions;
     protected
       Panel_Main:TKMPanel;
         Image_Main1,Image_Main2,Image_Main3,Image_Main4,Image_Main5:TKMImage; //Toolbar background
         KMMinimap:TKMMinimap;
         Label_Stat, Label_PointerCount, Label_CmdQueueCount, Label_SoundsCount, Label_NetworkDelay, Label_Hint:TKMLabel;
         Button_Main:array[1..5]of TKMButton; //4 common buttons + Return
  +      Image_MPChat, Image_MPAllies: TKMImage; //Multiplayer buttons
         Image_Message:array[1..32]of TKMImage; //Queue of messages covers 32*48=1536px height
         Image_Clock:TKMImage; //Clock displayed when game speed is increased
         Label_Clock:TKMLabel;
  
positive.code: KM_Sound, KM_InterfaceMainMenu, Forms, KM_ResourceGFX;
  
  const
    ResRatioCount = 4;
    ResRatioType:array[1..ResRatioCount] of TResourceType = (rt_Steel, rt_Coal, rt_Wood, rt_Corn);
    ResRatioHint:array[1..ResRatioCount] of word = (298, 300, 302, 304); //Distribution of rt_***
  
negative.code:     Image_DirectionCursor := TKMImage.Create(Panel_Main,0,0,35,36,519);
      Image_DirectionCursor.Hide;
  
      Create_Allies_Page; //MessagePage sibling
      Create_Chat_Page; //MessagePage sibling
      Create_Message_Page; //Must go bellow message stack
  
      Image_MPChat := TKMImage.Create(Panel_Main,TOOLBAR_WIDTH,fRender.RenderAreaSize.Y-48,30,48,494);
      Image_MPChat.HighlightOnMouseOver := true;
      Image_MPChat.OnClick := MPChat_Show;
      Image_MPAllies := TKMImage.Create(Panel_Main,TOOLBAR_WIDTH,fRender.RenderAreaSize.Y-48*2,30,48,496);
      Image_MPAllies.HighlightOnMouseOver := true;
      Image_MPAllies.OnClick := MPAllies_Show;
  
      //Chat and Allies setup should be accessible only in Multiplayer
      if not fGame.MultiplayerMode then begin
        Image_MPChat.Hide;
        Image_MPAllies.Hide;
      end;
  
      for i:=low(Image_Message) to high(Image_Message) do
      begin
  