anchor.diff:            InputTransactionIndex = inputTransactionIndex
             ResponseScriptLength = responseScriptLength
             ResponseScript = responseScript
  -          SequenceNumber = sequenceNumber }
  +          SequenceNumber = sequenceNumber
  +          NumberOfOutputs = numberOfOutputs
  +          Outputs = Array.ofList outputs }
   
       printfn "%A" block 
   
  
positive.code:     | x when x = 0xffuy -> int64 (bytesToInt32 bytes.[1 .. 8]), 9
      | _ -> failwith "unexpectedly large byte :)"
  
  
  type Block =
      { Version: int
  
negative.code:     let responseScriptLengthInt = int responseScriptLength // assume responseScriptLength will always fit into an int32
      let responseScript = bytesToProcess.[offSet .. offSet + responseScriptLengthInt] 
      let sequenceNumber = bytesToInt32 bytesToProcess.[offSet + responseScriptLengthInt + 1 .. offSet + responseScriptLengthInt + 3]
      let numberOfOutputs, bytesUsed = decodeVariableLengthInt bytesToProcess.[offSet + responseScriptLengthInt + 4 .. offSet + responseScriptLengthInt + 12]
      let rec loop remainingOutputs offSet acc =
          let output, offSet' = readOutput offSet bytesToProcess
          let remainingOutputs' = remainingOutputs - 1
          if remainingOutputs' > 0 then
              loop remainingOutputs' offSet' (output :: acc)
          else
              acc
      let outputs = loop numberOfOutputs (offSet + responseScriptLengthInt + bytesUsed)
      let block =
          { Version = version
            Hash = hash
  