changeset 72:609cb9ae53b1

results of 7.10 rehearsal, rollback broken IO changes
author dmcc
date Thu, 11 Jul 2002 15:26:28 +0000
parents 177e9ba0b4a7
children c74fe7efabc1
files light8/Config.py light8/Lightboard.py light8/io.py
diffstat 3 files changed, 78 insertions(+), 564 deletions(-) [+]
line wrap: on
line diff
--- a/light8/Config.py	Thu Jul 11 09:33:02 2002 +0000
+++ b/light8/Config.py	Thu Jul 11 15:26:28 2002 +0000
@@ -15,7 +15,7 @@
 patch = {
     
     ('side l','sidepost1') : 45, # posts
-    ('side r','sidepost2') : 46,
+    ('side r','sidepost2') : 4s6,
     
     'sidefill1' : 13,
     'sidefill2' : 14,
@@ -99,442 +99,6 @@
 
 #subs["*marry"] = { "hotbox1" : 100,}
 subs["*phone booth"] = { "phone" : 100,}
-## subs["*broadway open"] = { "sidefill2" : 100, "sidefill1" : 100,
-##     "main 11" : 100, "main 10" : 100, "b34" : 100, "b25" : 100, "b24" : 100,
-##     "b22" : 100, "desk2" : 78, "phone" : 46, "upfill3" : 69, "upfill2" : 100,
-##     "main 3" : 68, "main 2" : 100, "main 5" : 100, "main 4" : 100,
-##     "main 7" : 100, "main 9" : 100, "main 8" : 100, "edge" : 46,
-##     "sidepost1" : 100, "sidepost2" : 100, "marry2" : 100, "marry1" : 100,}
-## subs["*int mission"] = { "sidefill1" : 100, "main 4" : 100, "main 9" : 100,
-##     "main 8" : 100, "b24" : 100, "b23" : 100, "desk1" : 100, "desk2" : 100,
-##     "b22" : 100, "rock" : 100, "marry1" : 100, "cuba1" : 25, "cuba2" : 51,
-##     "main 10" : 100,}
-## subs["*broadway open"] = { "sidefill2" : 100, "sidefill1" : 100,
-##     "main 11" : 100, "main 10" : 100, "b34" : 100, "b25" : 100, "b24" : 100,
-##     "b22" : 100, "desk2" : 78, "phone" : 46, "hotbox1" : 100, "upfill3" : 69,
-##     "upfill2" : 100, "main 3" : 68, "main 2" : 100, "main 5" : 100,
-##     "main 4" : 100, "main 7" : 100, "hotbox2" : 100, "main 9" : 100,
-##     "main 8" : 100, "edge" : 46, "sidepost1" : 100, "sidepost2" : 100,
-##     "marry2" : 100, "marry1" : 100,}
-## subs["*broadway open"] = { "sidefill2" : 100, "sidefill1" : 100,
-##     "cycright" : 41, "upfill3" : 69, "upfill2" : 100, "upfill1" : 56,
-##     "side l" : 100, "b25" : 100, "cycleft" : 41, "b22" : 100, "desk2" : 78,
-##     "phone" : 46, "hotbox1" : 100, "upfill4" : 56, "b24" : 100, "side r" : 100,
-##     "main 11" : 100, "main 10" : 100, "main 3" : 68, "main 2" : 100,
-##     "main 5" : 100, "main 4" : 100, "main 7" : 100, "hotbox2" : 100,
-##     "main 9" : 100, "main 8" : 100, "b34" : 100, "edge" : 46, "god" : 100,
-##     "marry2" : 100, "marry1" : 100,}
-## subs["*broadway open"] = { "sidefill2" : 100, "sidefill1" : 100,
-##     "cycright" : 41, "upfill3" : 69, "upfill2" : 100, "upfill1" : 56,
-##     "b34" : 100, "b25" : 100, "side l" : 100, "b22" : 100, "desk2" : 78,
-##     "phone" : 80, "hotbox1" : 100, "upfill4" : 56, "b24" : 100, "side r" : 100,
-##     "main 11" : 100, "main 10" : 100, "main 3" : 100, "main 2" : 100,
-##     "main 5" : 100, "main 4" : 100, "main 7" : 100, "hotbox2" : 100,
-##     "main 9" : 100, "main 8" : 100, "cycleft" : 41, "edge" : 80,
-##     "god" : 100, "marry2" : 100, "marry1" : 100,}
-## subs["*int mission"] = { "sidefill2" : 51, "sidefill1" : 0, "upfill4" : 0,
-##     "main 11" : 100, "main 10" : 100, "b34" : 0, "b25" : 0, "b24" : 100,
-##     "b23" : 100, "desk1" : 53, "desk2" : 100, "b22" : 100, "hotbox2" : 85,
-##     "hotbox1" : 25, "b32" : 62, "upfill3" : 37, "upfill2" : 66, "main 3" : 0,
-##     "main 5" : 70, "main 4" : 100, "main 7" : 100, "main 9" : 100,
-##     "main 8" : 100, "rock" : 52, "marry2" : 100, "marry1" : 61, "cuba1" : 0,
-##     "cuba2" : 78,}
-## subs["*int mission"] = { "sidefill2" : 51, "sidefill1" : 0, "upfill4" : 0,
-##     "main 11" : 100, "main 10" : 100, "b34" : 0, "b25" : 0, "b24" : 100,
-##     "b23" : 100, "desk1" : 53, "desk2" : 100, "b22" : 100, "hotbox2" : 85,
-##     "hotbox1" : 25, "cycright" : 66, "b32" : 62, "upfill3" : 37,
-##     "upfill2" : 66, "main 3" : 57, "main 2" : 0, "main 5" : 70, "main 4" : 100,
-##     "main 7" : 100, "main 9" : 100, "main 8" : 100, "rock" : 52,
-##     "marry2" : 100, "marry1" : 61, "cuba1" : 0, "cuba2" : 78,}
-
-## subs["*hotbox dance"] = { "cycright" : 19, "upfill3" : 32, "upfill2" : 46,
-##     "upfill1" : 26, "sidefill2" : 0, "b25" : 0, "side l" : 46, "b23" : 0,
-##     "desk1" : 0, "desk2" : 24, "upfill4" : 26, "side r" : 46, "main 11" : 46,
-##     "main 10" : 100, "god" : 100, "edge" : 0, "sidepost1" : 0, "sidepost2" : 0,
-##     "marry2" : 0, "marry1" : 0, "cuba1" : 0, "cuba2" : 0, "b13" : 0,
-##     "red3" : 100, "red2" : 100, "sidefill1" : 0, "b24" : 0, "red4" : 100,
-##     "b34" : 30, "cycleft" : 19, "b32" : 43, "b22" : 0, "phone" : 0,
-##     "hotbox1" : 42, "main 3" : 46, "main 2" : 46, "main 5" : 100,
-##     "main 4" : 46, "main 7" : 100, "hotbox2" : 78, "main 9" : 46,
-##     "main 8" : 46, "hotback" : 100, "rock" : 0, "red1" : 100,}
-## subs["*hotbox table"] = { "sidefill2" : 0, "main 3" : 80, "main 2" : 62,
-##     "main 11" : 0, "main 4" : 29, "main 7" : 10, "main 9" : 64, "main 8" : 10,
-##     "b25" : 0, "b22" : 100, "phone" : 0, "edge" : 0, "b13" : 0, "marry2" : 0,
-##     "main 5" : 34, "marry1" : 0, "hotback" : 0, "cuba1" : 22, "cuba2" : 0,}
-## subs["*hotbox table"] = { "sidefill2" : 0, "main 11" : 0, "b25" : 0,
-##     "b22" : 100, "desk2" : 58, "phone" : 0, "main 3" : 80, "main 2" : 62,
-##     "main 5" : 34, "main 4" : 100, "main 7" : 10, "hotbox2" : 46,
-##     "main 9" : 64, "main 8" : 10, "edge" : 0, "b13" : 0, "rock" : 22,
-##     "marry2" : 0, "marry1" : 0, "hotback" : 0, "cuba1" : 22, "cuba2" : 0,}
-## subs["*hotbox small table"] = { "red3" : 100, "red2" : 100, "main 3" : 80,
-##     "main 2" : 62, "main 5" : 34, "main 4" : 100, "main 7" : 10,
-##     "red4" : 100, "main 9" : 64, "main 8" : 10, "rock" : 22, "red1" : 100,
-##     "desk2" : 58, "b22" : 100, "hotbox2" : 46, "upfill4" : 62, "god" : 100,
-##     "upfill1" : 62, "cuba1" : 22,}
-## subs["*hotbox small table"] = { "red3" : 100, "red2" : 100, "red1" : 100,
-##     "upfill4" : 62, "main 11" : 0, "main 10" : 0, "upfill1" : 62,
-##     "red4" : 100, "b25" : 5, "b22" : 100, "desk2" : 58, "desk1" : 52,
-##     "hotbox2" : 0, "sidefill2" : 0, "main 3" : 47, "main 2" : 0,
-##     "main 5" : 0, "main 4" : 0, "main 7" : 0, "phone" : 0, "main 9" : 11,
-##     "main 8" : 0, "god" : 100, "edge" : 0, "rock" : 0, "marry2" : 0,
-##     "marry1" : 0, "hotback" : 0, "cuba1" : 0, "cuba2" : 0,}
-
-## subs["*ext mission"] = { "sidefill2" : 100, "sidefill1" : 59,
-##     "cycright" : 53, "upfill3" : 0, "upfill2" : 0, "upfill1" : 0,
-##     "b34" : 100, "b25" : 100, "side l" : 100, "b23" : 100, "b22" : 49,
-##     "b32" : 80, "phone" : 0, "hotbox1" : 0, "upfill4" : 0, "b24" : 100,
-##     "desk2" : 78, "main 11" : 100, "main 10" : 100, "main 3" : 0,
-##     "main 2" : 100, "main 5" : 100, "main 4" : 0, "main 7" : 100,
-##     "hotbox2" : 100, "main 9" : 100, "main 8" : 100, "god" : 100,
-##     "cycleft" : 0, "edge" : 0, "b13" : 0, "rock" : 60, "marry2" : 100,
-##     "marry1" : 0, "side r" : 100,}
-
-## subs["*broadway night 1-7"] = { "sidefill2" : 37, "sidefill1" : 37,
-##     "upfill3" : 11, "upfill2" : 23, "b34" : 28, "b25" : 37, "b24" : 94,
-##     "b23" : 100, "b22" : 82, "desk2" : 0, "desk1" : 0, "hotbox2" : 11,
-##     "hotbox1" : 0, "blue1" : 93, "main 11" : 37, "blue3" : 93, "blue2" : 93,
-##     "blue4" : 93, "main 10" : 37, "main 3" : 25, "main 2" : 37, "main 5" : 37,
-##     "main 4" : 37, "main 7" : 37, "main 9" : 37, "main 8" : 37, "edge" : 12,
-##     "god" : 100, "marry2" : 0, "marry1" : 37,}
-## subs["*cuba right"] = { "main 3" : 31, "main 2" : 0, "main 10" : 100,
-##     "b34" : 100, "b22" : 31, "desk2" : 85, "desk1" : 39, "edge" : 31,
-##     "sidefill1" : 7, "cuba1" : 100, "cuba2" : 100,}
-## subs["*cuba dance"] = { "sidefill2" : 100, "sidefill1" : 100,
-##     "upfill4" : 100, "upfill3" : 81, "upfill2" : 100, "upfill1" : 100,
-##     "b34" : 100, "b25" : 100, "b24" : 100, "b23" : 100, "desk1" : 100,
-##     "desk2" : 100, "b22" : 100, "phone" : 100, "main 11" : 100, "main 10" : 100,
-##     "main 3" : 100, "main 2" : 100, "main 5" : 100, "main 4" : 100,
-##     "main 7" : 100, "main 9" : 100, "main 8" : 100, "edge" : 100,
-##     "god" : 100, "marry2" : 100, "marry1" : 100, "hotback" : 100,
-##     "cuba1" : 100, "cuba2" : 100,}
-
-## subs["*cuba love"] = { "sidefill2" : 0, "sidefill1" : 0, "upfill4" : 0,
-##     "main 11" : 28, "main 10" : 28, "upfill1" : 0, "b34" : 9, "b25" : 100,
-##     "b24" : 59, "b23" : 59, "b22" : 100, "desk2" : 16, "desk1" : 0,
-##     "phone" : 0, "hotbox1" : 0, "upfill3" : 43, "upfill2" : 43, "main 3" : 28,
-##     "main 2" : 100, "main 5" : 16, "main 4" : 16, "main 7" : 0, "main 9" : 65,
-##     "main 8" : 74, "edge" : 0, "marry2" : 9, "marry1" : 0, "hotback" : 0,
-##     "cuba1" : 0, "cuba2" : 0,}
-## subs["*ext mission night"] = { "sidefill2" : 39, "sidefill1" : 23,
-##     "cycright" : 20, "main 11" : 29, "main 10" : 29, "upfill1" : 8,
-##     "b34" : 39, "b25" : 39, "side l" : 39, "b23" : 39, "b22" : 19,
-##     "b32" : 31, "upfill4" : 8, "b24" : 39, "side r" : 39, "desk2" : 18,
-##     "main 2" : 39, "main 5" : 39, "main 9" : 39, "main 8" : 39, "god" : 100,
-##     "marry2" : 39,}
-## subs["*ext mission night"] = { "sidefill2" : 39, "sidefill1" : 23,
-##     "cycright" : 20, "main 11" : 29, "main 10" : 29, "upfill1" : 8,
-##     "b34" : 39, "b25" : 39, "side l" : 39, "b23" : 39, "b22" : 19,
-##     "b32" : 31, "upfill4" : 8, "b24" : 39, "side r" : 39, "desk2" : 18,
-##     "main 2" : 39, "main 5" : 39, "main 9" : 39, "main 8" : 39, "god" : 100,
-##     "marry2" : 39,}
-## subs["*ext mission night"] = { "cycright" : 6, "main 11" : 15,
-##     "main 10" : 15, "upfill1" : 0, "b25" : 25, "side l" : 39, "b23" : 25,
-##     "b22" : 5, "desk2" : 4, "upfill4" : 0, "side r" : 39, "upfill3" : 0,
-##     "upfill2" : 0, "patio1" : 0, "god" : 86, "edge" : 0, "b13" : 0,
-##     "sidepost2" : 0, "marry2" : 25, "marry1" : 0, "cuba1" : 5, "cuba2" : 0,
-##     "sidepost1" : 0, "sidefill2" : 25, "sidefill1" : 9, "b24" : 25,
-##     "b34" : 25, "cycleft" : 0, "b32" : 17, "desk1" : 0, "hotbox2" : 25,
-##     "hotbox1" : 0, "main 3" : 0, "main 2" : 25, "main 5" : 25, "main 4" : 25,
-##     "main 7" : 25, "phone" : 0, "main 9" : 25, "main 8" : 25, "patio2" : 0,
-##     "hotback" : 0, "rock" : 17,}
-## subs["*ext mission night"] = { "b32" : 27, "sidefill2" : 34, "sidefill1" : 20,
-##     "cycright" : 18, "main 11" : 34, "main 10" : 34, "upfill1" : 8,
-##     "b34" : 34, "b25" : 34, "side l" : 34, "b23" : 34, "b22" : 16,
-##     "desk2" : 26, "hotbox2" : 34, "upfill4" : 8, "b24" : 34, "side r" : 34,
-##     "main 2" : 34, "main 5" : 34, "main 4" : 25, "main 7" : 34, "main 9" : 34,
-##     "main 8" : 34, "rock" : 20, "god" : 100, "marry2" : 34, "cuba1" : 5,}
-
-## subs["*sewer"] = { "sidefill2" : 33, "sidefill1" : 33, "upfill4" : 10,
-##     "upfill3" : 22, "main 10" : 48, "upfill1" : 14, "b25" : 16, "b24" : 19,
-##     "b23" : 64, "b22" : 50, "hotbox1" : 0, "main 11" : 40, "upfill2" : 61,
-##     "main 2" : 54, "main 5" : 20, "main 4" : 45, "main 7" : 0, "main 9" : 84,
-##     "main 8" : 45, "hotback" : 40, "sidepost1" : 31, "sidepost2" : 31,
-##     "marry2" : 0, "marry1" : 0, "cuba1" : 59,}
-
-## subs["*marry"] = { "sidefill2" : 0, "sidefill1" : 0, "cycright" : 100,
-##     "main 11" : 55, "main 10" : 55, "upfill1" : 48, "b34" : 30, "patio1" : 0,
-##     "b25" : 0, "side l" : 30, "b23" : 100, "b22" : 14, "b32" : 23,
-##     "hotbox2" : 43, "hotbox1" : 49, "upfill4" : 48, "b24" : 100,
-##     "desk2" : 23, "patio2" : 0, "main 3" : 0, "main 2" : 30, "main 5" : 0,
-##     "main 4" : 0, "main 7" : 30, "phone" : 0, "main 9" : 30, "main 8" : 0,
-##     "rock" : 17, "edge" : 0, "sidepost1" : 0, "sidepost2" : 0, "god" : 100,
-##     "marry2" : 34, "marry1" : 69, "cuba1" : 0, "cuba2" : 0, "side r" : 30,}
-
-## subs['*1-01-0']=subs['*broadway open'].copy()
-## subs['*1-02-0']=subs['*int mission'].copy()
-## subs['*1-03-0']=subs['*phone booth'].copy()
-
-## subs['*1-04-00-dance']=subs['*hotbox dance'].copy()
-## subs['*1-04-10-after dance']=subs['*hotbox dance'].copy()
-## subs['*1-04-20-table']=subs['*hotbox table'].copy()
-## subs['*1-04-30-small table']=subs['*hotbox small table'].copy()
-
-## subs['*1-05-0']=subs['*broadway open'].copy()
-## subs['*1-06-0']=subs['*ext mission'].copy()
-## subs['*1-07-0']=subs['*broadway night 1-7'].copy()
-
-
-## subs['*1-08-00-left cafe']={ "main 3" : 100, "edge" : 100,}
-## subs['*1-08-10-right cafe']= fulls(('cuba1','cuba2'))
-## subs['*1-08-20-backdrop']=fulls(('upfill1','upfill2','upfill3','upfill4'))
-
-## subs['*1-09-0']=subs['*cuba love'].copy()
-## subs['*1-10-0']=subs['*ext mission night'].copy()
-
-## subs['*2-01-0-dance']=subs['*hotbox dance'].copy()
-## subs['*2-01-1-after dance']=subs['*hotbox dance'].copy()
-## subs['*2-01-2-table']=subs['*hotbox table'].copy()
-## subs['*2-01-3-small table']=subs['*hotbox small table'].copy()
-
-## subs["*2-02-0"] = { "sidefill2" : 0, "sidefill1" : 0, "cycright" : 18,
-##     "main 11" : 5, "main 10" : 5, "upfill1" : 70, "b34" : 34, "b25" : 71,
-##     "side l" : 34, "b23" : 67, "b22" : 50, "b32" : 57, "desk1" : 0,
-##     "hotbox2" : 59, "upfill4" : 70, "b24" : 67, "desk2" : 26, "main 3" : 0,
-##     "main 2" : 5, "main 5" : 56, "main 4" : 0, "main 7" : 5, "main 9" : 5,
-##     "main 8" : 5, "rock" : 20, "edge" : 0, "sidepost1" : 0, "sidepost2" : 0,
-##     "god" : 100, "marry2" : 50, "cuba1" : 0, "side r" : 34,}
-
-## subs['*2-03-00-open dance']=subs['*sewer'].copy()
-## subs['*2-03-10-dialogue']=subs['*sewer'].copy()
-## subs['*2-03-20-luck']=subs['*sewer'].copy()
-
-## subs['*2-04-0']=subs['*2-02-0'].copy() # sue me
-## subs['*2-05-0']=subs['*int mission'].copy()
-## subs['*2-06-0']=subs['*marry'].copy()
-## subs['*2-07-0']=subs['*broadway open'].copy()
-## subs["*curtain"] = { "god" : 100, "house" : 81,}
-## subs["*curtain"] = { "sidefill2" : 76, "sidefill1" : 76, "upfill4" : 39,
-##     "main 11" : 76, "main 10" : 76, "upfill1" : 39, "house" : 81,
-##     "desk1" : 76, "desk2" : 76, "phone" : 76, "hotbox1" : 39, "upfill3" : 39,
-##     "upfill2" : 39, "main 3" : 76, "main 5" : 100, "main 4" : 76,
-##     "hotbox2" : 39, "god" : 100, "edge" : 76, "marry2" : 76, "marry1" : 76,
-##     "hotback" : 76, "cuba1" : 76, "cuba2" : 76,}
-## subs["*1-01-9 end conversations"] = { "sidefill2" : 63, "sidefill1" : 26,
-##     "upfill4" : 4, "upfill3" : 43, "upfill2" : 63, "upfill1" : 4,
-##     "b34" : 63, "b25" : 63, "side l" : 63, "b23" : 12, "b22" : 63,
-##     "desk2" : 12, "phone" : 50, "hotbox1" : 63, "b24" : 42, "side r" : 63,
-##     "main 11" : 63, "main 10" : 63, "main 3" : 26, "main 2" : 63,
-##     "main 5" : 63, "main 4" : 63, "main 7" : 63, "hotbox2" : 63,
-##     "main 9" : 63, "main 8" : 63, "edge" : 13, "god" : 100, "marry2" : 63,
-##     "marry1" : 63, "cuba1" : 63, "cuba2" : 42,}
-## subs["*1-02-1 desk solo"] = { "sidefill2" : 51, "cycright" : 66,
-##     "upfill3" : 37, "upfill2" : 66, "rock" : 52, "b24" : 100, "b23" : 100,
-##     "desk1" : 53, "desk2" : 100, "b22" : 100, "hotbox2" : 85, "hotbox1" : 25,
-##     "b32" : 62, "blue1" : 33, "main 11" : 100, "blue3" : 33, "blue2" : 33,
-##     "blue4" : 33, "main 10" : 100, "main 3" : 57, "main 5" : 70,
-##     "main 4" : 100, "main 7" : 100, "main 9" : 100, "main 8" : 100,
-##     "god" : 100, "marry2" : 100, "marry1" : 61, "cuba2" : 78,}
-## subs["*1-02-1 desk solo"] = { "sidefill2" : 51, "cycright" : 37,
-##     "upfill3" : 0, "upfill2" : 0, "cycleft" : 0, "b24" : 22, "b23" : 100,
-##     "desk1" : 53, "desk2" : 89, "b22" : 100, "hotbox2" : 7, "hotbox1" : 25,
-##     "b32" : 0, "blue1" : 33, "main 11" : 22, "blue3" : 33, "blue2" : 33,
-##     "blue4" : 33, "main 10" : 22, "main 3" : 57, "main 5" : 0, "main 4" : 22,
-##     "main 7" : 100, "main 9" : 22, "god" : 100, "rock" : 14, "main 8" : 22,
-##     "marry2" : 22, "marry1" : 61, "cuba2" : 0,}
-## subs["*1-04-01 dark tables"] = { "red3" : 100, "red2" : 100, "red1" : 100,
-##     "upfill4" : 26, "upfill3" : 32, "upfill2" : 46, "upfill1" : 26,
-##     "red4" : 100, "b34" : 30, "cycleft" : 19, "desk2" : 24, "hotbox2" : 78,
-##     "hotbox1" : 42, "cycright" : 19, "b32" : 43, "blue1" : 33, "main 11" : 46,
-##     "blue3" : 33, "blue2" : 33, "blue4" : 33, "main 10" : 100, "main 3" : 46,
-##     "main 2" : 46, "main 5" : 100, "main 4" : 46, "main 7" : 100,
-##     "main 9" : 46, "main 8" : 46, "hotback" : 100, "god" : 100,}
-## subs["*1-04-01 dark tables"] = { "red3" : 100, "red2" : 100, "red1" : 100,
-##     "upfill4" : 26, "upfill3" : 32, "upfill2" : 46, "upfill1" : 26,
-##     "red4" : 100, "b34" : 12, "cycleft" : 19, "b23" : 67, "desk2" : 24,
-##     "hotbox2" : 45, "hotbox1" : 46, "cycright" : 19, "b24" : 67,
-##     "b32" : 2, "blue1" : 33, "main 11" : 46, "blue3" : 33, "blue2" : 33,
-##     "blue4" : 33, "main 10" : 100, "main 3" : 13, "main 2" : 46,
-##     "main 5" : 100, "main 4" : 100, "main 7" : 100, "main 9" : 100,
-##     "main 8" : 29, "edge" : 9, "god" : 100, "hotback" : 100, "cuba2" : 0,}
-## subs["*1-04-01 dark tables"] = { "red3" : 100, "red2" : 100, "red1" : 100,
-##     "upfill4" : 26, "upfill3" : 32, "upfill2" : 46, "upfill1" : 26,
-##     "red4" : 100, "b34" : 12, "cycleft" : 19, "b23" : 67, "desk2" : 24,
-##     "hotbox2" : 45, "hotbox1" : 46, "cycright" : 19, "b24" : 67,
-##     "b32" : 2, "blue1" : 33, "main 11" : 46, "blue3" : 33, "blue2" : 33,
-##     "blue4" : 33, "main 10" : 100, "main 3" : 13, "main 2" : 46,
-##     "main 5" : 0, "main 4" : 100, "main 7" : 100, "main 9" : 100,
-##     "main 8" : 29, "edge" : 9, "god" : 100, "hotback" : 100, "cuba2" : 0,}
-## subs["*1-04-01 dark tables"] = { "red3" : 100, "red2" : 100, "red1" : 100,
-##     "upfill4" : 26, "upfill3" : 0, "upfill2" : 0, "upfill1" : 26,
-##     "red4" : 100, "b34" : 12, "cycleft" : 19, "b23" : 67, "desk2" : 24,
-##     "hotbox2" : 45, "hotbox1" : 46, "cycright" : 19, "b24" : 67,
-##     "b32" : 2, "blue1" : 33, "main 11" : 46, "blue3" : 33, "blue2" : 33,
-##     "blue4" : 33, "main 10" : 100, "main 3" : 13, "main 2" : 46,
-##     "main 5" : 0, "main 4" : 100, "main 7" : 100, "main 9" : 100,
-##     "main 8" : 29, "edge" : 9, "god" : 100, "hotback" : 100, "cuba2" : 0,}
-## subs["*1-05-0"] = { "sidefill2" : 100, "sidefill1" : 100, "cycright" : 39,
-##     "upfill3" : 40, "upfill2" : 40, "upfill1" : 0, "b34" : 34, "b25" : 100,
-##     "side l" : 100, "b23" : 100, "b22" : 100, "desk2" : 31, "desk1" : 19,
-##     "phone" : 0, "hotbox1" : 0, "upfill4" : 0, "b24" : 100, "side r" : 82,
-##     "main 11" : 89, "main 10" : 100, "main 3" : 85, "main 2" : 100,
-##     "main 5" : 100, "main 4" : 100, "main 7" : 100, "hotbox2" : 38,
-##     "main 9" : 100, "main 8" : 100, "cycleft" : 27, "edge" : 48,
-##     "b13" : 100, "god" : 100, "marry2" : 0, "marry1" : 0,}
-## subs["*1-05-0"] = { "sidefill2" : 100, "sidefill1" : 100, "cycright" : 36,
-##     "upfill3" : 37, "upfill2" : 37, "upfill1" : 0, "b34" : 13, "b25" : 100,
-##     "side l" : 100, "b23" : 100, "b22" : 100, "desk2" : 31, "desk1" : 19,
-##     "phone" : 0, "hotbox1" : 0, "upfill4" : 0, "b24" : 100, "side r" : 82,
-##     "main 11" : 89, "main 10" : 100, "main 3" : 85, "main 2" : 100,
-##     "main 5" : 100, "main 4" : 100, "main 7" : 100, "hotbox2" : 17,
-##     "main 9" : 100, "main 8" : 100, "cycleft" : 18, "edge" : 37,
-##     "b13" : 100, "god" : 100, "marry2" : 0, "marry1" : 0,}
-## subs["*1-07-0"] = { "sidefill2" : 37, "sidefill1" : 37, "b24" : 100,
-##     "upfill3" : 11, "upfill2" : 23, "b34" : 28, "b25" : 64, "side l" : 49,
-##     "b23" : 100, "b22" : 82, "desk2" : 0, "desk1" : 0, "hotbox2" : 11,
-##     "hotbox1" : 0, "side r" : 36, "blue1" : 93, "main 11" : 37, "blue3" : 93,
-##     "blue2" : 93, "blue4" : 93, "main 10" : 37, "main 3" : 25, "main 2" : 37,
-##     "main 5" : 37, "main 4" : 37, "main 7" : 37, "main 9" : 37, "main 8" : 37,
-##     "edge" : 12, "god" : 100, "marry2" : 0, "marry1" : 37,}
-## subs["*1-08-10-right cafe"] = { "main 9" : 0, "cuba2" : 100, "b34" : 54,
-##     "main 8" : 0, "cuba1" : 100, "b32" : 43,}
-## subs["*1-08-30-full"] = { "b32" : 43, "sidefill2" : 38, "sidefill1" : 38,
-##     "cycright" : 15, "upfill3" : 100, "upfill2" : 100, "upfill1" : 100,
-##     "side l" : 38, "b25" : 100, "cycleft" : 15, "b23" : 100, "b22" : 100,
-##     "desk2" : 30, "phone" : 31, "hotbox1" : 38, "upfill4" : 100,
-##     "b24" : 100, "side r" : 38, "main 11" : 38, "main 10" : 38, "main 3" : 38,
-##     "main 2" : 38, "main 5" : 38, "main 4" : 38, "main 7" : 38, "hotbox2" : 38,
-##     "main 9" : 38, "main 8" : 38, "b34" : 54, "edge" : 31, "god" : 100,
-##     "marry2" : 38, "marry1" : 38, "cuba1" : 100, "cuba2" : 100,}
-## subs["*1-09-0"] = { "red3" : 64, "red2" : 64, "red1" : 64, "upfill3" : 43,
-##     "upfill2" : 43, "red4" : 64, "b34" : 9, "b25" : 100, "b24" : 59,
-##     "b23" : 59, "b22" : 100, "desk2" : 16, "blue1" : 53, "main 11" : 28,
-##     "blue3" : 53, "blue2" : 53, "blue4" : 53, "main 10" : 28, "main 3" : 28,
-##     "main 2" : 100, "main 5" : 16, "main 4" : 16, "main 9" : 65,
-##     "main 8" : 74, "god" : 100, "marry2" : 9,}
-## subs["*1-10-0"] = { "b32" : 27, "sidefill2" : 34, "sidefill1" : 20,
-##     "cycright" : 18, "main 11" : 34, "main 10" : 34, "upfill1" : 9,
-##     "b34" : 34, "b25" : 34, "side l" : 34, "b23" : 34, "b22" : 16,
-##     "desk2" : 26, "hotbox2" : 34, "upfill4" : 9, "b24" : 34, "side r" : 34,
-##     "blue1" : 70, "blue3" : 70, "blue2" : 70, "blue4" : 70, "main 2" : 34,
-##     "main 5" : 34, "main 4" : 25, "main 7" : 34, "main 9" : 34, "main 8" : 34,
-##     "rock" : 20, "god" : 100, "marry2" : 34, "cuba1" : 5,}
-## subs["*curtain"] = { "sidefill2" : 73, "sidefill1" : 73, "cycright" : 30,
-##     "upfill3" : 50, "upfill2" : 73, "upfill1" : 41, "side l" : 73,
-##     "house" : 73, "b25" : 73, "cycleft" : 30, "b22" : 73, "desk2" : 57,
-##     "phone" : 58, "hotbox1" : 73, "upfill4" : 41, "b24" : 73, "side r" : 73,
-##     "main 11" : 73, "main 10" : 73, "main 3" : 73, "main 2" : 73,
-##     "main 5" : 73, "main 4" : 73, "main 7" : 73, "hotbox2" : 73,
-##     "main 9" : 73, "main 8" : 73, "b34" : 73, "edge" : 58, "god" : 100,
-##     "marry2" : 73, "marry1" : 73,}
-## subs["*curtain"] = { "sidefill2" : 73, "sidefill1" : 73, "cycright" : 30,
-##     "upfill3" : 50, "upfill2" : 73, "upfill1" : 41, "b34" : 73, "house" : 73,
-##     "b25" : 73, "side l" : 73, "b22" : 73, "desk2" : 57, "phone" : 58,
-##     "hotbox1" : 0, "upfill4" : 41, "b24" : 73, "side r" : 73, "main 11" : 73,
-##     "main 10" : 73, "main 3" : 73, "main 2" : 73, "main 5" : 73,
-##     "main 4" : 73, "main 7" : 73, "hotbox2" : 73, "main 9" : 73,
-##     "main 8" : 73, "cycleft" : 30, "edge" : 58, "god" : 100, "marry2" : 73,
-##     "marry1" : 73,}
-## subs["*2-01-01-solo"] = { "red3" : 100, "red2" : 100, "red1" : 100,
-##     "upfill4" : 67, "main 11" : 46, "upfill2" : 1, "upfill1" : 67,
-##     "red4" : 100, "b34" : 30, "cycleft" : 55, "desk2" : 24, "hotbox2" : 78,
-##     "hotbox1" : 42, "cycright" : 55, "b32" : 43, "main 10" : 100,
-##     "main 3" : 46, "main 2" : 46, "main 5" : 100, "main 4" : 46,
-##     "main 7" : 100, "main 9" : 46, "main 8" : 46, "hotback" : 100,
-##     "god" : 100,}
-## subs["*2-01-01-solo"] = { "red3" : 100, "red2" : 100, "red1" : 100,
-##     "upfill4" : 67, "main 11" : 0, "upfill2" : 1, "upfill1" : 67,
-##     "red4" : 100, "b34" : 0, "cycleft" : 55, "desk2" : 24, "hotbox2" : 78,
-##     "hotbox1" : 42, "cycright" : 55, "b32" : 43, "main 10" : 0, "main 3" : 0,
-##     "main 2" : 0, "main 5" : 0, "main 4" : 0, "main 7" : 100, "phone" : 0,
-##     "main 9" : 0, "main 8" : 0, "hotback" : 100, "god" : 100, "cuba1" : 0,
-##     "cuba2" : 0,}
-## subs["*2-01-01-solo"] = { "red3" : 100, "red2" : 100, "red1" : 100,
-##     "upfill4" : 67, "main 11" : 0, "upfill2" : 1, "upfill1" : 67,
-##     "red4" : 100, "b34" : 0, "cycleft" : 55, "b23" : 100, "desk2" : 24,
-##     "hotbox2" : 78, "hotbox1" : 42, "cycright" : 55, "b24" : 100,
-##     "b32" : 43, "main 10" : 0, "main 3" : 0, "main 2" : 0, "main 5" : 0,
-##     "main 4" : 0, "main 7" : 100, "phone" : 0, "main 9" : 0, "main 8" : 0,
-##     "hotback" : 100, "god" : 100, "cuba1" : 0, "cuba2" : 0,}
-## subs["*2-02-0"] = { "sidefill2" : 0, "sidefill1" : 0, "cycright" : 0,
-##     "main 11" : 5, "main 10" : 68, "upfill1" : 0, "b34" : 0, "b25" : 0,
-##     "side l" : 34, "b23" : 0, "b22" : 0, "b32" : 0, "desk1" : 0,
-##     "hotbox2" : 0, "upfill4" : 0, "b24" : 0, "desk2" : 0, "main 3" : 0,
-##     "main 2" : 5, "main 5" : 18, "main 4" : 60, "main 7" : 42, "main 9" : 68,
-##     "main 8" : 50, "rock" : 0, "edge" : 0, "sidepost1" : 0, "sidepost2" : 0,
-##     "god" : 100, "marry2" : 65, "cuba1" : 0, "side r" : 34,}
-## subs["*2-02-0"] = { "sidefill2" : 0, "sidefill1" : 0, "cycright" : 0,
-##     "main 11" : 5, "main 10" : 68, "upfill1" : 0, "b34" : 0, "b25" : 0,
-##     "side l" : 34, "b23" : 0, "b22" : 0, "b32" : 0, "desk1" : 0,
-##     "hotbox2" : 0, "upfill4" : 0, "b24" : 0, "desk2" : 0, "main 3" : 0,
-##     "main 2" : 5, "main 5" : 18, "main 4" : 60, "main 7" : 42, "main 9" : 68,
-##     "main 8" : 50, "rock" : 0, "edge" : 0, "sidepost1" : 0, "sidepost2" : 0,
-##     "god" : 100, "marry2" : 65, "hotback" : 0, "cuba1" : 0, "side r" : 34,}
-## subs["*2-03-00-open dance"] = { "sidefill2" : 33, "sidefill1" : 33,
-##     "upfill4" : 10, "upfill3" : 22, "main 10" : 61, "upfill1" : 14,
-##     "b25" : 16, "b24" : 19, "b23" : 28, "b22" : 50, "hotbox1" : 0,
-##     "main 11" : 28, "upfill2" : 61, "main 2" : 54, "main 5" : 20,
-##     "main 4" : 45, "main 7" : 0, "main 9" : 42, "main 8" : 34, "hotback" : 40,
-##     "sidepost1" : 31, "sidepost2" : 31, "marry2" : 0, "marry1" : 0,
-##     "cuba1" : 59,}
-## subs["*2-03-10-dialogue"] = { "sidefill2" : 34, "sidefill1" : 57,
-##     "upfill4" : 10, "upfill3" : 22, "main 10" : 48, "upfill1" : 14,
-##     "b25" : 16, "b24" : 19, "b23" : 64, "b22" : 62, "hotbox1" : 0,
-##     "main 11" : 40, "upfill2" : 61, "main 2" : 54, "main 5" : 20,
-##     "main 4" : 45, "main 7" : 0, "main 9" : 73, "main 8" : 22, "hotback" : 40,
-##     "sidepost1" : 31, "sidepost2" : 31, "marry2" : 0, "marry1" : 0,
-##     "cuba1" : 59, "b13" : 60,}
-## subs["*2-04-0"] = { "sidefill2" : 0, "sidefill1" : 0, "cycright" : 18,
-##     "main 11" : 5, "main 10" : 5, "upfill1" : 70, "b34" : 34, "b25" : 71,
-##     "side l" : 34, "b23" : 67, "b22" : 50, "b32" : 57, "desk1" : 0,
-##     "hotbox2" : 59, "upfill4" : 70, "b24" : 67, "desk2" : 26, "main 3" : 30,
-##     "main 2" : 5, "main 5" : 56, "main 4" : 0, "main 7" : 5, "main 9" : 5,
-##     "main 8" : 5, "god" : 100, "edge" : 0, "side r" : 34, "b13" : 43,
-##     "sidepost2" : 0, "rock" : 20, "marry2" : 50, "cuba1" : 0, "sidepost1" : 0,}
-## subs["*2-04-0"] = { "sidefill2" : 0, "sidefill1" : 0, "cycright" : 18,
-##     "main 11" : 5, "main 10" : 5, "upfill1" : 70, "b34" : 34, "b25" : 71,
-##     "side l" : 34, "b23" : 67, "b22" : 50, "b32" : 57, "desk1" : 24,
-##     "hotbox2" : 59, "upfill4" : 70, "b24" : 67, "desk2" : 26, "main 3" : 45,
-##     "main 2" : 5, "main 5" : 56, "main 4" : 0, "main 7" : 5, "main 9" : 5,
-##     "main 8" : 5, "god" : 100, "edge" : 0, "side r" : 34, "b13" : 39,
-##     "sidepost2" : 0, "rock" : 20, "marry2" : 50, "cuba1" : 0, "sidepost1" : 0,}
-## subs["*2-05-0"] = { "sidefill2" : 51, "sidefill1" : 0, "upfill4" : 0,
-##     "main 11" : 100, "main 10" : 55, "b34" : 0, "b25" : 0, "b24" : 68,
-##     "b23" : 68, "desk1" : 3, "desk2" : 92, "b22" : 68, "hotbox2" : 61,
-##     "hotbox1" : 0, "cycright" : 66, "b32" : 36, "upfill3" : 37, "upfill2" : 66,
-##     "main 3" : 45, "main 2" : 0, "main 5" : 70, "main 4" : 50, "main 7" : 55,
-##     "main 9" : 55, "main 8" : 55, "rock" : 26, "marry2" : 64, "marry1" : 11,
-##     "cuba1" : 0, "cuba2" : 52,}
-## subs["*2-05-1-dream"] = { "sidefill2" : 51, "cycright" : 66, "main 11" : 100,
-##     "upfill2" : 66, "god" : 100, "b24" : 68, "b23" : 68, "desk1" : 3,
-##     "b32" : 36, "b22" : 68, "hotbox2" : 61, "desk2" : 92, "upfill3" : 37,
-##     "main 10" : 55, "main 3" : 45, "main 5" : 70, "main 4" : 50,
-##     "main 7" : 55, "main 9" : 55, "main 8" : 55, "rock" : 26, "marry2" : 64,
-##     "marry1" : 11, "cuba2" : 52,}
-## subs["*2-05-1-dream"] = { "sidefill2" : 51, "cycright" : 0, "main 11" : 7,
-##     "upfill2" : 0, "upfill1" : 0, "b34" : 0, "cycleft" : 0, "b24" : 0,
-##     "b23" : 0, "desk1" : 0, "desk2" : 92, "b22" : 0, "hotbox2" : 0,
-##     "hotbox1" : 0, "upfill4" : 0, "b32" : 0, "upfill3" : 0, "main 10" : 0,
-##     "main 3" : 0, "main 2" : 0, "main 5" : 0, "main 4" : 0, "main 7" : 0,
-##     "phone" : 0, "main 9" : 0, "god" : 100, "rock" : 90, "edge" : 0,
-##     "b13" : 0, "main 8" : 0, "marry2" : 0, "marry1" : 0, "cuba2" : 0,}
-## subs["*2-05-2-boat"] = { "sidefill2" : 43, "cycright" : 55, "main 11" : 84,
-##     "upfill2" : 55, "god" : 100, "b24" : 84, "b23" : 84, "desk1" : 44,
-##     "b32" : 52, "b22" : 84, "hotbox2" : 71, "hotbox1" : 21, "desk2" : 84,
-##     "upfill3" : 31, "main 10" : 84, "main 3" : 48, "main 5" : 59,
-##     "main 4" : 84, "main 7" : 84, "main 9" : 84, "main 8" : 84, "rock" : 43,
-##     "marry2" : 84, "marry1" : 51, "cuba2" : 65,}
-## subs["*2-05-2-boat"] = { "sidefill2" : 43, "cycright" : 55, "main 11" : 84,
-##     "upfill2" : 55, "rock" : 43, "b24" : 100, "b23" : 100, "desk1" : 44,
-##     "b32" : 52, "b22" : 100, "hotbox2" : 95, "hotbox1" : 21, "desk2" : 84,
-##     "upfill3" : 31, "main 10" : 84, "main 3" : 72, "main 5" : 83,
-##     "main 4" : 100, "main 7" : 100, "main 9" : 100, "main 8" : 100,
-##     "god" : 100, "marry2" : 100, "marry1" : 75, "cuba2" : 65,}
-## subs["*2-07-0"] = { "sidefill2" : 100, "sidefill1" : 83, "cycright" : 41,
-##     "upfill3" : 69, "upfill2" : 100, "upfill1" : 56, "b34" : 100,
-##     "b25" : 100, "side l" : 100, "b22" : 100, "desk2" : 78, "phone" : 62,
-##     "hotbox1" : 14, "upfill4" : 56, "b24" : 100, "side r" : 100,
-##     "main 11" : 100, "main 10" : 100, "main 3" : 83, "main 2" : 100,
-##     "main 5" : 100, "main 4" : 100, "main 7" : 100, "hotbox2" : 5,
-##     "main 9" : 100, "main 8" : 100, "god" : 100, "cycleft" : 41,
-##     "edge" : 63, "rock" : 0, "marry2" : 100, "marry1" : 100,}
-## subs["*2-07-0"] = { "sidefill2" : 100, "sidefill1" : 83, "cycright" : 41,
-##     "upfill3" : 69, "upfill2" : 100, "upfill1" : 56, "b34" : 100,
-##     "b25" : 100, "side l" : 100, "b23" : 100, "b22" : 100, "desk2" : 78,
-##     "phone" : 62, "hotbox1" : 14, "upfill4" : 56, "b24" : 100, "side r" : 100,
-##     "main 11" : 100, "main 10" : 100, "main 3" : 83, "main 2" : 100,
-##     "main 5" : 100, "main 4" : 100, "main 7" : 100, "hotbox2" : 5,
-##     "main 9" : 100, "main 8" : 100, "god" : 100, "cycleft" : 41,
-##     "edge" : 63, "rock" : 0, "marry2" : 100, "marry1" : 100,}
 
 ###################################
 
@@ -796,7 +360,7 @@
     "hotbox1" : 0, "upfill4" : 9, "b24" : 73, "side r" : 73, "main 11" : 73,
     "main 10" : 73, "main 3" : 73, "main 2" : 73, "main 5" : 73,
     "main 4" : 73, "main 7" : 73, "hotbox2" : 73, "main 9" : 73,
-    "main 8" : 73, "cycleft" : 0, "edge" : 58, "god" : 100, "marry2" : 73,
+    "main 8" : 73, "cycleft" : 0, "edge" : 58, "marry2" : 73,
     "marry1" : 73,}
 subs["*1-01-9 end conversations"] = { "sidefill2" : 63, "sidefill1" : 26,
     "upfill4" : 29, "upfill3" : 43, "upfill2" : 63, "upfill1" : 29,
@@ -1005,11 +569,63 @@
     "phone" : 0, "main 9" : 0, "main 8" : 0, "god" : 100, "edge" : 0,
     "b13" : 0, "rock" : 0, "marry2" : 0, "marry1" : 0, "dream" : 100,
     "cuba2" : 0,}
