anchor.diff:  
       override this.ViewDidLoad () =
           controller.Table.Source <- source
  -        controller.Table.ReloadData()
  +
  +        Async.startWithContinuation
  +            (Places.regions country.Id)
  +            (function
  +                | Api.ApiOk rs -> 
  +                    regions <- rs
  +                    this.Table.ReloadData()
  +                | error -> this.HandleApiFailure error
  +            )
   
   [<Register ("EditProfileViewController")>]
   type EditProfileViewController (handle:nativeint) =
       inherit UITableViewController (handle)
   
       let pickerMedia = new MediaPicker()
  -    let pickerCountry = new CountryPickerViewController([| "Canada"; "United States"; "United Kingdom" |])
  -    let pickerRegion = new RegionPickerViewController([|  "Canada"; "United States"; "United Kingdom"  |])
  +    let mutable country:LocationCountry option = None
  +    let mutable region:LocationRegion option = None
   
       [<Outlet>]
       member val Birthday:UITextField = null with get, set
  
positive.code:         | 2, 0 -> this.ChooseCountry () 
          | 2, 1 -> this.ChooseRegion () 
          | _, _ -> ()
  
  
  
  [<Register ("SignupViewController")>]
  
negative.code: 
      override this.ViewDidLoad () =
          this.Table.Source <- source
  
          Async.startWithContinuation
              (Places.countries ())
              (function
                  | Api.ApiOk cs -> 
                      countries <- cs
                      this.Table.ReloadData()
                  | error -> this.HandleApiFailure error
              )
  
  [<Register("RegionPickerViewController")>]
  type RegionPickerViewController (country:LocationCountry, itemSelected) as controller =
      inherit UIViewController ("RegionPickerViewController", null)
  
      let mutable regions:LocationRegion [] = [||]
      let source = { 
          new UITableViewSource() with
          override this.GetCell(tableView, indexPath) =
              let region = regions.[indexPath.Row]
              let cell = 
                  match tableView.DequeueReusableCell "region-cell" with
                  | null -> new UITableViewCell (UITableViewCellStyle.Default, "region-cell")
                  | c -> c
  
              cell.Tag <- indexPath.Row
              cell.TextLabel.Text <- region.Name
              cell
  
          override this.RowsInSection(tableView, section) = regions.Length
  
          override this.RowSelected(tableView, indexPath) =
              tableView.DeselectRow (indexPath, false)
              itemSelected regions.[indexPath.Row]
      }
  
      [<Outlet>]
  