# This protocol is for full system flush using Sig H2O and 70% ETOH

#step 1  Flush SS, intake, Exhaust Requires flush puck in CC
#final step pushes flush back through intake so use a separate flush
#for this step
loadFlush.to:CC
SSV.connect :CBV
CTV.to:intake
Intake.open   #flush intake
SS.fill
SSV.to :air  #flush port 1
SS.to 10
SSV.to:exhaust  #flush port 4
Exhaust.open
SS.empty 
SSV.to:CBV
SS.fill
SSV.to :air  #flush port 1
SS.to 10
SSV.to:exhaust  #flush port 4
Exhaust.open
SS.empty 
CTV.to :air  #air out flushed lines
SSV.to :CBV
SS.fill
CTV.to:intake
SS.empty
CTV.to :air
SS.fill
SSV.to :air
SS.to 10
SSV.to :exhaust
SS.empty
Intake.close
Exhaust.close
#step 2  Flush CS and CSV requires flush puck in CC already loaded in step 1
CSV.to :flush
CS.to 10
CSV.to :air2  # flush air2  (2)
CS.empty
CSV.to :flush
CS.to 10
CSV.to :waste2  # flush waste1 (1)
CS.empty
CSV.to :air2    # this step to air out air2
CS.fill
CSV.to :waste2
CSV.to :flush
CS.to 10
CSV.connect :CBV  # flush port 3 thru CTV air
CTV.to :air
CS.empty
CSV.to :air2
CS.fill
CSV.to :CBV
CS.empty   # airs out port 3 thru CTV
CSV.to :flush
CS.fill
CSV.to :waste1  # flush out port 4
CS.empty
CSV.to :air2
CS.fill
CSV.to :waste1  # air out port 4 waste1
CS.empty
CSV.to :flush
CS.fill
CSV.to :air1  # flush out port 6
CS.empty
CSV.to :air2
CS.fill
CSV.to :air1  # air out port 6
CS.empty
CSV.to :flush
CS.fill
CSV.connect :CTV  # flush out port 7 thru CBV waste2
CBV.to :waste2
CS.empty
CSV.to :air1
CS.fill
CSV.to :CTV  # air out port 7 thru CBV
CS.empty
CSV.to :flush
CS.fill
CSV.to :CSR  # flush out port 8 CSR
CSR.to :air
CS.empty
CSV.to :air1  # air out port 8 thru CSR
CS.fill
CSV.to CSR
CS.empty
#step 3  Flush CSR
CSV.to :CSR
CSR.to :lysis   # valve 0
CS.fill
CSV.to :waste2
CS.empty
CSV.to :CSR
CSR.to :fix   # valve 1
CS.fill
CSV.to :waste2
CS.empty
CSV.to :CSR
CSR.to :AqMeOH   # valve 2
CS.fill
CSV.to :waste2
CS.empty
CSR.to :diluent   # valve 3
CS.fill
CSV.to :waste2
CS.empty
CSR.to 4   # valve 4
CS.fill
CSV.to :waste2
CS.empty
CSR.to 5   # valve 5
CS.fill
CSV.to :waste2
CS.empty
CSR.to :kill   # valve 6
CS.fill
CSV.to :waste2
CS.empty
CSR.to :flush   # valve 7
CS.fill
CSV.to :waste2
CS.empty
CSV.to :flush
CS.fill
CSV.to :CSR
CSR.to :air     # flush out CSR
CS.empty
CSV.to :air1
CS.fill
CSV.to :CSR
CS.empty    # air out CSR
# step 4 flush CBV flush puck required in CC still loaded from step 2
CSV.to :flush
CS.fill
CSV.to :CTV
CBV.to :waste1    # start waste1 flush
CS.empty
CSV.to :flush
CS.fill
CSV.to :CTV
CS.empty
CSV.to :air
CS.fill
CSV.to :CTV
CS.empty
CSV.to :air
CS.fill
CSV.to :CTV
CS.empty      # end waste1 flush
#  PRV gets flushed later on
#  PSV gets flushed later on
CSV.to :flush
CS.fill
CSV.to :CTV
CBV.to :waste2    # start waste2 flush
CS.empty
CSV.to :flush
CS.fill
CSV.to :CTV
CS.empty
CSV.to :air
CS.fill
CSV.to :CTV
CS.empty
CSV.to :air
CS.fill
CSV.to :CTV
CS.empty      # end waste2 flush
# SSV already flushed previously
CSV.to :flush
CS.fill
CSV.to :CTV
CBV.to :DVB    # start DVB flush (7)
CS.empty
CSV.to :flush
CS.fill
CSV.to :CTV
CS.empty
CSV.to :air
CS.fill
CSV.to :CTV
CS.empty
CSV.to :air
CS.fill
CSV.to :CTV
CS.empty      # end DBV flush
CSV.to :flush
CS.fill
CSV.to :CTV
CBV.to :waste2b    # start waste2b flush
CS.empty
CSV.to :flush
CS.fill
CSV.to :CTV
CS.empty
CSV.to :air
CS.fill
CSV.to :CTV
CS.empty
CSV.to :air
CS.fill
CSV.to :CTV
CS.empty      # end waste2b flush
#step 5  Flush PSR
PSV.to :PSR
PSR.to :sig1  # valve 0
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PSR.to :sig2  # valve 1
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PSR.to :sig3  # valve 2
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PSR.to :conjugate  # valve 3
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PSR.to :sub1  # valve 4
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PSR.to :sub2  # valve 5
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PSR.to :wash  # valve 6
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PSR.to :flush  # valve 7
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PS.fill
PSV.to :waste1
PS.empty
PSV.to :PSR
PSR.to :sig1  # get flush to clear PSR
PS.fill
PSR.to :air
PS.empty
PSR.to :sig1
PS.fill
PSR.to :air
PS.empty
PSV.to :air
PS.fill
PSV.to :PSR
PS.empty
#step 6  Flush PSV
PSV.to :PSR      #clear air clean first; 
PSR.to :sig1
PS.fill
PSV.to :air      #air not in flush plumbed clean
PSV.empty
PSV.to :PSR
PS.fill
PSV.to :air
PSV.empty
PSV.to :PSR
PS.fill
PSV.to :air
PS.empty
PSV.to :PSR
PSR.to :air
PS.fill
PSV.to :air
PSV.empty
PSV.to :PSR
PS.fill
PSV.to :air
PSV.empty       # end air flush
PSV.to :PSR    #clean waste1
PSR.to :sig1
PS.fill
PSV.to :waste1
PSV.empty
PSV.to :PSR
PS.fill
PSV.to :waste1
PS.empty
PSV.to :air
PS.fill
PSV.to :waste1
PS.empty
PSV.to :air
PS.fill
PSV.to :waste1
PS.empty         #end waste1 clean
PSV.to :PSR    #clean waste2
PSR.to :sig1
PS.fill
PSV.to :waste2
PSV.empty
PSV.to :PSR
PS.fill
PSV.to :waste2
PS.empty
PSV.to :air
PS.fill
PSV.to :waste2
PS.empty
PSV.to :air
PS.fill
PSV.to :waste2
PS.empty         #end waste2 clean
loadFlush :CC    #clean CBV line through CC load flush puck CC
CBV.to :PSV
CTV.to air
PSV.to :PSR
PSR.to :sig1
PS.fill
PSV.to :CBV
PSV.empty
PSV.to :PSR
PS.fill
PSV.to :CBV
PSV.empty
PSV.to :PSR
PS.fill
PSV.to :CBV
PSV.empty
PSV.to :air
PS.fill
PSV.to :CBV
PSV.empty
PSV.to :air
PS.fill
PSV.to :CBV
PSV.empty
PSV.to :air
PS.fill
PSV.to :CBV
PSV.empty
returnFlush :CC    #end CBV line flush
loadFlush :PC     # clean PML need flush puck in PC
PTV.to :mixing
PBV.to :waste1
PSV.to :PSR
PSR.to :sig1
PS.fill
PSV.to :PML
PS.empty
PSV.to :PSR
PS.fill
PSV.to :PML
PS.empty
PSV.to :PSR
PS.fill
PSV.to :PML
PS.empty
PSV.to :air
PS.fill
PSV.to :PML
PS.empty
PSV.to :air
PS.fill
PSV.to :PML
PS.empty
PSV.to :air
PS.fill
PSV.to :PML
PS.empty        #end PML flush
PTV.to :PRV     #start PSV to CBV line flush (PTV port)
PRV.connect :CBV
PSV.to :PSR
PSR.to :sig1
PS.fill
PSV.to :PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to :PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty       #end PSV to CBV line flush
returnFlush :PC
#step 7  Manual PBV Flush through PC use absorbtive towel to catch flush coming out of heater cap port
PBV.to :PSV
PSV.to :PSR
PSR.to :sig1
PS.fill
PSV.to :PBV
PS.empty
PSV.to :PSR
PS.fill
PSV.to :PBV
PS.empty
PSV.to :air
PS.fill
PSV.to :PBV
PS.empty
PSV.to :air
PS.fill
PSV.to :PBV
PS.empty
#step 8  Flush PRV
PTV.to :PRV   
PRV.to :ab1    #flush ab1
PSV.to :PSR
PSR.to :sig1
PS.fill
PSV.to PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to PTV
PS.empty
PSV.to :air
PS.fill
PSV.to PTV
PS.empty
PSV.to :air
PS.fill
PSV.to PTV
PS.empty
PSV.to :air
PS.fill
PSV.to PTV
PS.empty       #end ab1 flush
PRV.to :ab2    #start flush ab2
PSV.to :PSR
PS.fill
PSV.to PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to PTV
PS.empty
PSV.to :air
PS.fill
PSV.to PTV
PS.empty
PSV.to :air
PS.fill
PSV.to PTV
PS.empty
PSV.to :air
PS.fill
PSV.to PTV
PS.empty   #end ab2 flush
PRV.to :waste2   #start waste2 flush
PSV.to :PSR
PS.fill
PSV.to PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to PTV
PS.empty
PSV.to :air
PS.fill
PSV.to PTV
PS.empty
PSV.to :air
PS.fill
PSV.to PTV
PS.empty
PSV.to :air
PS.fill
PSV.to PTV
PS.empty     # end waste2 flush
PRV.to :air   # start air clean flush
PSV.to :PSR
PS.fill
PSV.to PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PBV
PS.empty
PSV.to :air
PS.fill
PSV.to PTV
PS.empty
PSV.to :air
PS.fill
PSV.to PTV
PS.empty
PSV.to :air
PS.fill
PSV.to PTV
PS.empty     # end air clean flush
loadFlush :CC  # start PRV/CBV line flush
PRV.connect :CBV
CTV.to :air
PSV.to :PSR
PS.fill
PSV.to :PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to :PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty     # end PRV/CBV line flush
returnFlush :CC
#step 9  Flush PBV  need to load flush puck in PC
loadFlush :PC
PTV.to :puck
PSV.to :PSR
PSR.to :sig1
PS.fill
PSV.to :PTV
PBV.to :air    # flush air
PS.empty
PSV.to :PSR
PS.fill
PSV.to :PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty     # end air flush
PBV.to :waste1    # start waste1 flush
PSV.to :PSR
PS.fill
PSV.to :PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to :PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty           # end waste1 flush
PBV.to :waste2     # start waste2 flush
PSV.to :PSR
PS.fill
PSV.to :PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to :PTV
PS.empty
PSV.to :PSR
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty
PSV.to :air
PS.fill
PSV.to :PTV
PS.empty         # end waste2 flush
PSV.to :air      #  clear PSR
PS.fill
PSV.to :PSR
PSR.to :air
PS.empty
PSV.to :air
PS.fill
PSV.to :PSR
PS.empty         # end clear PSR