-subs["*2-07-0"] = { "sidefill2" : 100, "sidefill1" : 83, "cycright" : 41,
-    "upfill3" : 69, "upfill2" : 100, "upfill1" : 56, "b34" : 100,
-    "b25" : 100, "side l" : 100, "b23" : 100, "b22" : 100, "desk2" : 78,
-    "phone" : 62, "hotbox1" : 14, "upfill4" : 56, "b24" : 100, "side r" : 100,
-    "main 11" : 100, "main 10" : 100, "main 3" : 83, "main 2" : 100,
-    "main 5" : 100, "main 4" : 100, "main 7" : 100, "hotbox2" : 5,
-    "main 9" : 100, "main 8" : 100, "rock" : 0, "cycleft" : 41, "edge" : 63,
-    "god" : 100, "marry2" : 100, "marry1" : 100, "xmas" : 100,}
+subs["*1-04-02 solo ada"] = { "red3" : 100, "red2" : 100, "red1" : 100,
+    "upfill4" : 26, "main 11" : 2, "main 10" : 100, "upfill1" : 26,
+    "red4" : 100, "b34" : 12, "cycleft" : 19, "b23" : 62, "desk2" : 24,
+    "hotbox2" : 24, "hotbox1" : 32, "cycright" : 19, "b24" : 100,
+    "b32" : 2, "blue1" : 33, "blue3" : 33, "blue2" : 33, "blue4" : 33,
+    "main 3" : 0, "main 2" : 13, "main 4" : 100, "main 7" : 100,
+    "main 9" : 61, "main 8" : 0, "edge" : 9, "god" : 100, "hotback" : 100,}
+subs["*1-04-02 solo ada"] = { "red3" : 100, "red2" : 100, "red1" : 100,
+    "upfill4" : 26, "main 11" : 2, "main 10" : 11, "upfill1" : 26,
+    "red4" : 100, "b34" : 12, "cycleft" : 19, "b23" : 62, "desk2" : 24,
+    "hotbox2" : 24, "hotbox1" : 32, "cycright" : 19, "b24" : 100,
+    "b32" : 2, "blue1" : 33, "blue3" : 33, "blue2" : 33, "blue4" : 33,
+    "main 3" : 0, "main 2" : 13, "main 4" : 100, "main 7" : 100,
+    "main 9" : 61, "main 8" : 0, "edge" : 0, "god" : 100, "hotback" : 100,}
+subs["*1-10-0"] = { "sidefill2" : 23, "sidefill1" : 6, "cycright" : 0,
+    "main 11" : 34, "main 10" : 34, "upfill1" : 0, "red4" : 0, "b34" : 34,
+    "b25" : 34, "side l" : 23, "b23" : 20, "b22" : 44, "b32" : 27,
+    "desk1" : 17, "hotbox2" : 34, "hotbox1" : 0, "upfill4" : 0, "b24" : 34,
+    "desk2" : 11, "blue1" : 84, "blue3" : 0, "blue2" : 54, "blue4" : 0,
+    "main 3" : 25, "main 2" : 34, "main 5" : 34, "main 4" : 25, "main 7" : 34,
+    "main 9" : 34, "main 8" : 34, "rock" : 3, "cycleft" : 0, "b13" : 15,
+    "god" : 100, "marry2" : 0, "cuba1" : 5, "side r" : 14,}
+subs["*2-02-0"] = { "sidefill2" : 0, "sidefill1" : 0, "cycright" : 0,
+    "main 11" : 0, "main 10" : 53, "upfill1" : 0, "b34" : 0, "b25" : 0,
+    "side l" : 34, "b23" : 76, "b22" : 0, "b32" : 0, "desk1" : 0,
+    "hotbox2" : 0, "hotbox1" : 0, "upfill4" : 0, "b24" : 52, "desk2" : 0,
+    "main 3" : 0, "main 2" : 53, "main 5" : 18, "main 4" : 24, "main 7" : 42,
+    "main 9" : 60, "main 8" : 36, "rock" : 0, "edge" : 0, "sidepost1" : 0,
+    "sidepost2" : 0, "god" : 100, "marry2" : 38, "marry1" : 0, "hotback" : 0,
+    "cuba1" : 0, "side r" : 34,}
+subs["*2-02-0"] = { "sidefill2" : 0, "sidefill1" : 0, "cycright" : 0,
+    "main 11" : 0, "main 10" : 53, "upfill1" : 0, "b34" : 0, "b25" : 0,
+    "side l" : 34, "b23" : 76, "b22" : 0, "b32" : 0, "desk1" : 0,
+    "hotbox2" : 0, "hotbox1" : 0, "upfill4" : 0, "b24" : 52, "desk2" : 0,
+    "main 3" : 0, "main 2" : 53, "main 5" : 18, "main 4" : 24, "main 7" : 42,
+    "main 9" : 60, "main 8" : 36, "rock" : 0, "edge" : 0, "sidepost1" : 0,
+    "sidepost2" : 0, "god" : 100, "marry2" : 38, "marry1" : 0, "hotback" : 0,
+    "cuba1" : 0, "side r" : 34,}
+subs["*2-03-10-dialogue"] = { "sidefill2" : 34, "sidefill1" : 57,
+    "upfill4" : 10, "upfill3" : 22, "main 10" : 48, "upfill1" : 14,
+    "b25" : 16, "b24" : 19, "b23" : 64, "b22" : 62, "hotbox1" : 0,
+    "main 11" : 40, "upfill2" : 37, "main 2" : 54, "main 5" : 20,
+    "main 4" : 45, "main 7" : 0, "main 9" : 73, "main 8" : 22, "hotback" : 40,
+    "sidepost1" : 31, "sidepost2" : 31, "marry2" : 0, "marry1" : 0,
+    "cuba1" : 59, "b13" : 60,}
+subs["*2-04-0"] = { "sidefill2" : 0, "sidefill1" : 0, "cycright" : 18,
+    "main 11" : 5, "main 10" : 5, "upfill1" : 70, "b34" : 34, "b25" : 71,
+    "side l" : 34, "b23" : 67, "b22" : 50, "b32" : 57, "desk1" : 24,
+    "hotbox2" : 59, "upfill4" : 70, "b24" : 67, "desk2" : 26, "blue1" : 63,
+    "blue3" : 63, "blue2" : 63, "blue4" : 63, "main 3" : 45, "main 2" : 5,
+    "main 5" : 56, "main 4" : 0, "main 7" : 5, "main 9" : 5, "main 8" : 5,
+    "god" : 100, "edge" : 0, "side r" : 34, "sidepost1" : 0, "sidepost2" : 0,
+    "rock" : 20, "marry2" : 50, "cuba1" : 0, "b13" : 39,}
+subs["*1-02-1 desk solo"] = { "sidefill2" : 51, "cycright" : 37,
+    "upfill3" : 0, "upfill2" : 0, "rock" : 14, "cycleft" : 0, "b23" : 100,
+    "desk1" : 53, "desk2" : 89, "b22" : 100, "hotbox2" : 7, "hotbox1" : 25,
+    "b24" : 22, "b32" : 0, "blue1" : 0, "main 11" : 22, "blue3" : 0,
+    "blue2" : 0, "blue4" : 0, "main 10" : 22, "main 3" : 9, "main 5" : 0,
+    "main 4" : 22, "main 7" : 100, "main 9" : 22, "god" : 100, "main 8" : 22,
+    "marry2" : 22, "marry1" : 61, "cuba2" : 0,}
--- a/light8/Lightboard.py	Thu Jul 11 09:33:02 2002 +0000
+++ b/light8/Lightboard.py	Thu Jul 11 15:26:28 2002 +0000
@@ -4,6 +4,7 @@
 from time import sleep
 from signal import signal, SIGINT
 import sys, cPickle
