anchor.diff: -﻿#r "FSharp.Data.dll"
  +#r "FSharp.Data.dll"
   #r "FSharpx.Core.dll"
   
   open System.Collections
  
positive.code:     Seq.map (fun (id, a) -> (id, Array.map discretise a)) rows
  
  let boolArrayToUint32 (a : bool []) =
      let a = Array.rev a
      let x = BitArray a
      let u = [| 0 |]
      x.CopyTo(u, 0)
      uint32 (u.[0])
  
  let boolArrayToUint64 (a : bool []) =
      if Array.length a <= 32 then
          uint64 (boolArrayToUint32 a)
      else
  
negative.code:               yield (newFlip ^^^ !flip) ||| state
                flip := newFlip }
  
  let geneChange genes state state' =
      let index = Array.length genes - (int <| System.Math.Log(float <| state ^^^ state', 2.0)) - 1
      genes.[index]
  
  