#! Generated by VisualDCT v2.6
#! DBDSTART
#! DBDEND
record(calcout, "$(P)$(Q)closeGate") {
field(DESC, "last written closes gate")
field(CALC, "a&&b")
field(INPA, "$(P)$(Q)gate.VAL")
field(INPB, "$(P)$(mX).DMOV CP")
field(OUT, "$(P)$(Q)gate PP")
field(OOPT, "Transition To Non-zero")
field(DOPT, "Use OCAL")
}
record(bo, "$(P)$(Q)gate") {
field(DTYP, "Soft Channel")
field(ZNAM, "Closed")
field(ONAM, "Open")
}
record(bo, "$(P)$(Q)gatePut") {
field(DTYP, "Soft Channel")
field(OUT, "$(P)$(Q)gate.VAL PP MS")
field(ZNAM, "Closed")
field(ONAM, "Open")
}
record(bo, "$(P)$(Q)set") {
field(DTYP, "Soft Channel")
field(FLNK, "$(P)$(Q)set1.PROC PP MS")
field(OUT, "$(P)$(mYU).SET PP MS")
field(ZNAM, "Use")
field(ONAM, "Set")
}
record(bo, "$(P)$(Q)set1") {
field(DTYP, "Soft Channel")
field(OMSL, "closed_loop")
field(DOL, "$(P)$(Q)set.VAL NPP NMS")
field(OUT, "$(P)$(mYD).SET PP MS")
field(ZNAM, "Use")
field(ONAM, "Set")
field(FLNK, "$(P)$(Q)set2.PROC PP MS")
}
record(bo, "$(P)$(Q)set2") {
field(DTYP, "Soft Channel")
field(OMSL, "closed_loop")
field(DOL, "$(P)$(Q)set.VAL NPP NMS")
field(OUT, "$(P)$(mRZ).SET PP MS")
field(ZNAM, "Use")
field(ONAM, "Set")
field(FLNK, "$(P)$(Q)set3.PROC PP MS")
}
record(bo, "$(P)$(Q)set3") {
field(DTYP, "Soft Channel")
field(OMSL, "closed_loop")
field(DOL, "$(P)$(Q)set.VAL NPP NMS")
field(OUT, "$(P)$(mZ).SET PP MS")
field(ZNAM, "Use")
field(ONAM, "Set")
field(FLNK, "$(P)$(Q)set4.PROC PP MS")
}
record(bo, "$(P)$(Q)set4") {
field(DTYP, "Soft Channel")
field(OMSL, "closed_loop")
field(DOL, "$(P)$(Q)set.VAL NPP NMS")
field(OUT, "$(P)$(mX).SET PP MS")
field(ZNAM, "Use")
field(ONAM, "Set")
}
record(dfanout, "$(P)$(Q)stop") {
field(OUTA, "$(P)$(Q)th.STOP CA MS")
field(OUTB, "$(P)$(Q)z.STOP CA MS")
field(OUTC, "$(P)$(Q)y.STOP CA MS")
field(OUTD, "$(P)$(Q)chi.STOP CA MS")
field(OUTE, "$(P)$(Q)x.STOP CA MS")
field(OUTF, "$(P)$(Q)stopMotors PP MS")
field(DOL, "1")
}
record(dfanout, "$(P)$(Q)stopMotors") {
field(OUTA, "$(P)$(mYD).STOP CA MS")
field(OUTB, "$(P)$(mYU).STOP CA MS")
field(OUTC, "$(P)$(mRZ).STOP CA MS")
field(OUTD, "$(P)$(mZ).STOP CA MS")
field(OUTE, "$(P)$(mX).STOP CA MS")
field(DOL, "1")
}
record(seq, "$(P)$(Q)sync") {
field(LNK1, "$(P)$(Q)tRev.PROC PP")
field(DO2, "1")
field(LNK2, "$(P)$(Q)th.SYNC CA")
field(DO3, "1")
field(LNK3, "$(P)$(Q)z.SYNC CA")
field(DO4, "1")
field(LNK4, "$(P)$(Q)y.SYNC CA")
field(DO5, "1")
field(LNK5, "$(P)$(Q)chi.SYNC CA")
field(DO6, "1")
field(LNK6, "$(P)$(Q)x.SYNC CA")
}
record(seq, "$(P)$(Q)init") {
field(PINI, "YES")
field(PREC, "1")
field(DLY1, "5")
field(LNK1, "$(P)$(Q)sync.PROC PP MS")
field(DLY2, "0")
field(LNK2, "0")
}
record(ao, "$(P)$(Q)zLen") {
field(PREC, "3")
field(DOL, "61")
}
record(transform, "$(P)$(Q)tFwd") {
field(PREC, "5")
field(DESC, "th,z,y,chi,x -> yd,yu,rz,zm,xm")
field(CMTA, "$thrad from motors (radians)")
field(CLCA, "atan(($yu-$yd)/$zLen)")
field(CMTB, "$th (deg)")
field(CLCB, "R2D*$thrad")
field(CMTC, "$z")
field(CLCC, "$zm+(($yu-$yd)/$zLen)*38.6")
field(CMTD, "$y")
field(CLCD, "$yd*59.42/$zLen+$yu*1.58/$zLen+2.3*$thrad+(-13.4789)*($thrad^2)+0*atan($rz/$yLen)+0*(atan($rz/$yLen))^2")
field(CMTE, "$chi")
field(CLCE, "r2d*atan($rz/$yLen)")
field(CMTF, "$x")
field(CLCF, "$xm")
field(CMTG, "gate")
field(CLCG, "1")
field(OUTG, "$(P)$(Q)gatePut.VAL PP MS")
field(CMTH, "$yd")
field(CLCH, "$y-(2.3)*(d2r*$th)-(-13.4789)*((d2r*$th)^2)-0*(d2r*$chi)-0*((d2r*$chi)^2)-tan(d2r*$th)*1.58")
field(OUTH, "$(P)$(Q)mYDPut.VAL PP MS")
field(CMTI, "$yu")
field(CLCI, "$y-2.3*(d2r*$th)-(-13.4789)*((d2r*$th)^2)-0*(d2r*$chi)-0*((d2r*$chi)^2)+tan(d2r*$th)*59.42")
field(OUTI, "$(P)$(Q)mYUPut.VAL PP MS")
field(CMTJ, "$rz")
field(CLCJ, "tan(d2r*$chi)*$yLen")
field(OUTJ, "$(P)$(Q)mRZPut.VAL PP MS")
field(CMTK, "$zm")
field(CLCK, "$z-tan(d2r*$th)*38.6")
field(OUTK, "$(P)$(Q)mZPut.VAL PP MS")
field(CMTL, "$xm")
field(CLCL, "$x")
field(OUTL, "$(P)$(Q)mXPut.VAL PP MS")
field(CMTM, "$zLen")
field(INPM, "$(P)$(Q)zLen")
field(CMTN, "$yLen")
field(INPN, "$(P)$(Q)yLen.VAL")
}
record(transform, "$(P)$(Q)tRev") {
field(DESC, "(yd,yu,rz,zm,xm)->(th,z,y,chi,x)")
field(EGU, "mm")
field(PREC, "5")
field(CMTA, "$yd mYD readback")
field(INPA, "$(P)$(mYD).RBV CP MS")
field(CMTB, "$yu mYU readback")
field(INPB, "$(P)$(mYU).RBV CP MS")
field(CMTC, "$rz mRZ readback")
field(INPC, "$(P)$(mRZ).RBV CP MS")
field(CMTD, "$zm mZ readback")
field(INPD, "$(P)$(mZ).RBV CP MS")
field(CMTE, "$xm mX readback")
field(INPE, "$(P)$(mX).RBV CP MS")
field(CMTF, "$th TH from motor readbacks")
field(CLCF, "R2D*atan(($yu-$yd)/$zLen)")
field(CMTG, "$z Z from motor readbacks")
field(CLCG, "$zm+(($yu-$yd)/$zLen)*38.6")
field(CMTH, "$y Y from motor readbacks")
field(CLCH, "$yd*59.42/$zLen+$yu*1.58/$zLen+2.3*atan(($yu-$yd)/$zLen)+(-13.4789)*(atan(($yu-$yd)/$zLen))^2")
field(CMTI, "$chi CHI from motor readbacks")
field(CLCI, "r2d*atan($rz/$yLen)")
field(CMTJ, "$x X from motor readbacks")
field(CLCJ, "$xm")
field(CMTN, "$yLen")
field(INPN, "$(P)$(Q)yLen.VAL")
field(CMTM, "$zLen")
field(INPM, "$(P)$(Q)zLen")
}
record(calcout, "$(P)$(Q)calcDone") {
field(DESC, "calc done, clear softMove?")
field(CALC, "b&&c&&d&&e&&f&&!a")
field(INPA, "$(P)$(Q)gate.VAL CP MS")
field(INPB, "$(P)$(mYD).DMOV CP MS")
field(INPC, "$(P)$(mYU).DMOV CP MS")
field(INPD, "$(P)$(mRZ).DMOV CP MS")
field(INPE, "$(P)$(mZ).DMOV CP MS")
field(INPF, "$(P)$(mX).DMOV CP MS")
field(OUT, "$(P)$(Q)clearSoftMove.PROC PP")
field(OOPT, "Transition To Non-zero")
}
record(transform, "$(P)$(Q)tLimits") {
# disable this; doesn't work
field(DISV, "0")
field(PREC, "3")
field(PHAS, "0")
field(CMTA, "$ydL")
field(INPA, "$(P)$(mYD).LLM CP NMS")
field(CMTB, "$ydH")
field(INPB, "$(P)$(mYD).HLM CP NMS")
field(CMTC, "$yuL")
field(INPC, "$(P)$(mYU).LLM CP NMS")
field(CMTD, "$yuH")
field(INPD, "$(P)$(mYU).HLM CP NMS")
field(CMTE, "$rzL")
field(INPE, "$(P)$(mRZ).LLM CP NMS")
field(CMTF, "$rzH")
field(INPF, "$(P)$(mRZ).HLM CP NMS")
field(CMTG, "$zL")
field(INPG, "$(P)$(mZ).LLM CP NMS")
field(CMTH, "$zH")
field(INPH, "$(P)$(mZ).HLM CP NMS")
field(CMTI, "calc th.LLM")
field(CLCI, "r2d*atan(($yuL-$ydH)/$zLen)")
field(OUTI, "$(P)$(Q)th.LLM NPP MS")
field(CMTJ, "calc th.HLM")
field(CLCJ, "r2d*atan(($yuh-$ydL)/$zLen)")
field(OUTJ, "$(P)$(Q)th.HLM NPP MS")
field(CMTK, "calc z.LLM")
field(CLCK, "$zL+(($yuL-$ydH)/$zLen)*38.6")
field(OUTK, "$(P)$(Q)z.LLM NPP MS")
field(CMTL, "calc z.HLM")
field(CLCL, "$zH+(($yuH-$ydL)/$zLen)*38.6")
field(OUTL, "$(P)$(Q)z.HLM NPP MS")
field(CMTM, "calc y.LLM")
field(CLCM, "$ydL*59.42/$zLen+$yuL*1.58/$zLen+2.3*atan(($yuL-$ydH)/$zLen)+(-13.4789)*(atan(($yuH-$ydL)/$zLen))^2")
field(OUTM, "$(P)$(Q)y.LLM NPP MS")
field(CMTN, "calc y.HLM")
field(CLCN, "$ydH*59.42/$zLen+$yuH*1.58/$zLen+2.3*atan(($yuH-$ydL)/$zLen)+(-13.4789)*(atan(($yuL-$ydH)/$zLen))^2")
field(OUTN, "$(P)$(Q)y.HLM NPP MS")
field(CMTO, "$zLen")
field(INPO, "$(P)$(Q)zLen")
}
record(transform, "$(P)$(Q)tLimits1") {
# disable this; doesn't work
field(DISV, "0")
field(PREC, "3")
field(PHAS, "0")
field(CMTA, "$xL")
field(INPA, "$(P)$(mX).LLM CP NMS")
field(CMTB, "$xH")
field(INPB, "$(P)$(mX).HLM CP NMS")
field(CMTC, "$yuL")
field(INPC, "$(P)$(mYU).LLM CP NMS")
field(CMTD, "$yuH")
field(INPD, "$(P)$(mYU).HLM CP NMS")
field(CMTE, "$rzL")
field(INPE, "$(P)$(mRZ).LLM CP NMS")
field(CMTF, "$rzH")
field(INPF, "$(P)$(mRZ).HLM CP NMS")
field(CMTG, "$zL")
field(INPG, "$(P)$(mZ).LLM CP NMS")
field(CMTH, "$zH")
field(INPH, "$(P)$(mZ).HLM CP NMS")
field(CMTI, "calc chi.LLM")
field(CLCI, "r2d*atan($rzL/$yLen)")
field(OUTI, "$(P)$(Q)chi.LLM NPP MS")
field(CMTJ, "calc chi.HLM")
field(CLCJ, "r2d*atan($rzH/$yLen)")
field(OUTJ, "$(P)$(Q)chi.HLM NPP MS")
field(CMTK, "calc x.LLM")
field(CLCK, "$xL")
field(OUTK, "$(P)$(Q)x.LLM NPP MS")
field(CMTL, "calc x.HLM")
field(CLCL, "$xH")
field(OUTL, "$(P)$(Q)x.HLM NPP MS")
field(CMTO, "zLen")
field(INPO, "$(P)$(Q)zLen")
field(CMTP, "$yLen")
field(INPP, "$(P)$(Q)yLen")
}
record(motor, "$(P)$(Q)th") {
field(DESC, "$(Q) th")
field(DTYP, "Soft Channel")
field(OUT, "$(P)$(Q)softPut.PROC PP MS")
field(RDBL, "$(P)$(Q)tRev.F NPP MS")
field(MRES, ".001")
field(RRES, "1")
field(URIP, "Yes")
field(PREC, "3")
field(EGU, "deg")
field(TWV, "1")
field(DINP, "$(P)$(Q)calcDone NPP MS")
}
record(motor, "$(P)$(Q)z") {
field(DESC, "$(Q) z")
field(DTYP, "Soft Channel")
field(OUT, "$(P)$(Q)softPut.PROC PP MS")
field(RDBL, "$(P)$(Q)tRev.G NPP MS")
field(MRES, ".001")
field(RRES, "1")
field(URIP, "Yes")
field(PREC, "3")
field(EGU, "mm")
field(TWV, "1")
field(DINP, "$(P)$(Q)calcDone NPP MS")
}
record(motor, "$(P)$(Q)y") {
field(DESC, "$(Q) y")
field(DTYP, "Soft Channel")
field(OUT, "$(P)$(Q)softPut.PROC PP MS")
field(RDBL, "$(P)$(Q)tRev.H NPP MS")
field(MRES, ".001")
field(RRES, "1")
field(URIP, "Yes")
field(PREC, "3")
field(EGU, "mm")
field(TWV, "1")
field(DINP, "$(P)$(Q)calcDone NPP MS")
}
record(motor, "$(P)$(Q)chi") {
field(DESC, "$(Q) chi")
field(DTYP, "Soft Channel")
field(OUT, "$(P)$(Q)softPut.PROC PP MS")
field(RDBL, "$(P)$(Q)tRev.I NPP MS")
field(MRES, ".001")
field(RRES, "1")
field(URIP, "Yes")
field(PREC, "3")
field(EGU, "mm")
field(TWV, "1")
field(DINP, "$(P)$(Q)calcDone NPP MS")
}
record(motor, "$(P)$(Q)x") {
field(DESC, "$(Q) x")
field(DTYP, "Soft Channel")
field(OUT, "$(P)$(Q)softPut.PROC PP MS")
field(RDBL, "$(P)$(Q)tRev.J")
field(MRES, ".001")
field(RRES, "1")
field(URIP, "Yes")
field(PREC, "3")
field(EGU, "mm")
field(TWV, "1")
field(DINP, "$(P)$(Q)calcDone NPP MS")
}
record(ao, "$(P)$(Q)mYDPut") {
field(DTYP, "Soft Channel")
field(OUT, "$(P)$(mYD).VAL PP MS")
}
record(scalcout, "$(P)$(Q)mYD_nameCalc") {
field(CALC, "aa[0,'.']")
field(INAA, "$(P)$(Q)mYDPut.OUT CPP")
}
record(ao, "$(P)$(Q)mYUPut") {
field(DTYP, "Soft Channel")
field(OUT, "$(P)$(mYU).VAL PP MS")
}
record(scalcout, "$(P)$(Q)mYU_nameCalc") {
field(CALC, "aa[0,'.']")
field(INAA, "$(P)$(Q)mYUPut.OUT CPP")
}
record(ao, "$(P)$(Q)mZPut") {
field(DTYP, "Soft Channel")
field(OUT, "$(P)$(mZ).VAL PP MS")
}
record(scalcout, "$(P)$(Q)mZ_nameCalc") {
field(CALC, "aa[0,'.']")
field(INAA, "$(P)$(Q)mZPut.OUT CPP")
}
record(ao, "$(P)$(Q)mRZPut") {
field(DTYP, "Soft Channel")
field(OUT, "$(P)$(mRZ).VAL PP MS")
}
record(scalcout, "$(P)$(Q)mRZ_nameCalc") {
field(CALC, "aa[0,'.']")
field(INAA, "$(P)$(Q)mRZPut.OUT CPP")
}
record(ao, "$(P)$(Q)mXPut") {
field(DTYP, "Soft Channel")
field(OUT, "$(P)$(mX).VAL PP MS")
}
record(scalcout, "$(P)$(Q)mX_nameCalc") {
field(CALC, "aa[0,'.']")
field(INAA, "$(P)$(Q)mXPut.OUT CPP")
}
record(ao, "$(P)$(Q)yLen") {
field(PREC, "3")
field(DOL, "59.55")
}
record(bo, "$(P)$(Q)clearSoftMove") {
field(DOL, "0")
field(OUT, "$(P)$(Q)isSoftMove PP")
}
record(dfanout, "$(P)$(Q)isSoftMove") {
field(OUTA, "$(P)$(Q)th.LOCK")
field(OUTB, "$(P)$(Q)z.LOCK")
field(OUTC, "$(P)$(Q)y.LOCK")
field(OUTD, "$(P)$(Q)chi.LOCK")
field(OUTE, "$(P)$(Q)x.LOCK")
}
record(seq, "$(P)$(Q)softPut") {
field(PREC, "3")
field(DOL2, "1")
field(LNK2, "$(P)$(Q)isSoftMove PP")
field(DOL3, "$(P)$(Q)th.DVAL")
field(LNK3, "$(P)$(Q)tFwd.B")
field(DOL4, "$(P)$(Q)z.DVAL")
field(LNK4, "$(P)$(Q)tFwd.C")
field(DOL5, "$(P)$(Q)y.DVAL")
field(LNK5, "$(P)$(Q)tFwd.D")
field(DOL6, "$(P)$(Q)chi.DVAL")
field(LNK6, "$(P)$(Q)tFwd.E")
field(DOL7, "$(P)$(Q)x.DVAL")
field(LNK7, "$(P)$(Q)tFwd.F PP")
}
#! Further lines contain data used by VisualDCT
#! View(629,709,0.7)
#! Record("$(P)$(Q)closeGate",3440,663,0,0,"$(P)$(Q)closeGate")
#! Field("$(P)$(Q)closeGate.INPA",16777215,0,"$(P)$(Q)closeGate.INPA")
#! Link("$(P)$(Q)closeGate.INPA","$(P)$(Q)gate.VAL")
#! Field("$(P)$(Q)closeGate.INPB",16777215,1,"$(P)$(Q)closeGate.INPB")
#! Field("$(P)$(Q)closeGate.OUT",16777215,0,"$(P)$(Q)closeGate.OUT")
#! Link("$(P)$(Q)closeGate.OUT","$(P)$(Q)gate.VAL")
#! Record("$(P)$(Q)gate",3160,720,0,0,"$(P)$(Q)gate")
#! Field("$(P)$(Q)gate.VAL",16777215,1,"$(P)$(Q)gate.VAL")
#! Record("$(P)$(Q)gatePut",2620,706,0,0,"$(P)$(Q)gatePut")
#! Field("$(P)$(Q)gatePut.OUT",16777215,1,"$(P)$(Q)gatePut.OUT")
#! Link("$(P)$(Q)gatePut.OUT","$(P)$(Q)gate.VAL")
#! Field("$(P)$(Q)gatePut.VAL",16777215,0,"$(P)$(Q)gatePut.VAL")
#! Record("$(P)$(Q)set",1480,112,0,0,"$(P)$(Q)set")
#! Field("$(P)$(Q)set.OUT",16777215,1,"$(P)$(Q)set.OUT")
#! Field("$(P)$(Q)set.VAL",16777215,1,"$(P)$(Q)set.VAL")
#! Field("$(P)$(Q)set.FLNK",16777215,1,"$(P)$(Q)set.FLNK")
#! Link("$(P)$(Q)set.FLNK","$(P)$(Q)set1")
#! Record("$(P)$(Q)set1",1800,163,0,0,"$(P)$(Q)set1")
#! Field("$(P)$(Q)set1.DOL",16777215,0,"$(P)$(Q)set1.DOL")
#! Link("$(P)$(Q)set1.DOL","$(P)$(Q)set1/DOL")
#! Field("$(P)$(Q)set1.OUT",16777215,1,"$(P)$(Q)set1.OUT")
#! Field("$(P)$(Q)set1.FLNK",16777215,1,"$(P)$(Q)set1.FLNK")
#! Link("$(P)$(Q)set1.FLNK","$(P)$(Q)set1/FLNK")
#! Connector("$(P)$(Q)set1/DOL","$(P)$(Q)set.VAL",1720,300,16777215,"",0)
#! Connector("$(P)$(Q)set1/FLNK","$(P)$(Q)set2",2020,305,16777215,"",0)
#! Record("$(P)$(Q)set2",2100,163,0,0,"$(P)$(Q)set2")
#! Field("$(P)$(Q)set2.DOL",16777215,0,"$(P)$(Q)set2.DOL")
#! Link("$(P)$(Q)set2.DOL","$(P)$(Q)set2/DOL1")
#! Field("$(P)$(Q)set2.OUT",16777215,1,"$(P)$(Q)set2.OUT")
#! Field("$(P)$(Q)set2.FLNK",16777215,1,"$(P)$(Q)set2.FLNK")
#! Link("$(P)$(Q)set2.FLNK","$(P)$(Q)set2/FLNK")
#! Connector("$(P)$(Q)set2/DOL","$(P)$(Q)set.VAL",1867,240,16777215,"",0)
#! Connector("$(P)$(Q)set2/DOL1","$(P)$(Q)set2/DOL",2040,285,16777215,"",0)
#! Connector("$(P)$(Q)set2/FLNK","$(P)$(Q)set3",2320,305,16777215,"",0)
#! Record("$(P)$(Q)set3",2400,163,0,0,"$(P)$(Q)set3")
#! Field("$(P)$(Q)set3.DOL",16777215,0,"$(P)$(Q)set3.DOL")
#! Link("$(P)$(Q)set3.DOL","$(P)$(Q)set3/DOL1")
#! Field("$(P)$(Q)set3.OUT",16777215,1,"$(P)$(Q)set3.OUT")
#! Field("$(P)$(Q)set3.FLNK",16777215,1,"$(P)$(Q)set3.FLNK")
#! Link("$(P)$(Q)set3.FLNK","$(P)$(Q)set3/FLNK")
#! Connector("$(P)$(Q)set3/DOL","$(P)$(Q)set.VAL",2017,240,16777215,"",0)
#! Connector("$(P)$(Q)set3/DOL1","$(P)$(Q)set3/DOL",2340,285,16777215,"",0)
#! Connector("$(P)$(Q)set3/FLNK","$(P)$(Q)set4",2620,309,16777215,"",0)
#! Record("$(P)$(Q)set4",2720,178,0,0,"$(P)$(Q)set4")
#! Field("$(P)$(Q)set4.DOL",16777215,0,"$(P)$(Q)set4.DOL")
#! Link("$(P)$(Q)set4.DOL","$(P)$(Q)set4/DOL1")
#! Field("$(P)$(Q)set4.OUT",16777215,1,"$(P)$(Q)set4.OUT")
#! Connector("$(P)$(Q)set4/DOL","$(P)$(Q)set.VAL",2177,240,16777215,"",0)
#! Connector("$(P)$(Q)set4/DOL1","$(P)$(Q)set4/DOL",2660,285,16777215,"",0)
#! Record("$(P)$(Q)stop",800,263,0,0,"$(P)$(Q)stop")
#! Field("$(P)$(Q)stop.OUTA",16711680,1,"$(P)$(Q)stop.OUTA")
#! Link("$(P)$(Q)stop.OUTA","$(P)$(Q)th.STOP")
#! Field("$(P)$(Q)stop.OUTB",16711680,1,"$(P)$(Q)stop.OUTB")
#! Link("$(P)$(Q)stop.OUTB","$(P)$(Q)z.STOP")
#! Field("$(P)$(Q)stop.OUTC",16711680,1,"$(P)$(Q)stop.OUTC")
#! Link("$(P)$(Q)stop.OUTC","$(P)$(Q)y.STOP")
#! Field("$(P)$(Q)stop.OUTD",16711680,1,"$(P)$(Q)stop.OUTD")
#! Link("$(P)$(Q)stop.OUTD","$(P)$(Q)chi.STOP")
#! Field("$(P)$(Q)stop.OUTE",16711680,1,"$(P)$(Q)stop.OUTE")
#! Link("$(P)$(Q)stop.OUTE","$(P)$(Q)x.STOP")
#! Field("$(P)$(Q)stop.OUTF",16777215,1,"$(P)$(Q)stop.OUTF")
#! Link("$(P)$(Q)stop.OUTF","$(P)$(Q)stopMotors.VAL")
#! Record("$(P)$(Q)stopMotors",1280,258,0,0,"$(P)$(Q)stopMotors")
#! Field("$(P)$(Q)stopMotors.VAL",16777215,0,"$(P)$(Q)stopMotors.VAL")
#! Field("$(P)$(Q)stopMotors.OUTA",16777215,1,"$(P)$(Q)stopMotors.OUTA")
#! Field("$(P)$(Q)stopMotors.OUTB",16777215,1,"$(P)$(Q)stopMotors.OUTB")
#! Field("$(P)$(Q)stopMotors.OUTC",16777215,1,"$(P)$(Q)stopMotors.OUTC")
#! Field("$(P)$(Q)stopMotors.OUTD",16777215,1,"$(P)$(Q)stopMotors.OUTD")
#! Field("$(P)$(Q)stopMotors.OUTE",16777215,1,"$(P)$(Q)stopMotors.OUTE")
#! Record("$(P)$(Q)sync",420,-15,0,0,"$(P)$(Q)sync")
#! Field("$(P)$(Q)sync.PROC",16777215,0,"$(P)$(Q)sync.PROC")
#! Field("$(P)$(Q)sync.LNK1",16713215,1,"$(P)$(Q)sync.LNK1")
#! Link("$(P)$(Q)sync.LNK1","$(P)$(Q)tRev.PROC")
#! Field("$(P)$(Q)sync.LNK2",16713215,1,"$(P)$(Q)sync.LNK2")
#! Link("$(P)$(Q)sync.LNK2","$(P)$(Q)sync/LNK2")
#! Field("$(P)$(Q)sync.LNK3",16711935,1,"$(P)$(Q)sync.LNK3")
#! Link("$(P)$(Q)sync.LNK3","$(P)$(Q)sync/LNK3")
#! Field("$(P)$(Q)sync.LNK4",16711935,1,"$(P)$(Q)sync.LNK4")
#! Link("$(P)$(Q)sync.LNK4","$(P)$(Q)sync/LNK4")
#! Field("$(P)$(Q)sync.LNK5",16711935,1,"$(P)$(Q)sync.LNK5")
#! Link("$(P)$(Q)sync.LNK5","$(P)$(Q)sync/LNK5")
#! Field("$(P)$(Q)sync.LNK6",16711935,1,"$(P)$(Q)sync.LNK6")
#! Link("$(P)$(Q)sync.LNK6","$(P)$(Q)sync/LNK6")
#! Connector("$(P)$(Q)sync/LNK2","$(P)$(Q)th.SYNC",1140,530,16713215,"",0)
#! Connector("$(P)$(Q)sync/LNK3","$(P)$(Q)z.SYNC",1140,670,16711935,"",0)
#! Connector("$(P)$(Q)sync/LNK4","$(P)$(Q)y.SYNC",1140,810,16711935,"",0)
#! Connector("$(P)$(Q)sync/LNK5","$(P)$(Q)chi.SYNC",1140,960,16711935,"",0)
#! Connector("$(P)$(Q)sync/LNK6","$(P)$(Q)x.SYNC",1140,1100,16711935,"",0)
#! Record("$(P)$(Q)init",460,-42,0,0,"$(P)$(Q)init")
#! Field("$(P)$(Q)init.LNK1",16777215,0,"$(P)$(Q)init.LNK1")
#! Link("$(P)$(Q)init.LNK1","$(P)$(Q)sync.PROC")
#! Record("$(P)$(Q)zLen",400,475,0,0,"$(P)$(Q)zLen")
#! Field("$(P)$(Q)zLen.VAL",10092543,1,"$(P)$(Q)zLen.VAL")
#! Record("$(P)$(Q)tFwd",2200,543,0,0,"$(P)$(Q)tFwd")
#! Field("$(P)$(Q)tFwd.INPM",10092543,0,"$(P)$(Q)tFwd.INPM")
#! Link("$(P)$(Q)tFwd.INPM","$(P)$(Q)tFwd/INPM1")
#! Field("$(P)$(Q)tFwd.INPN",10092543,0,"$(P)$(Q)tFwd.INPN")
#! Link("$(P)$(Q)tFwd.INPN","$(P)$(Q)tFwd/INPN1")
#! Field("$(P)$(Q)tFwd.B",16777215,0,"$(P)$(Q)tFwd.B")
#! Field("$(P)$(Q)tFwd.C",16777215,0,"$(P)$(Q)tFwd.C")
#! Field("$(P)$(Q)tFwd.D",16777215,0,"$(P)$(Q)tFwd.D")
#! Field("$(P)$(Q)tFwd.E",16777215,0,"$(P)$(Q)tFwd.E")
#! Field("$(P)$(Q)tFwd.F",16777215,0,"$(P)$(Q)tFwd.F")
#! Field("$(P)$(Q)tFwd.OUTG",16777215,1,"$(P)$(Q)tFwd.OUTG")
#! Link("$(P)$(Q)tFwd.OUTG","$(P)$(Q)tFwd/OUTG")
#! Field("$(P)$(Q)tFwd.OUTH",16777215,1,"$(P)$(Q)tFwd.OUTH")
#! Link("$(P)$(Q)tFwd.OUTH","$(P)$(Q)tFwd/OUTH")
#! Field("$(P)$(Q)tFwd.OUTI",16777215,1,"$(P)$(Q)tFwd.OUTI")
#! Link("$(P)$(Q)tFwd.OUTI","$(P)$(Q)tFwd/OUTI")
#! Field("$(P)$(Q)tFwd.OUTJ",16777215,1,"$(P)$(Q)tFwd.OUTJ")
#! Link("$(P)$(Q)tFwd.OUTJ","$(P)$(Q)tFwd/OUTJ")
#! Field("$(P)$(Q)tFwd.OUTK",16777215,1,"$(P)$(Q)tFwd.OUTK")
#! Link("$(P)$(Q)tFwd.OUTK","$(P)$(Q)mZPut.VAL")
#! Field("$(P)$(Q)tFwd.OUTL",16777215,1,"$(P)$(Q)tFwd.OUTL")
#! Link("$(P)$(Q)tFwd.OUTL","$(P)$(Q)mXPut.VAL")
#! Connector("$(P)$(Q)tFwd/INPM","$(P)$(Q)zLen.VAL",1365,560,10092543,"",0)
#! Connector("$(P)$(Q)tFwd/INPM1","$(P)$(Q)tFwd/INPM",2120,845,10092543,"",0)
#! Connector("$(P)$(Q)tFwd/INPN","$(P)$(Q)yLen.VAL",1345,580,10092543,"",0)
#! Connector("$(P)$(Q)tFwd/INPN1","$(P)$(Q)tFwd/INPN",2100,865,10092543,"",0)
#! Connector("$(P)$(Q)tFwd/OUTG","$(P)$(Q)gatePut.VAL",2460,1060,16777215,"",0)
#! Connector("$(P)$(Q)tFwd/OUTH","$(P)$(Q)mYDPut.VAL",2480,1150,16777215,"",0)
#! Connector("$(P)$(Q)tFwd/OUTI","$(P)$(Q)mYUPut.VAL",2500,1220,16777215,"",0)
#! Connector("$(P)$(Q)tFwd/OUTJ","$(P)$(Q)mRZPut.VAL",2520,1280,16777215,"",0)
#! Record("$(P)$(Q)tRev",700,833,0,0,"$(P)$(Q)tRev")
#! Field("$(P)$(Q)tRev.PROC",16713215,0,"$(P)$(Q)tRev.PROC")
#! Field("$(P)$(Q)tRev.INPA",16777215,0,"$(P)$(Q)tRev.INPA")
#! Field("$(P)$(Q)tRev.INPB",16777215,0,"$(P)$(Q)tRev.INPB")
#! Field("$(P)$(Q)tRev.INPC",16777215,1,"$(P)$(Q)tRev.INPC")
#! Field("$(P)$(Q)tRev.INPD",16777215,1,"$(P)$(Q)tRev.INPD")
#! Field("$(P)$(Q)tRev.INPE",16777215,1,"$(P)$(Q)tRev.INPE")
#! Field("$(P)$(Q)tRev.F",16777215,1,"$(P)$(Q)tRev.F")
#! Field("$(P)$(Q)tRev.G",16777215,1,"$(P)$(Q)tRev.G")
#! Field("$(P)$(Q)tRev.H",16777215,1,"$(P)$(Q)tRev.H")
#! Field("$(P)$(Q)tRev.I",16777215,1,"$(P)$(Q)tRev.I")
#! Field("$(P)$(Q)tRev.J",16777215,1,"$(P)$(Q)tRev.J")
#! Field("$(P)$(Q)tRev.INPM",10092543,0,"$(P)$(Q)tRev.INPM")
#! Link("$(P)$(Q)tRev.INPM","$(P)$(Q)zLen.VAL")
#! Field("$(P)$(Q)tRev.INPN",16777215,0,"$(P)$(Q)tRev.INPN")
#! Link("$(P)$(Q)tRev.INPN","$(P)$(Q)yLen.VAL")
#! Record("$(P)$(Q)calcDone",1240,1919,0,0,"$(P)$(Q)calcDone")
#! Field("$(P)$(Q)calcDone.INPA",16777215,1,"$(P)$(Q)calcDone.INPA")
#! Link("$(P)$(Q)calcDone.INPA","$(P)$(Q)gate.VAL")
#! Field("$(P)$(Q)calcDone.INPB",16777215,1,"$(P)$(Q)calcDone.INPB")
#! Field("$(P)$(Q)calcDone.INPC",16777215,1,"$(P)$(Q)calcDone.INPC")
#! Field("$(P)$(Q)calcDone.INPD",16777215,1,"$(P)$(Q)calcDone.INPD")
#! Field("$(P)$(Q)calcDone.INPE",16777215,1,"$(P)$(Q)calcDone.INPE")
#! Field("$(P)$(Q)calcDone.INPF",16777215,1,"$(P)$(Q)calcDone.INPF")
#! Field("$(P)$(Q)calcDone.OUT",16777215,1,"$(P)$(Q)calcDone.OUT")
#! Link("$(P)$(Q)calcDone.OUT","$(P)$(Q)calcDone/OUT")
#! Field("$(P)$(Q)calcDone.VAL",65280,0,"$(P)$(Q)calcDone.VAL")
#! Connector("$(P)$(Q)calcDone/OUT","$(P)$(Q)clearSoftMove.PROC",1700,1900,16777215,"",0)
#! Record("$(P)$(Q)tLimits",720,40,0,0,"$(P)$(Q)tLimits")
#! Field("$(P)$(Q)tLimits.INPA",16777215,1,"$(P)$(Q)tLimits.INPA")
#! Field("$(P)$(Q)tLimits.INPB",16777215,1,"$(P)$(Q)tLimits.INPB")
#! Field("$(P)$(Q)tLimits.INPC",16777215,1,"$(P)$(Q)tLimits.INPC")
#! Field("$(P)$(Q)tLimits.INPD",16777215,1,"$(P)$(Q)tLimits.INPD")
#! Field("$(P)$(Q)tLimits.INPE",16777215,1,"$(P)$(Q)tLimits.INPE")
#! Field("$(P)$(Q)tLimits.INPF",16777215,1,"$(P)$(Q)tLimits.INPF")
#! Field("$(P)$(Q)tLimits.INPG",16777215,1,"$(P)$(Q)tLimits.INPG")
#! Field("$(P)$(Q)tLimits.INPH",16777215,1,"$(P)$(Q)tLimits.INPH")
#! Field("$(P)$(Q)tLimits.OUTI",16777215,1,"$(P)$(Q)tLimits.OUTI")
#! Link("$(P)$(Q)tLimits.OUTI","$(P)$(Q)th.LLM")
#! Field("$(P)$(Q)tLimits.OUTJ",16777215,1,"$(P)$(Q)tLimits.OUTJ")
#! Link("$(P)$(Q)tLimits.OUTJ","$(P)$(Q)th.HLM")
#! Field("$(P)$(Q)tLimits.OUTK",16777215,1,"$(P)$(Q)tLimits.OUTK")
#! Link("$(P)$(Q)tLimits.OUTK","$(P)$(Q)tLimits/OUTK")
#! Field("$(P)$(Q)tLimits.OUTL",16777215,1,"$(P)$(Q)tLimits.OUTL")
#! Link("$(P)$(Q)tLimits.OUTL","$(P)$(Q)tLimits/OUTL")
#! Field("$(P)$(Q)tLimits.OUTM",16777215,1,"$(P)$(Q)tLimits.OUTM")
#! Link("$(P)$(Q)tLimits.OUTM","$(P)$(Q)tLimits/OUTM")
#! Field("$(P)$(Q)tLimits.OUTN",16777215,1,"$(P)$(Q)tLimits.OUTN")
#! Link("$(P)$(Q)tLimits.OUTN","$(P)$(Q)tLimits/OUTN")
#! Field("$(P)$(Q)tLimits.INPO",10092543,0,"$(P)$(Q)tLimits.INPO")
#! Link("$(P)$(Q)tLimits.INPO","$(P)$(Q)zLen.VAL")
#! Connector("$(P)$(Q)tLimits/OUTK","$(P)$(Q)z.LLM",1060,980,16777215,"",0)
#! Connector("$(P)$(Q)tLimits/OUTL","$(P)$(Q)z.HLM",1040,1000,16777215,"",0)
#! Connector("$(P)$(Q)tLimits/OUTM","$(P)$(Q)y.LLM",1020,1130,16777215,"",0)
#! Connector("$(P)$(Q)tLimits/OUTN","$(P)$(Q)y.HLM",1000,1150,16777215,"",0)
#! Record("$(P)$(Q)tLimits1",700,1078,0,0,"$(P)$(Q)tLimits1")
#! Field("$(P)$(Q)tLimits1.INPA",16777215,1,"$(P)$(Q)tLimits1.INPA")
#! Field("$(P)$(Q)tLimits1.INPB",16777215,1,"$(P)$(Q)tLimits1.INPB")
#! Field("$(P)$(Q)tLimits1.INPC",16777215,1,"$(P)$(Q)tLimits1.INPC")
#! Field("$(P)$(Q)tLimits1.INPD",16777215,1,"$(P)$(Q)tLimits1.INPD")
#! Field("$(P)$(Q)tLimits1.INPE",16777215,1,"$(P)$(Q)tLimits1.INPE")
#! Field("$(P)$(Q)tLimits1.INPF",16777215,1,"$(P)$(Q)tLimits1.INPF")
#! Field("$(P)$(Q)tLimits1.INPG",16777215,1,"$(P)$(Q)tLimits1.INPG")
#! Field("$(P)$(Q)tLimits1.INPH",16777215,1,"$(P)$(Q)tLimits1.INPH")
#! Field("$(P)$(Q)tLimits1.OUTI",16777215,1,"$(P)$(Q)tLimits1.OUTI")
#! Link("$(P)$(Q)tLimits1.OUTI","$(P)$(Q)tLimits1/OUTI")
#! Field("$(P)$(Q)tLimits1.OUTJ",16777215,1,"$(P)$(Q)tLimits1.OUTJ")
#! Link("$(P)$(Q)tLimits1.OUTJ","$(P)$(Q)tLimits1/OUTJ")
#! Field("$(P)$(Q)tLimits1.INPO",10092543,0,"$(P)$(Q)tLimits1.INPO")
#! Link("$(P)$(Q)tLimits1.INPO","$(P)$(Q)zLen.VAL")
#! Field("$(P)$(Q)tLimits1.INPP",10092543,0,"$(P)$(Q)tLimits1.INPP")
#! Link("$(P)$(Q)tLimits1.INPP","$(P)$(Q)yLen.VAL")
#! Field("$(P)$(Q)tLimits1.OUTK",16777215,1,"$(P)$(Q)tLimits1.OUTK")
#! Link("$(P)$(Q)tLimits1.OUTK","$(P)$(Q)x.LLM")
#! Field("$(P)$(Q)tLimits1.OUTL",16777215,1,"$(P)$(Q)tLimits1.OUTL")
#! Link("$(P)$(Q)tLimits1.OUTL","$(P)$(Q)x.HLM")
#! Connector("$(P)$(Q)tLimits1/OUTI","$(P)$(Q)chi.LLM",960,1720,16777215,"",0)
#! Connector("$(P)$(Q)tLimits1/OUTJ","$(P)$(Q)chi.HLM",1020,1740,16777215,"",0)
#! Record("$(P)$(Q)th",1240,565,0,0,"$(P)$(Q)th")
#! Field("$(P)$(Q)th.STOP",16711680,0,"$(P)$(Q)th.STOP")
#! Field("$(P)$(Q)th.SYNC",16713215,0,"$(P)$(Q)th.SYNC")
#! Field("$(P)$(Q)th.LLM",16777215,0,"$(P)$(Q)th.LLM")
#! Field("$(P)$(Q)th.HLM",16777215,0,"$(P)$(Q)th.HLM")
#! Field("$(P)$(Q)th.OUT",16750848,1,"$(P)$(Q)th.OUT")
#! Link("$(P)$(Q)th.OUT","$(P)$(Q)th/OUT")
#! Field("$(P)$(Q)th.RDBL",16777215,0,"$(P)$(Q)th.RDBL")
#! Link("$(P)$(Q)th.RDBL","$(P)$(Q)th/RDBL")
#! Field("$(P)$(Q)th.DINP",65280,0,"$(P)$(Q)th.DINP")
#! Link("$(P)$(Q)th.DINP","$(P)$(Q)th/DINP")
#! Field("$(P)$(Q)th.DVAL",16777215,1,"$(P)$(Q)th.DVAL")
#! Field("$(P)$(Q)th.LOCK",16777215,1,"$(P)$(Q)th.LOCK")
#! Connector("$(P)$(Q)th/RDBL","$(P)$(Q)tRev.F",1080,1150,16777215,"",0)
#! Connector("$(P)$(Q)th/DINP","$(P)$(Q)calcDone.VAL",1160,1590,65280,"",0)
#! Connector("$(P)$(Q)th/OUT","$(P)$(Q)softPut.PROC",1680,990,16750848,"",0)
#! Record("$(P)$(Q)z",1240,825,0,0,"$(P)$(Q)z")
#! Field("$(P)$(Q)z.STOP",16711680,0,"$(P)$(Q)z.STOP")
#! Field("$(P)$(Q)z.SYNC",16711935,0,"$(P)$(Q)z.SYNC")
#! Field("$(P)$(Q)z.LLM",16777215,0,"$(P)$(Q)z.LLM")
#! Field("$(P)$(Q)z.HLM",16777215,0,"$(P)$(Q)z.HLM")
#! Field("$(P)$(Q)z.OUT",16750848,1,"$(P)$(Q)z.OUT")
#! Link("$(P)$(Q)z.OUT","$(P)$(Q)z/OUT")
#! Field("$(P)$(Q)z.RDBL",16777215,0,"$(P)$(Q)z.RDBL")
#! Link("$(P)$(Q)z.RDBL","$(P)$(Q)z/RDBL")
#! Field("$(P)$(Q)z.DINP",65280,0,"$(P)$(Q)z.DINP")
#! Link("$(P)$(Q)z.DINP","$(P)$(Q)z/DINP")
#! Field("$(P)$(Q)z.DVAL",16777215,1,"$(P)$(Q)z.DVAL")
#! Field("$(P)$(Q)z.LOCK",16777215,1,"$(P)$(Q)z.LOCK")
#! Connector("$(P)$(Q)z/RDBL","$(P)$(Q)tRev.G",1100,1290,16777215,"",0)
#! Connector("$(P)$(Q)z/DINP","$(P)$(Q)calcDone.VAL",1160,1720,65280,"",0)
#! Connector("$(P)$(Q)z/OUT","$(P)$(Q)softPut.PROC",1680,1120,16750848,"",0)
#! Record("$(P)$(Q)y",1240,1085,0,0,"$(P)$(Q)y")
#! Field("$(P)$(Q)y.STOP",16711680,0,"$(P)$(Q)y.STOP")
#! Field("$(P)$(Q)y.SYNC",16711935,0,"$(P)$(Q)y.SYNC")
#! Field("$(P)$(Q)y.LLM",16777215,0,"$(P)$(Q)y.LLM")
#! Field("$(P)$(Q)y.HLM",16777215,0,"$(P)$(Q)y.HLM")
#! Field("$(P)$(Q)y.OUT",16750848,1,"$(P)$(Q)y.OUT")
#! Link("$(P)$(Q)y.OUT","$(P)$(Q)y/OUT")
#! Field("$(P)$(Q)y.RDBL",16777215,0,"$(P)$(Q)y.RDBL")
#! Link("$(P)$(Q)y.RDBL","$(P)$(Q)y/RDBL1")
#! Field("$(P)$(Q)y.DINP",65280,0,"$(P)$(Q)y.DINP")
#! Link("$(P)$(Q)y.DINP","$(P)$(Q)y/DINP")
#! Field("$(P)$(Q)y.DVAL",16777215,1,"$(P)$(Q)y.DVAL")
#! Field("$(P)$(Q)y.LOCK",16777215,1,"$(P)$(Q)y.LOCK")
#! Connector("$(P)$(Q)y/DINP","$(P)$(Q)calcDone.VAL",1160,1850,65280,"",0)
#! Connector("$(P)$(Q)y/OUT","$(P)$(Q)softPut.PROC",1680,1250,16750848,"",0)
#! Connector("$(P)$(Q)y/RDBL1","$(P)$(Q)tRev.H",1120,1430,16777215,"",0)
#! Record("$(P)$(Q)chi",1240,1365,0,1,"$(P)$(Q)chi")
#! Field("$(P)$(Q)chi.STOP",16711680,0,"$(P)$(Q)chi.STOP")
#! Field("$(P)$(Q)chi.SYNC",16711935,0,"$(P)$(Q)chi.SYNC")
#! Field("$(P)$(Q)chi.LLM",16777215,0,"$(P)$(Q)chi.LLM")
#! Field("$(P)$(Q)chi.HLM",16777215,0,"$(P)$(Q)chi.HLM")
#! Field("$(P)$(Q)chi.OUT",16750848,1,"$(P)$(Q)chi.OUT")
#! Link("$(P)$(Q)chi.OUT","$(P)$(Q)chi/OUT")
#! Field("$(P)$(Q)chi.RDBL",16777215,0,"$(P)$(Q)chi.RDBL")
#! Link("$(P)$(Q)chi.RDBL","$(P)$(Q)chi/RDBL")
#! Field("$(P)$(Q)chi.DINP",65280,0,"$(P)$(Q)chi.DINP")
#! Link("$(P)$(Q)chi.DINP","$(P)$(Q)chi/DINP")
#! Field("$(P)$(Q)chi.DVAL",16777215,1,"$(P)$(Q)chi.DVAL")
#! Field("$(P)$(Q)chi.LOCK",16777215,1,"$(P)$(Q)chi.LOCK")
#! Connector("$(P)$(Q)chi/DINP","$(P)$(Q)calcDone.VAL",1160,1990,65280,"",0)
#! Connector("$(P)$(Q)chi/OUT","$(P)$(Q)softPut.PROC",1680,1390,16750848,"",0)
#! Connector("$(P)$(Q)chi/RDBL","$(P)$(Q)tRev.I",1120,1580,16777215,"",0)
#! Record("$(P)$(Q)x",1240,1625,0,0,"$(P)$(Q)x")
#! Field("$(P)$(Q)x.STOP",16711680,0,"$(P)$(Q)x.STOP")
#! Field("$(P)$(Q)x.SYNC",16711935,0,"$(P)$(Q)x.SYNC")
#! Field("$(P)$(Q)x.LLM",16777215,0,"$(P)$(Q)x.LLM")
#! Field("$(P)$(Q)x.HLM",16777215,0,"$(P)$(Q)x.HLM")
#! Field("$(P)$(Q)x.OUT",16750848,1,"$(P)$(Q)x.OUT")
#! Link("$(P)$(Q)x.OUT","$(P)$(Q)x/OUT")
#! Field("$(P)$(Q)x.RDBL",16777215,0,"$(P)$(Q)x.RDBL")
#! Link("$(P)$(Q)x.RDBL","$(P)$(Q)x/RDBL")
#! Field("$(P)$(Q)x.DINP",65280,0,"$(P)$(Q)x.DINP")
#! Link("$(P)$(Q)x.DINP","$(P)$(Q)x/DINP")
#! Field("$(P)$(Q)x.DVAL",16777215,1,"$(P)$(Q)x.DVAL")
#! Field("$(P)$(Q)x.LOCK",16777215,1,"$(P)$(Q)x.LOCK")
#! Connector("$(P)$(Q)x/DINP","$(P)$(Q)calcDone.VAL",1160,2120,65280,"",0)
#! Connector("$(P)$(Q)x/OUT","$(P)$(Q)softPut.PROC",1680,1520,16750848,"",0)
#! Connector("$(P)$(Q)x/RDBL","$(P)$(Q)tRev.J",1100,1720,16777215,"",0)
#! Record("$(P)$(Q)mYDPut",2620,895,0,0,"$(P)$(Q)mYDPut")
#! Field("$(P)$(Q)mYDPut.OUT",16777215,1,"$(P)$(Q)mYDPut.OUT")
#! Field("$(P)$(Q)mYDPut.VAL",16777215,0,"$(P)$(Q)mYDPut.VAL")
#! Record("$(P)$(Q)mYD_nameCalc",2880,895,0,0,"$(P)$(Q)mYD_nameCalc")
#! Field("$(P)$(Q)mYD_nameCalc.INAA",16777215,0,"$(P)$(Q)mYD_nameCalc.INAA")
#! Link("$(P)$(Q)mYD_nameCalc.INAA","$(P)$(Q)mYDPut.OUT")
#! Record("$(P)$(Q)mYUPut",2620,1015,0,0,"$(P)$(Q)mYUPut")
#! Field("$(P)$(Q)mYUPut.OUT",16777215,1,"$(P)$(Q)mYUPut.OUT")
#! Field("$(P)$(Q)mYUPut.VAL",16777215,0,"$(P)$(Q)mYUPut.VAL")
#! Record("$(P)$(Q)mYU_nameCalc",2880,1015,0,0,"$(P)$(Q)mYU_nameCalc")
#! Field("$(P)$(Q)mYU_nameCalc.INAA",16777215,0,"$(P)$(Q)mYU_nameCalc.INAA")
#! Link("$(P)$(Q)mYU_nameCalc.INAA","$(P)$(Q)mYUPut.OUT")
#! Record("$(P)$(Q)mZPut",2620,1255,0,0,"$(P)$(Q)mZPut")
#! Field("$(P)$(Q)mZPut.VAL",16777215,0,"$(P)$(Q)mZPut.VAL")
#! Field("$(P)$(Q)mZPut.OUT",16777215,1,"$(P)$(Q)mZPut.OUT")
#! Record("$(P)$(Q)mZ_nameCalc",2880,1275,0,0,"$(P)$(Q)mZ_nameCalc")
#! Field("$(P)$(Q)mZ_nameCalc.INAA",16777215,0,"$(P)$(Q)mZ_nameCalc.INAA")
#! Link("$(P)$(Q)mZ_nameCalc.INAA","$(P)$(Q)mZPut.OUT")
#! Record("$(P)$(Q)mRZPut",2620,1135,0,0,"$(P)$(Q)mRZPut")
#! Field("$(P)$(Q)mRZPut.VAL",16777215,0,"$(P)$(Q)mRZPut.VAL")
#! Field("$(P)$(Q)mRZPut.OUT",16777215,1,"$(P)$(Q)mRZPut.OUT")
#! Record("$(P)$(Q)mRZ_nameCalc",2880,1155,0,0,"$(P)$(Q)mRZ_nameCalc")
#! Field("$(P)$(Q)mRZ_nameCalc.INAA",16777215,0,"$(P)$(Q)mRZ_nameCalc.INAA")
#! Link("$(P)$(Q)mRZ_nameCalc.INAA","$(P)$(Q)mRZPut.OUT")
#! Record("$(P)$(Q)mXPut",2620,1375,0,0,"$(P)$(Q)mXPut")
#! Field("$(P)$(Q)mXPut.VAL",16777215,0,"$(P)$(Q)mXPut.VAL")
#! Field("$(P)$(Q)mXPut.OUT",16777215,1,"$(P)$(Q)mXPut.OUT")
#! Record("$(P)$(Q)mX_nameCalc",2880,1395,0,0,"$(P)$(Q)mX_nameCalc")
#! Field("$(P)$(Q)mX_nameCalc.INAA",16777215,0,"$(P)$(Q)mX_nameCalc.INAA")
#! Link("$(P)$(Q)mX_nameCalc.INAA","$(P)$(Q)mXPut.OUT")
#! Record("$(P)$(Q)yLen",380,575,0,0,"$(P)$(Q)yLen")
#! Field("$(P)$(Q)yLen.VAL",16777215,1,"$(P)$(Q)yLen.VAL")
#! Record("$(P)$(Q)clearSoftMove",1760,1455,0,0,"$(P)$(Q)clearSoftMove")
#! Field("$(P)$(Q)clearSoftMove.PROC",16777215,0,"$(P)$(Q)clearSoftMove.PROC")
#! Field("$(P)$(Q)clearSoftMove.OUT",16777215,1,"$(P)$(Q)clearSoftMove.OUT")
#! Link("$(P)$(Q)clearSoftMove.OUT","$(P)$(Q)clearSoftMove/OUT")
#! Connector("$(P)$(Q)clearSoftMove/OUT","$(P)$(Q)isSoftMove.VAL",2040,1620,16777215,"",0)
#! Record("$(P)$(Q)isSoftMove",1760,1532,0,0,"$(P)$(Q)isSoftMove")
#! Field("$(P)$(Q)isSoftMove.VAL",16777215,1,"$(P)$(Q)isSoftMove.VAL")
#! Field("$(P)$(Q)isSoftMove.OUTA",16777215,0,"$(P)$(Q)isSoftMove.OUTA")
#! Link("$(P)$(Q)isSoftMove.OUTA","$(P)$(Q)isSoftMove/OUTA")
#! Field("$(P)$(Q)isSoftMove.OUTB",16777215,0,"$(P)$(Q)isSoftMove.OUTB")
#! Link("$(P)$(Q)isSoftMove.OUTB","$(P)$(Q)isSoftMove/OUTB")
#! Field("$(P)$(Q)isSoftMove.OUTC",16777215,0,"$(P)$(Q)isSoftMove.OUTC")
#! Link("$(P)$(Q)isSoftMove.OUTC","$(P)$(Q)isSoftMove/OUTC")
#! Field("$(P)$(Q)isSoftMove.OUTD",16777215,0,"$(P)$(Q)isSoftMove.OUTD")
#! Link("$(P)$(Q)isSoftMove.OUTD","$(P)$(Q)chi.LOCK")
#! Field("$(P)$(Q)isSoftMove.OUTE",16777215,0,"$(P)$(Q)isSoftMove.OUTE")
#! Link("$(P)$(Q)isSoftMove.OUTE","$(P)$(Q)x.LOCK")
#! Connector("$(P)$(Q)isSoftMove/OUTA","$(P)$(Q)th.LOCK",1560,1320,16777215,"",0)
#! Connector("$(P)$(Q)isSoftMove/OUTB","$(P)$(Q)z.LOCK",1540,1460,16777215,"",0)
#! Connector("$(P)$(Q)isSoftMove/OUTC","$(P)$(Q)y.LOCK",1520,1600,16777215,"",0)
#! Record("$(P)$(Q)softPut",1800,856,0,0,"$(P)$(Q)softPut")
#! Field("$(P)$(Q)softPut.PROC",16750848,0,"$(P)$(Q)softPut.PROC")
#! Field("$(P)$(Q)softPut.LNK2",16777215,1,"$(P)$(Q)softPut.LNK2")
#! Link("$(P)$(Q)softPut.LNK2","$(P)$(Q)softPut/LNK2")
#! Field("$(P)$(Q)softPut.DOL3",16777215,0,"$(P)$(Q)softPut.DOL3")
#! Link("$(P)$(Q)softPut.DOL3","$(P)$(Q)softPut/DOL3")
#! Field("$(P)$(Q)softPut.LNK3",16777215,1,"$(P)$(Q)softPut.LNK3")
#! Link("$(P)$(Q)softPut.LNK3","$(P)$(Q)tFwd.B")
#! Field("$(P)$(Q)softPut.DOL4",16777215,0,"$(P)$(Q)softPut.DOL4")
#! Link("$(P)$(Q)softPut.DOL4","$(P)$(Q)softPut/DOL4")
#! Field("$(P)$(Q)softPut.LNK4",16777215,1,"$(P)$(Q)softPut.LNK4")
#! Link("$(P)$(Q)softPut.LNK4","$(P)$(Q)softPut/LNK4")
#! Field("$(P)$(Q)softPut.DOL5",16777215,0,"$(P)$(Q)softPut.DOL5")
#! Link("$(P)$(Q)softPut.DOL5","$(P)$(Q)softPut/DOL5")
#! Field("$(P)$(Q)softPut.LNK5",16777215,1,"$(P)$(Q)softPut.LNK5")
#! Link("$(P)$(Q)softPut.LNK5","$(P)$(Q)softPut/LNK5")
#! Field("$(P)$(Q)softPut.DOL6",16777215,0,"$(P)$(Q)softPut.DOL6")
#! Link("$(P)$(Q)softPut.DOL6","$(P)$(Q)chi.DVAL")
#! Field("$(P)$(Q)softPut.LNK6",16777215,1,"$(P)$(Q)softPut.LNK6")
#! Link("$(P)$(Q)softPut.LNK6","$(P)$(Q)softPut/LNK6")
#! Field("$(P)$(Q)softPut.DOL7",16777215,0,"$(P)$(Q)softPut.DOL7")
#! Link("$(P)$(Q)softPut.DOL7","$(P)$(Q)softPut/DOL7")
#! Field("$(P)$(Q)softPut.LNK7",16777215,1,"$(P)$(Q)softPut.LNK7")
#! Link("$(P)$(Q)softPut.LNK7","$(P)$(Q)softPut/LNK7")
#! Connector("$(P)$(Q)softPut/LNK4","$(P)$(Q)tFwd.C",2060,1200,16777215,"",0)
#! Connector("$(P)$(Q)softPut/LNK5","$(P)$(Q)tFwd.D",2080,1230,16777215,"",0)
#! Connector("$(P)$(Q)softPut/LNK6","$(P)$(Q)tFwd.E",2100,1260,16777215,"",0)
#! Connector("$(P)$(Q)softPut/LNK7","$(P)$(Q)tFwd.F",2120,1290,16777215,"",0)
#! Connector("$(P)$(Q)softPut/DOL3","$(P)$(Q)th.DVAL",1620,1040,16777215,"",0)
#! Connector("$(P)$(Q)softPut/DOL4","$(P)$(Q)z.DVAL",1620,1190,16777215,"",0)
#! Connector("$(P)$(Q)softPut/DOL5","$(P)$(Q)y.DVAL",1620,1340,16777215,"",0)
#! Connector("$(P)$(Q)softPut/DOL7","$(P)$(Q)x.DVAL",1640,1650,16777215,"",0)
#! Connector("$(P)$(Q)softPut/LNK2","$(P)$(Q)isSoftMove.VAL",2040,1400,16777215,"",0)