+# import shelve
 
 import io
 from uihelpers import *
@@ -34,6 +35,8 @@
         self.oldlevels = [None] * 68 # never replace this; just clear it
         self.subediting = Subediting(currentoutputlevels=self.oldlevels)
 
+        # self.shelf = shelve.open('/tmp/light9.newprefs')
+        # self.windowpos = self.shelf.get('window', {})
         self.windowpos = 0
         self.get_data()
         self.buildinterface()
@@ -147,15 +150,11 @@
                 levels[ch-1] = max(levels[ch-1], fadelev)
 
         levels = [int(l) for l in levels]
-        lenlevels = len(levels)
-        changed = [] # list of changed levels
 
-        for lev,lab,oldlev,numlab,idx in zip(levels, self.channel_levels, 
+        for lev,lab,oldlev,numlab in zip(levels, self.channel_levels, 
                                          self.oldlevels, 
-                                         self.leveldisplay.number_labels,
-                                         xrange(1, lenlevels + 2)):
+                                         self.leveldisplay.number_labels):
             if lev != oldlev:
-                changed.extend((idx, lev))
                 lab.config(text="%d" % lev) # update labels in lev display
                 colorlabel(lab)             # recolor labels
                 if lev < oldlev:
@@ -165,12 +164,9 @@
             else:
                 numlab['bg'] = 'lightPink'
 
