anchor.diff:      // Validate primer annotation and primers are legit
       primerValidation.checkPrimers primers
       primerValidation.checkPrimersVAssembly (List.zip primers newTree)
  -    primers, newTree
  +    primers, newTree
  
positive.code:     let X = rev.body.Length+middleDNA.Length-1
      /// First base of inline region
      let Y = rev.body.Length
  
      /// Recursive optimization of the primer ends, adjusting lengths to get the amp / anneal and primer lengths optimized
      let rec tuneTailsOpt itersRemaining (state:TuneState) (seen':Set<TuneVector>) =
  
negative.code:     let fullTemplate = DnaOps.concat [ rev.body.RevComp() ; middleDNA ; fwd.body ]
  
      /// Target Tm for middle annealing part.  Cheat if it's a linker and we just want to keep this part (ideally) full length
      let annealTarget = 
              match firmMiddle with 
              | Some(x) -> 
                      if verbose then printfn "setAnnealTarget to firmMiddle=%A" x
                      x 
              | None -> 
                      if verbose then printfn "setAnnealTarget to seamlessOverlapTm=%A" dp.seamlessOverlapTm
                      dp.seamlessOverlapTm
      //let annealTarget = dp.seamlessOverlapTm // Just use this,  rev/fwdTailLenFixed vars take care of constraining RYSE linkers
  
      // Find two positions f and r that create a better ovelap tm
  