anchor.diff:      readStream.ReadToEnd()
   *)
   
  -let prepareTextECB text =
  +let prepareTextECB (text: string) : byte [] [] =
       text
       |> strToBytes
       |> padPKCS7 16
  -    |> Seq.toArray
       |> Array.chunkBySize 16
   
   let AESEncryptECB (key: string) (input: byte [] []) : byte [] =
  
positive.code: 
  (* PKCS7 Padding *)
  
  let padPKCS7 (length: int) (bytes: byte seq) : byte seq =
      let targetLen = length - (Seq.length bytes % length)
      let padLen = if targetLen > 0 then targetLen else Seq.length bytes
      let pad = repeat (byte padLen)
      Seq.append bytes (Seq.take padLen pad)
          
  (* AES *)
  
  
negative.code:         | x::y::[] -> let encrypted = encrypt x y
                        List.rev (encrypted::acc)
          | x::y::xs -> let encrypted = encrypt x y
                        applyCBCEncrypt (encrypted::xs) key (encrypted::acc)
  
  let rec applyCBCDecrypt blocks key acc : byte [] list =
      let decrypt x y = AESDecryptECB key y |> Array.ofSeq |> xor x |> Seq.toArray
  