-        # replace the elements in oldlevels - don't make a new list 
-        # (Subediting is watching it)
-        self.oldlevels[:] = levels[:] 
+        self.oldlevels[:] = levels[:] # replace the elements in oldlevels - don't make a new list (Subediting is watching it)
             
-        # self.parportdmx.sendlevels(levels)
-        self.parportdmx.sendupdates(changed)
+        self.parportdmx.sendlevels(levels)
 
     def updatestagelevels(self):
         self.master.after(100, self.updatestagelevels)
--- a/light8/io.py	Thu Jul 11 09:33:02 2002 +0000
+++ b/light8/io.py	Thu Jul 11 15:26:28 2002 +0000
@@ -1,113 +1,15 @@
 from parport import *
-import socket, os
-
-lastlevels = {}
-
-def gethostlist(host):
-    return lastlevels[host]
-
-def parselist(levels):
-    newlist = [0] * 68
-    # levels has at least one pair
-    ch, lev = None, None
-    while len(levels) >= 2:
-        ch, lev = levels.pop(0), levels.pop(0)
-
-        # off by one errors -- i hate them sooo much
-        newlist[int(ch) - 1] = int(lev)
-    return newlist
-
-def sethostlist(host, changes):
-    if not changes: return
-    global lastlevels
-    if host not in lastlevels:
-        lastlevels[host] = [0] * 68
 
