úÎ7Z1TZ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXY.Types for defining project and project systems(c) Rodrigo Setti, 2017MITrodrigosetti@gmail.com experimentalPOSIXNone0@I8Any binding (with a name) may have associated properties!Structure of a project expression(When using to reference projects by name$ Expected cost%"Expected probability of succeeding)‘Simplify a project expression structure 1) transform singleton collections into it's only child 2) flatten same constructor of the collection*)Sort project in order that minimizes costZHHelper function to transform any Nan (not a number) to positive infinity0  !"#$[%\&'(])*Z++  !"#$%&'()*+  !"#'$(%)&*  !"#$[%\&'(])*Z+Debugging functions(c) Rodrigo Setti, 2017MITrodrigosetti@gmail.com experimentalPOSIXNone@MuPrint a Project Expression in a Project System to standard output. The expression is printed in a tree like fashion.MMMM!export parser for project systems(c) Rodrigo Setti, 2017MITrodrigosetti@gmail.com experimentalPOSIXNone@^Space consumer__& parses something between parenthesis.`list of reserved wordsa~Parses the part of right-hand-side after the optional properties (literal string title or properties between curly brackets)b0Parses the entire right-hand-side of definitionscYParses the entire plan file, given the name of the "root" project. returns this projectd^ef_`ghijkabc3strict mode: fails if a reference has no definitionthe name of the root projectN3strict mode: fails if a reference has no definition&the file name to use in error messagescontents of the plan to parsethe name of the root projectNNd^ef_`ghijkabcN3a backend that renders to a text that can be parsed(c) Rodrigo Setti, 2017MITrodrigosetti@gmail.com experimentalPOSIXNone@OPlain text rendererlOOOlO%a backend that renders to PNG diagram(c) Rodrigo Setti, 2017MITrodrigosetti@gmail.com experimentalPOSIXNone:<=@DR m5Monad that keep state of all projects rendered so farPOptions for renderingR,Whether to color boxes depending on progressSThe width of the output imageTThe height of the output imageU"Attributes that should be renderednRender multiline textoRender multiline textpLRender text with possible overflow by breaking lines and truncating with ...qLRender text with possible overflow by breaking lines and truncating with ...VThe main rendering functionW Render a multi-line text to filemPQRSTUrsn line spacingthe lines of text to rendero line spacingthe lines of text to renderp maximum number of lines to break maximum number of chars per line line spacingthe textq maximum number of lines to break maximum number of chars per line line spacingthe textVWtuPQRSTUVWVWPQRSTU mPQRSTUrsnopqVWtuv      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRRSTUVQWXYZ[\]^_`abcdefghijklmnopqrstuv(master-plan-0.3.1-1ftHO6tMp6oAiFl7mDN4yLMasterPlan.DataMasterPlan.Internal.DebugMasterPlan.ParserMasterPlan.Backend.IdentityMasterPlan.Backend.Graph ProjAttributePTitle PDescriptionPUrlPOwnerPCostPTrust PProgressProjectPropertiestitle descriptionurlowner ProjectExprProjectSumProductSequenceAtomic AnnotatedProgress getProgressCostgetCostTrustgetTrust ProjectKeydefaultProjectProps defaultCost defaultTrustdefaultProgress defaultAtomiccosttrust subprojects propertiesprogresssimplify prioritize$fShowProjAttribute $fShowTrust $fEqTrust $fDataTrust $fOrdTrust $fNumTrust $fRealTrust$fRealFracTrust$fFractionalTrust $fShowCost$fEqCost $fDataCost $fOrdCost $fNumCost $fRealCost$fRealFracCost$fFractionalCost$fShowProgress $fEqProgress$fDataProgress $fOrdProgress $fNumProgress$fRealProgress$fRealFracProgress$fFractionalProgress$fEqProjectProperties$fShowProjectProperties$fDataProjectProperties $fEqProject $fShowProject $fDataProject$fEqProjAttribute$fEnumProjAttribute$fBoundedProjAttribute printProject runParserrender RenderOptionscolorByProgress renderWidth renderHeightwhitelistedAttrs renderText$fEqRenderOptions$fShowRenderOptionsnanToInfcostConjunctiontrustConjunctionprogressConjunctionscparensrws expressionbindingplanParserlexemesymbol identifier projectKey stringLiteral percentagenonNegativeNumber RenderMonadAvoidRedundancymultilineText' multilineText textOverflow' textOverflowleftText rightText renderProject renderNode