anchor.diff:                      else
                           notSupported
                   binary.leftId <- getCurrentId t binary.left
  +                binary.rightId <- rightId
  +                instr
               | Assign binary ->
                   let operand =
                       match binary.right with
  
positive.code:                     setType t binary.left type_
                  | _ -> ()
                  binary.leftId <- getCurrentId t binary.left
                  match binary.left with
                  | Stack _ -> ()
                  | _ -> ()
              | Call unary ->
                  (getType t unary.operand) := Function
                  unary.operandId <- getCurrentId t unary.operand
              | Return unary ->
                  if functionReturnsValue blocks then
                      unary.operandId <- getCurrentId t unary.operand
              | Break
              | Branch _
              | Nop ->
                  ()
      let parameterTypes = new List<DataType>()
      for pair in t.parameterTypes.OrderBy(fun x -> x.Key) do
          parameterTypes.Add(pair.Value |> build)
  
negative.code:             | ShiftRight binary
              | Subtract binary
              | Xor binary ->
                  let rightId = getCurrentId t binary.right
                  match binary.right with
                  | Value _ ->
                      if not (typeExists t binary.left) then
  