(module SCon-struct (planet chongkai/sml) (#%module-begin (Program: (STRDECTopDec: (STRUCTUREStrDec: (StrBind: (StrId: SCon-struct) (SEALStrExp: (STRUCTStrExp: (SEQStrDec: (DECStrDec: (TYPEDec: (TypBind: (TyVarseq:) (TyCon: TyName-type) (CONTy: (Tyseq:) (LongTyCon: TyName.TyName-type))))) (SEQStrDec: (DECStrDec: (DATATYPEDec: (DatBind: (TyVarseq:) (TyCon: base-type) (ConBind: (VId: DEC) (ConBind: (VId: HEX)))))) (SEQStrDec: (DECStrDec: (DATATYPEDec: (DatBind: (TyVarseq:) (TyCon: SCon-type) (ConBind: (VId: INT) (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: base-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: string-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq: (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: TyName-type))) (LongTyCon: option-type))) (LongTyCon: ref-type)))))) (ConBind: (VId: WORD) (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: base-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: string-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq: (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: TyName-type))) (LongTyCon: option-type))) (LongTyCon: ref-type)))))) (ConBind: (VId: STRING) (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: string-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq: (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: TyName-type))) (LongTyCon: option-type))) (LongTyCon: ref-type))))) (ConBind: (VId: CHAR) (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: string-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq: (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: TyName-type))) (LongTyCon: option-type))) (LongTyCon: ref-type))))) (ConBind: (VId: REAL) (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: string-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq: (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: TyName-type))) (LongTyCon: option-type))) (LongTyCon: ref-type))))))))))))) (SEQStrDec: (DECStrDec: (VALDec: (TyVarseq:) (RECValBind: (PLAINValBind: (ATPat: (IDAtPat: (LongVId: toString))) (FNExp: (Match: (Mrule: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (CONPat: (LongVId: INT) (RECORDAtPat: (FIELDPatRow: (Lab: |1|) (ATPat: (IDAtPat: (LongVId: base))) (FIELDPatRow: (Lab: |2|) (ATPat: (IDAtPat: (LongVId: s))) (FIELDPatRow: (Lab: |3|) (ATPat: (WILDCARDAtPat:))))))))))))) (IFExp: (ATExp: (PARAtExp: (APPExp: (ATExp: (IDAtExp: (LongVId: =))) (RECORDAtExp: (ExpRow: (Lab: |1|) (ATExp: (IDAtExp: (LongVId: base))) (ExpRow: (Lab: |2|) (ATExp: (IDAtExp: (LongVId: DEC))))))))) (ATExp: (IDAtExp: (LongVId: s))) (ATExp: (PARAtExp: (APPExp: (ATExp: (IDAtExp: (LongVId: ^))) (RECORDAtExp: (ExpRow: (Lab: |1|) (ATExp: (SCONAtExp: (STRINGSCon: "0x"))) (ExpRow: (Lab: |2|) (ATExp: (IDAtExp: (LongVId: s))))))))))) (Match: (Mrule: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (CONPat: (LongVId: WORD) (RECORDAtPat: (FIELDPatRow: (Lab: |1|) (ATPat: (IDAtPat: (LongVId: base))) (FIELDPatRow: (Lab: |2|) (ATPat: (IDAtPat: (LongVId: s))) (FIELDPatRow: (Lab: |3|) (ATPat: (WILDCARDAtPat:))))))))))))) (ATExp: (PARAtExp: (APPExp: (ATExp: (IDAtExp: (LongVId: ^))) (RECORDAtExp: (ExpRow: (Lab: |1|) (ATExp: (PARAtExp: (IFExp: (ATExp: (PARAtExp: (APPExp: (ATExp: (IDAtExp: (LongVId: =))) (RECORDAtExp: (ExpRow: (Lab: |1|) (ATExp: (IDAtExp: (LongVId: base))) (ExpRow: (Lab: |2|) (ATExp: (IDAtExp: (LongVId: DEC))))))))) (ATExp: (SCONAtExp: (STRINGSCon: "0w"))) (ATExp: (SCONAtExp: (STRINGSCon: "0wx")))))) (ExpRow: (Lab: |2|) (ATExp: (IDAtExp: (LongVId: s)))))))))) (Match: (Mrule: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (CONPat: (LongVId: STRING) (RECORDAtPat: (FIELDPatRow: (Lab: |1|) (ATPat: (IDAtPat: (LongVId: s))) (FIELDPatRow: (Lab: |2|) (ATPat: (WILDCARDAtPat:)))))))))))) (ATExp: (PARAtExp: (APPExp: (ATExp: (IDAtExp: (LongVId: ^))) (RECORDAtExp: (ExpRow: (Lab: |1|) (ATExp: (PARAtExp: (APPExp: (ATExp: (IDAtExp: (LongVId: ^))) (RECORDAtExp: (ExpRow: (Lab: |1|) (ATExp: (SCONAtExp: (STRINGSCon: "\""))) (ExpRow: (Lab: |2|) (ATExp: (IDAtExp: (LongVId: s))))))))) (ExpRow: (Lab: |2|) (ATExp: (SCONAtExp: (STRINGSCon: "\"")))))))))) (Match: (Mrule: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (CONPat: (LongVId: CHAR) (RECORDAtPat: (FIELDPatRow: (Lab: |1|) (ATPat: (IDAtPat: (LongVId: s))) (FIELDPatRow: (Lab: |2|) (ATPat: (WILDCARDAtPat:)))))))))))) (ATExp: (PARAtExp: (APPExp: (ATExp: (IDAtExp: (LongVId: ^))) (RECORDAtExp: (ExpRow: (Lab: |1|) (ATExp: (PARAtExp: (APPExp: (ATExp: (IDAtExp: (LongVId: ^))) (RECORDAtExp: (ExpRow: (Lab: |1|) (ATExp: (SCONAtExp: (STRINGSCon: "#\""))) (ExpRow: (Lab: |2|) (ATExp: (IDAtExp: (LongVId: s))))))))) (ExpRow: (Lab: |2|) (ATExp: (SCONAtExp: (STRINGSCon: "\"")))))))))) (Match: (Mrule: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (CONPat: (LongVId: REAL) (RECORDAtPat: (FIELDPatRow: (Lab: |1|) (ATPat: (IDAtPat: (LongVId: s))) (FIELDPatRow: (Lab: |2|) (ATPat: (WILDCARDAtPat:)))))))))))) (ATExp: (IDAtExp: (LongVId: s)))))))))))))) (DECStrDec: (VALDec: (TyVarseq:) (RECValBind: (PLAINValBind: (ATPat: (IDAtPat: (LongVId: tyname))) (FNExp: (Match: (Mrule: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (CONPat: (LongVId: INT) (RECORDAtPat: (FIELDPatRow: (Lab: |1|) (ATPat: (WILDCARDAtPat:)) (FIELDPatRow: (Lab: |2|) (ATPat: (WILDCARDAtPat:)) (FIELDPatRow: (Lab: |3|) (ATPat: (IDAtPat: (LongVId: r)))))))))))))) (ATExp: (PARAtExp: (APPExp: (ATExp: (IDAtExp: (LongVId: !))) (IDAtExp: (LongVId: r)))))) (Match: (Mrule: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (CONPat: (LongVId: WORD) (RECORDAtPat: (FIELDPatRow: (Lab: |1|) (ATPat: (WILDCARDAtPat:)) (FIELDPatRow: (Lab: |2|) (ATPat: (WILDCARDAtPat:)) (FIELDPatRow: (Lab: |3|) (ATPat: (IDAtPat: (LongVId: r)))))))))))))) (ATExp: (PARAtExp: (APPExp: (ATExp: (IDAtExp: (LongVId: !))) (IDAtExp: (LongVId: r)))))) (Match: (Mrule: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (CONPat: (LongVId: STRING) (RECORDAtPat: (FIELDPatRow: (Lab: |1|) (ATPat: (WILDCARDAtPat:)) (FIELDPatRow: (Lab: |2|) (ATPat: (IDAtPat: (LongVId: r))))))))))))) (ATExp: (PARAtExp: (APPExp: (ATExp: (IDAtExp: (LongVId: !))) (IDAtExp: (LongVId: r)))))) (Match: (Mrule: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (CONPat: (LongVId: CHAR) (RECORDAtPat: (FIELDPatRow: (Lab: |1|) (ATPat: (WILDCARDAtPat:)) (FIELDPatRow: (Lab: |2|) (ATPat: (IDAtPat: (LongVId: r))))))))))))) (ATExp: (PARAtExp: (APPExp: (ATExp: (IDAtExp: (LongVId: !))) (IDAtExp: (LongVId: r)))))) (Match: (Mrule: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (ATPat: (PARAtPat: (CONPat: (LongVId: REAL) (RECORDAtPat: (FIELDPatRow: (Lab: |1|) (ATPat: (WILDCARDAtPat:)) (FIELDPatRow: (Lab: |2|) (ATPat: (IDAtPat: (LongVId: r))))))))))))) (ATExp: (PARAtExp: (APPExp: (ATExp: (IDAtExp: (LongVId: !))) (IDAtExp: (LongVId: r))))))))))))))))))))) (IDSigExp: (SigId: SCON-sig)))))))))