anchor.diff:                          if state.bestFwdDelta < 0.0<C> && state.ft < fwdTailLenMin && state.fb>dp.pp.minLength
                               then yield CHOP_F_AMP
                           elif state.fb < fwd.body.Length then yield EXT_F_AMP
  -                        if state.bestAnnealDelta < 0.0<C> && state.ft > fwdTailLenMin
  -                            then yield CHOP_F_ANNEAL
  +                        if state.bestAnnealDelta < 0.0<C> && state.ft > fwdTailLenMin then 
  +                                yield CHOP_F_ANNEAL
                           elif state.ft < fwdTailLenMax then yield EXT_F_ANNEAL
   
                           match sign state.bestAnnealDelta, sign state.bestFwdDelta with
  
positive.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) -> x | None -> 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
  
negative.code:                 match fwdLen with
                  | OligoOver(_) -> // cut something off
                      if state.fb>dp.pp.minLength then  yield CHOP_F_AMP
                      // Put guard on this to stop best anneal data running away to zero kelvin ;(
                      if fwdTailLenFixed.IsNone && state.ft > fwdTailLenMin && state.bestAnnealDelta < 10.0<C> then 
                          yield CHOP_F_ANNEAL
                  | OligoMax(_) -> // could slide or cut
                      if state.bestFwdDelta < 0.0<C> && state.fb>dp.pp.minLength then yield CHOP_F_AMP
                      if fwdTailLenFixed.IsNone then
                          if  state.bestAnnealDelta < 0.0<C> && state.ft > fwdTailLenMin then 
                              yield CHOP_F_ANNEAL
                          if state.fb < fwd.body.Length && state.ft > fwdTailLenMin then yield SLIDE_F_RIGHT
                          if state.rt > revTailLenMin && state.ft < fwdTailLenMax then
                              yield SLIDE_F_LEFT
  