-    lastlevels[host] = parselist(changes)
-    '''
-    # changes has at least one pair
-    ch, lev = None, None
-    while len(changes) >= 2:
-        ch, lev = changes.pop(0), changes.pop(0)
-
-        # off by one errors -- i hate them sooo much
-        lastlevels[host][ch - 1] = lev 
-    '''
-
-
-def sendlevels(levels):
-    print "sendlevels: i'm a level hobo:", levels
-    levels = levels + [0]
-    # if levels[14] > 0: levels[14] = 100 # non-dim
-    print "sendlevels: wait for it... length =", len(levels)
-    outstart()
-    for p in range(1, 68 + 2):
-        outbyte(levels[p-1]*255 / 100)
-    print "sendlevels: done"
-
-class ParportDMX: # ethdmx client or standalone server
-    def __init__(self, dummy=1, dimmers=68, machine_name='localhost', 
-                 standalone=0):
+class ParportDMX:
+    def __init__(self, dummy=1, dimmers=68):
         self.dimmers = dimmers
         self.dummy = dummy
         if not dummy:
             getparport()
-
-        self.standalone = standalone
-        self.machine_name = machine_name
-
-    def sendupdates(self, levels):
-        if (not self.dummy) and levels:
-            print "update:", levels
-
-            if self.standalone:
-                print "standalone sendlevels", levels
-                sendlevels(parselist(levels))
-                return
-
-            pid = os.getpid()
-            s = ('%d ' % pid) + ' '.join([str(l) for l in levels]) + '\n'
-            # print "sending", s
-            self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
-            self.sock.connect((self.machine_name, 
-                socket.getservbyname('ethdmx', 'tcp')))
-            self.sock.send(s)
-
-            # response = self.sock.recv(100)
-            # print "response", response
-            # if response != 'ACK\n':
-                # raise "Didn't get ACK from DMX server"
-
-if __name__ == '__main__':
-    import SocketServer
-    getparport()
-            
-    class DMXHandler(SocketServer.StreamRequestHandler):
-        def handle(self):
-            global lastlevels
-            changed = self.rfile.readline(1000)
-            # self.wfile.write("ACK\n")
-            pairs = changed.split()
-            pid = pairs[0]
-            changes = pairs[1:]
-
-            # print 'pairs', pairs
-            sethostlist(pid, changes)
-
-            self.preplevels()
-        def preplevels(self):
-            global lastlevels
-            hosts = lastlevels.keys()
-            maxlevels = [0] * 68
-            for h in hosts:
-                maxlevels = [max(hostlev, maxlev) 
-                    for hostlev, maxlev in zip(maxlevels, gethostlist(h))]
-            print "dmxhandler sending levels:", maxlevels
-            sendlevels(maxlevels)
-
-    print "Running DMX over Ethernet socket server.  Everything is under " + \
-          "control."
-
-    server = SocketServer.TCPServer(('', 
-        socket.getservbyname('ethdmx', 'tcp')), DMXHandler)
-    server.serve_forever()
+    def sendlevels(self, levels):
+        if self.dummy: return
+        levels = list(levels) + [0]
+        # if levels[14] > 0: levels[14] = 100 # non-dim
+        outstart()
+        for p in range(1, self.dimmers + 2):
+            outbyte(levels[p-1]*255 / 100)