anchor.diff: -﻿
  -open System
  +﻿open System
   open System.IO
   open System.Collections.Generic
   open System.Collections
  
positive.code:         use writer = new BinaryWriter(File.Open(fileName, FileMode.OpenOrCreate))
          values |> Seq.iter (fun v -> if v.IsSome then writer.Write(v.Value))
  
  //    let readValue (reader:BinaryReader)  cellIndex = 
  //        // set stream to correct location
  //        reader.BaseStream.Position <- cellIndex*4L
  //        match reader.ReadInt32() with
  //        | Int32.MinValue -> None
  //        | v -> Some(v)
          
      let readValue (map:bitmap []) (reader:BinaryReader)  cellIndex =
          match BitMap.sparseIndex map cellIndex with
          | Some(index) -> SimpleReadWrite.readValue reader index
          | None -> None
          
      let readValues (map:bitmap []) valuesFileName indices = 
          use reader = new BinaryReader(File.Open(valuesFileName, FileMode.Open, FileAccess.Read, FileShare.Read))
          // Use list or array to force creation of values (otherwise reader gets disposed before the values are read)
          let values = 
              indices
              |> List.ofSeq
              
  //        let values = List.map (readValue reader) (List.ofSeq indices)
          values
  
  module AsciiProvider = 
  
negative.code:     let testGebco() =
          ignore // TODO
  
  
      let runall() =
          simpleReadWriteTest()
          memoryMappedReadTest()
          testSmallMarspec()
          testAllMarspec10m()
  
  Test.runall()