Glorious Hume Parser: v0.07 AModule "" [UnionD "Button" [] [Constr "Adjust" [],Constr "Select" [],Constr "Update" [],Constr "Mode" []],UnionD "SysMode" [] [Constr "TimeDisplay" [],Constr "TimeUpdate" [ConT "TUMode" []],Constr "AlarmDisplay" [],Constr "AlarmUpdate" [BoolT]],UnionD "TUMode" [] [Constr "USecond" [],Constr "UMinute" [],Constr "UHour" [],Constr "UDay" []],UnionD "Action" [] [Constr "ResetSec" [],Constr "IncrMin" [],Constr "IncrHr" [],Constr "IncrDay" [],Constr "IncrAlarmMin" [],Constr "IncrAlarmHr" []],UnionD "DisplayAction" [] [Constr "ToggleDisplay" [],Constr "ToggleDisplayUpd" [],Constr "ToggleTimeMode" [],Constr "ToggleAlarmUpd" [],Constr "ToggleAlarmMode" []],WireD "mode_control" [ConnectL "mode_control" "mode'" [],StreamL "stdin" [],ConnectL "mode_control" "s'" []] [StreamL "stdout" [],StreamL "stdout" [],ConnectL "mode_control" "mode" [],ConnectL "mode_control" "s" []],StreamD (True,"stdin","std_in",Nothing),StreamD (False,"stdout","std_out",Nothing),BoxD "mode_control" [(["mode"],ConT "SysMode" []),(["b"],ConT "Button" []),(["s"],TupleT 3 [TupleT 4 [WordT 8,WordT 8,WordT 7,WordT 3],BoolT,TupleT 2 [BoolT,BoolT]])] [(["act"],ConT "Action" []),(["dact"],ConT "DisplayAction" []),(["mode'"],ConT "SysMode" []),(["s'"],TupleT 3 [TupleT 4 [WordT 8,WordT 8,WordT 7,WordT 3],BoolT,TupleT 2 [BoolT,BoolT]])] [] (UnfairB [(TupleE 3 [IdE "TimeDisplay",IdE "Mode",IdE "s"],TupleE 4 [NoMatchE,IdE "ToggleDisplay",IdE "AlarmDisplay",IdE "s"]),(TupleE 3 [IdE "TimeDisplay",IdE "Update",IdE "s"],TupleE 4 [NoMatchE,IdE "ToggleDisplayUpd",ApE "TimeUpdate" [IdE "USecond"],IdE "s"]),(TupleE 3 [IdE "TimeDisplay",IdE "Adjust",IdE "s"],TupleE 4 [NoMatchE,IdE "ToggleTimeMode",IdE "TimeDisplay",ApE "toggleTD" [IdE "s"]]),(TupleE 3 [ApE "TimeUpdate" [IdE "u"],IdE "Adjust",IdE "s"],TupleE 4 [ApE "adjustStatus" [IdE "u"],NoMatchE,ApE "TimeUpdate" [IdE "u"],IdE "s"]),(TupleE 3 [ApE "TimeUpdate" [IdE "u"],IdE "Select",IdE "s"],TupleE 4 [NoMatchE,IdE "ToggleTimeMode",ApE "TimeUpdate" [ApE "nextTU" [IdE "u"]],IdE "s"]),(TupleE 3 [IdE "AlarmDisplay",IdE "Mode",IdE "s"],TupleE 4 [NoMatchE,IdE "ToggleDisplay",IdE "TimeDisplay",IdE "s"]),(TupleE 3 [IdE "AlarmDisplay",IdE "Update",IdE "s"],TupleE 4 [NoMatchE,IdE "ToggleDisplayUpd",ApE "AlarmUpdate" [IdE "False"],IdE "s"]),(TupleE 3 [IdE "AlarmDisplay",IdE "Adjust",IdE "s"],TupleE 4 [NoMatchE,IdE "ToggleAlarmMode",IdE "AlarmDisplay",ApE "nextAD" [IdE "s"]]),(TupleE 3 [ApE "AlarmUpdate" [IdE "u"],IdE "Adjust",IdE "s"],TupleE 4 [IfE (IdE "u") (IdE "IncrAlarmHr") (IdE "IncrAlarmMin"),NoMatchE,ApE "AlarmUpdate" [IdE "u"],IdE "s"]),(TupleE 3 [ApE "AlarmUpdate" [IdE "u"],IdE "Select",IdE "s"],TupleE 3 [NoMatchE,IdE "ToggleAlarmUpd",ApE "AlarmUpdate" [ApE "not" [IdE "u"]]]),(TupleE 3 [NoMatchE,WildE,NoMatchE],TupleE 4 [NoMatchE,NoMatchE,NoMatchE,NoMatchE])] Nothing []),FunD "adjustStatus" [IdE "USecond"] (IdE "ResetSec"),FunD "adjustStatus" [IdE "UMinute"] (IdE "IncrMin"),FunD "adjustStatus" [IdE "UHour"] (IdE "IncrHr"),FunD "adjustStatus" [IdE "UDay"] (IdE "IncrDay"),FunTypeD "nextAD" (FunT (TupleT 3 [TupleT 4 [WordT 8,WordT 8,WordT 7,WordT 3],BoolT,TupleT 2 [BoolT,BoolT]]) (TupleT 3 [TupleT 4 [WordT 8,WordT 8,WordT 7,WordT 3],BoolT,TupleT 2 [BoolT,BoolT]])),FunD "nextAD" [TupleE 3 [IdE "t",IdE "td",IdE "ad"]] (TupleE 3 [IdE "t",IdE "td",ApE "nextADM" [IdE "ad"]]),FunTypeD "nextADM" (FunT (TupleT 2 [BoolT,BoolT]) (TupleT 2 [BoolT,BoolT])),FunD "nextADM" [TupleE 2 [IdE "False",IdE "False"]] (TupleE 2 [IdE "True",IdE "False"]),FunD "nextADM" [TupleE 2 [IdE "True",IdE "False"]] (TupleE 2 [IdE "False",IdE "True"]),FunD "nextADM" [TupleE 2 [IdE "False",IdE "True"]] (TupleE 2 [IdE "True",IdE "True"]),FunD "nextADM" [TupleE 2 [IdE "True",IdE "True"]] (TupleE 2 [IdE "False",IdE "False"]),FunTypeD "toggleTD" (FunT (TupleT 3 [TupleT 4 [WordT 8,WordT 8,WordT 7,WordT 3],BoolT,TupleT 2 [BoolT,BoolT]]) (TupleT 3 [TupleT 4 [WordT 8,WordT 8,WordT 7,WordT 3],BoolT,TupleT 2 [BoolT,BoolT]])),FunD "toggleTD" [TupleE 3 [IdE "t",IdE "td",IdE "ad"]] (TupleE 3 [IdE "t",ApE "not" [IdE "td"],IdE "ad"]),FunTypeD "nextTU" (FunT (ConT "TUMode" []) (ConT "TUMode" [])),FunD "nextTU" [IdE "USecond"] (IdE "UMinute"),FunD "nextTU" [IdE "UMinute"] (IdE "UHour"),FunD "nextTU" [IdE "UHour"] (IdE "UDay"),FunD "nextTU" [IdE "UDay"] (IdE "USecond"),FunD "not" [IdE "True"] (IdE "False"),FunD "not" [IdE "False"] (IdE "True")]