anchor.diff:      stringN<'T> (matchHead HeadByte.String16) (binParser.byte2 |>> (binParser.toUInt16 >> int))
     let string32<'T when 'T : comparison> =
       stringN<'T> (matchHead HeadByte.String32) (binParser.byte4 |>> (binParser.toUInt32 >> int))
  -  let string'<'T when 'T : comparison> = choice [ fixString<'T>; string8<'T>; string16<'T>; string32<'T> ]
  +  let string'<'T when 'T : comparison> =
  +    choice [
  +      fixString<'T>
  +      string8<'T>
  +      string16<'T>
  +      string32<'T>
  +    ]
   
     let private binN<'T when 'T : comparison> matchHead length =
       matchHead
  
positive.code:   let bin32<'T when 'T : comparison> =
      binN<'T> (matchHead HeadByte.Binary32) (binParser.byte4 |>> (binParser.toUInt32 >> int))
  
    let binary<'T when 'T : comparison> = choice [ bin8<'T>; bin16<'T>; bin32<'T> ]
  
    let private fixExtN<'T when 'T : comparison> head data (f: TypeCode -> byte [] -> ExtendedValue<'T>) =
      matchHead head
  
negative.code:     ]
  
    let float32'<'T when 'T : comparison> =
      matchHead HeadByte.Float32
      >>. binParser.floatP
      |>> (Float32: float32 -> MsgPackValue<'T>)
    let float64'<'T when 'T : comparison> =
      matchHead HeadByte.Float64
      >>. binParser.byteN 8
      |>> (fun xs -> Float64 (System.BitConverter.ToDouble(xs, 0)): MsgPackValue<'T>)
    let float'<'T when 'T : comparison> = float32'<'T> <|> float64'<'T>
  
  