anchor.diff:  let seekReadPropertyMapRowUncached ctxtH idx =
       let ctxt = getHole ctxtH
       count ctxt.countPropertyMap;
  -    let addr = ctxt.rowAddr TableNames.PropertyMap idx
  -    seek ctxt.is addr;
  -    let tidx = readUntaggedIdx TableNames.TypeDef ctxt
  -    let propsIdx = readUntaggedIdx TableNames.Property ctxt
  +    let mutable addr = ctxt.rowAddr TableNames.PropertyMap idx
  +    let tidx = seekReadUntaggedIdx TableNames.TypeDef ctxt &addr
  +    let propsIdx = seekReadUntaggedIdx TableNames.Property ctxt &addr
       (tidx,propsIdx)
   
   /// Read Table Property 
   let seekReadPropertyRow ctxt idx =
       count ctxt.countProperty;
  -    let addr = ctxt.rowAddr TableNames.Property idx
  -    seek ctxt.is addr;
  -    let flags = readUInt16AsInt32 ctxt.is
  -    let nameIdx = readStringIdx ctxt
  -    let typIdx = readBlobIdx ctxt
  +    let mutable addr = ctxt.rowAddr TableNames.Property idx
  +    let flags = seekReadUInt16AsInt32Adv ctxt &addr
  +    let nameIdx = seekReadStringIdx ctxt &addr
  +    let typIdx = seekReadBlobIdx ctxt &addr
       (flags,nameIdx,typIdx) 
   
   /// Read Table MethodSemantics 
  
positive.code:     resourcesAddr:int32;
      strongnameAddr:int32;
      vtableFixupsAddr:int32;
      is: InputChannel;
      infile:string;
      userStringsStreamPhysicalLoc: int32;
      stringsStreamPhysicalLoc: int32;
  
negative.code:     ()
  #endif
          
  
  let seekReadUInt16Adv ctxt (addr: byref<int>) =  
      let res = seekReadUInt16 ctxt.is addr
      addr <- addr + 2
      res
  
  let seekReadInt32Adv ctxt (addr: byref<int>) = 
      let res = seekReadInt32 ctxt.is addr
      addr <- addr+4
      res
  
  let seekReadUInt16AsInt32Adv ctxt (addr: byref<int>) = 
      let res = seekReadUInt16AsInt32 ctxt.is addr
      addr <- addr+2
      res
  
  let seekReadTaggedIdx f nbits big is (addr: byref<int>) =  
      let tok = if big then seekReadInt32Adv is &addr else seekReadUInt16AsInt32Adv is &addr 
      tokToTaggedIdx f nbits tok
  
  
  let seekReadIdx big ctxt (addr: byref<int>) =  
      if big then seekReadInt32Adv ctxt &addr else seekReadUInt16AsInt32Adv ctxt &addr
  
  let seekReadUntaggedIdx (tab:TableName) ctxt (addr: byref<int>) =  
      seekReadIdx ctxt.tableBigness.[tab.Index] ctxt &addr
  
  
  let seekReadResolutionScopeIdx     ctxt (addr: byref<int>) = seekReadTaggedIdx mkResolutionScopeTag     2 ctxt.rsBigness   ctxt &addr
  let seekReadTypeDefOrRefOrSpecIdx  ctxt (addr: byref<int>) = seekReadTaggedIdx mkTypeDefOrRefOrSpecTag  2 ctxt.tdorBigness ctxt &addr   
  let seekReadTypeOrMethodDefIdx     ctxt (addr: byref<int>) = seekReadTaggedIdx mkTypeOrMethodDefTag     1 ctxt.tomdBigness ctxt &addr
  let seekReadHasConstantIdx         ctxt (addr: byref<int>) = seekReadTaggedIdx mkHasConstantTag         2 ctxt.hcBigness   ctxt &addr   
  let seekReadHasCustomAttributeIdx  ctxt (addr: byref<int>) = seekReadTaggedIdx mkHasCustomAttributeTag  5 ctxt.hcaBigness  ctxt &addr
  let seekReadHasFieldMarshalIdx     ctxt (addr: byref<int>) = seekReadTaggedIdx mkHasFieldMarshalTag     1 ctxt.hfmBigness ctxt &addr
  let seekReadHasDeclSecurityIdx     ctxt (addr: byref<int>) = seekReadTaggedIdx mkHasDeclSecurityTag     2 ctxt.hdsBigness ctxt &addr
  let seekReadMemberRefParentIdx     ctxt (addr: byref<int>) = seekReadTaggedIdx mkMemberRefParentTag     3 ctxt.mrpBigness ctxt &addr
  let seekReadHasSemanticsIdx        ctxt (addr: byref<int>) = seekReadTaggedIdx mkHasSemanticsTag        1 ctxt.hsBigness ctxt &addr
  let seekReadMethodDefOrRefIdx      ctxt (addr: byref<int>) = seekReadTaggedIdx mkMethodDefOrRefTag      1 ctxt.mdorBigness ctxt &addr
  let seekReadMemberForwardedIdx     ctxt (addr: byref<int>) = seekReadTaggedIdx mkMemberForwardedTag     1 ctxt.mfBigness ctxt &addr
  let seekReadImplementationIdx      ctxt (addr: byref<int>) = seekReadTaggedIdx mkImplementationTag      2 ctxt.iBigness ctxt &addr
  let seekReadCustomAttributeTypeIdx ctxt (addr: byref<int>) = seekReadTaggedIdx mkILCustomAttributeTypeTag 3 ctxt.catBigness ctxt &addr  
  let seekReadStringIdx ctxt (addr: byref<int>) = seekReadIdx ctxt.stringsBigness ctxt &addr
  let seekReadGuidIdx ctxt (addr: byref<int>) = seekReadIdx ctxt.guidsBigness ctxt &addr
  let seekReadBlobIdx ctxt (addr: byref<int>) = seekReadIdx ctxt.blobsBigness ctxt &addr 
  
  let seekReadModuleRow ctxt idx =
      if idx = 0 then failwith "cannot read Module table row 0";
      let mutable addr = ctxt.rowAddr TableNames.Module idx
      let generation = seekReadUInt16Adv ctxt &addr
      let nameIdx = seekReadStringIdx ctxt &addr
      let mvidIdx = seekReadGuidIdx ctxt &addr
      let encidIdx = seekReadGuidIdx ctxt &addr
      let encbaseidIdx = seekReadGuidIdx ctxt &addr
      (generation, nameIdx, mvidIdx, encidIdx, encbaseidIdx) 
  
  /// Read Table ILTypeRef 
  let seekReadTypeRefRow ctxt idx =
      count ctxt.countTypeRef;
      let mutable addr = ctxt.rowAddr TableNames.TypeRef idx
      let scopeIdx = seekReadResolutionScopeIdx ctxt &addr
      let nameIdx = seekReadStringIdx ctxt &addr
      let namespaceIdx = seekReadStringIdx ctxt &addr
      (scopeIdx,nameIdx,namespaceIdx) 
  
  /// Read Table ILTypeDef 
  