anchor.diff:                      if triggers.Contains((fileName, "onLoginResponse")) then
                           if triggersAdditions.Contains((fileName, "onLoginResponse")) then
                               appendAdditions <| (triggersAdditions.Item((fileName, "onLoginResponse")) :?> string)
  -                        appendAdditions <| "\nprivate void GetResponsetStreamCallback(IAsyncResult callbackResult)
  +                        appendAdditions <| "\nprivate void LoginResponsetStreamCallback(IAsyncResult callbackResult)
   {
   HttpWebRequest request = (HttpWebRequest)callbackResult.AsyncState;
   HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(callbackResult);
  
positive.code:             | "else" when reader.NodeType = XmlNodeType.EndElement -> builderAppend <| "\n}"
              | "transition" -> builderAppend <| "\nDispatcher.BeginInvoke(new Action( () => NavigationService.Navigate(new Uri(\"/" + (tryGetAttribute name "form-id") + ".xaml\", UriKind.Relative))));"
              | "login-request" -> 
                  builderAppend <| ("\nHttpWebRequest myRequest = (HttpWebRequest)HttpWebRequest.Create(\"" + (tryGetAttribute name "url") + "\");
  myRequest.Method = \"POST\";
  myRequest.ContentType = \"application/x-www-form-urlencoded\";
  login = " + tryGetAttribute name "login-id" + ".Text;
  password = " + tryGetAttribute name "password-id" + ".Text;
  myRequest.BeginGetRequestStream(new AsyncCallback(GetRequestStreamCallback), myRequest);")
                  append currentAdditionsBuilder <| "\nprivate string login = \"\";
  private string password = \"\";
  private void GetRequestStreamCallback(IAsyncResult callbackResult)
  {
      HttpWebRequest myRequest = (HttpWebRequest)callbackResult.AsyncState;
      Stream postStream = myRequest.EndGetRequestStream(callbackResult);
  
      string postData = \"login=\" + login + \"&password=\" + password;
      byte[] byteArray = Encoding.UTF8.GetBytes(postData);
  
      postStream.Write(byteArray, 0, byteArray.Length);
      postStream.Close();
   
      myRequest.BeginGetResponse(new AsyncCallback(GetResponsetStreamCallback), myRequest);
  }"
  
              | "save-session" -> 
                  append currentAdditionsBuilder <| "\nprivate string sessionId;"
                  builderAppend <| "\nint semicolonPos = result.IndexOf(';');
  sessionId = result.Substring(semicolonPos + 1, result.Length - semicolonPos - 1);"
              | "patients-request" -> builderAppend <| "\nWebClient data = new WebClient();
  data.DownloadStringCompleted += new DownloadStringCompletedEventHandler(getResponse);
  data.DownloadStringAsync(new Uri(\"" + (tryGetAttribute name "url") + "\"));"
              // разбор строки patients и выставление пациентов на карте
              | "showmap" ->
                  builderAppend <| "\nint count = 0;
  
negative.code: 
      if (!pushpins.ContainsKey(currentPair))
      {
          Dispatcher.BeginInvoke( () =>
          {
              pushpins.Add(currentPair, comment);
              Pushpin pushpin = new Pushpin();
              pushpin.Background = new SolidColorBrush(Colors.Red);
              pushpin.Tap += new EventHandler<GestureEventArgs>(pushPin_Tap);
              pushpin.Location = new GeoCoordinate(x, y);
              Border border = new Border();
              border.Visibility = System.Windows.Visibility.Collapsed;
              border.HorizontalAlignment = System.Windows.HorizontalAlignment.Center;
              pushpin.Content = border;
              TextBlock text = new TextBlock();
              text.Text = comment;
              border.Child = text;
              PushpinLayer.AddChild(pushpin, pushpin.Location);
          });
      }
  }
  
  