[{"data":1,"prerenderedAt":6072},["ShallowReactive",2],{"navigation":3,"page-\u002Fdocs\u002Flearn\u002Fage":3716,"surround-\u002Fdocs\u002Flearn\u002Fage":6067},[4,30,34,38,43,3692,3696,3700,3704,3708,3712],{"title":5,"path":6,"stem":7,"children":8,"page":29},"Blog","\u002Fblog","blog",[9,13,17,21,25],{"title":10,"path":11,"stem":12},"Rux 0.3.0 — Laying the Cross-Platform Groundwork","\u002Fblog\u002Frelease-v0.3.0","blog\u002F1.release-v0.3.0",{"title":14,"path":15,"stem":16},"Programming Language Without LLVM","\u002Fblog\u002Flanguage-without-llvm","blog\u002F2.language-without-llvm",{"title":18,"path":19,"stem":20},"Rux 0.2.0 — A Real Language","\u002Fblog\u002Frelease-v0.2.0","blog\u002F3.release-v0.2.0",{"title":22,"path":23,"stem":24},"Rux 0.1.0 — It Compiles!","\u002Fblog\u002Frelease-v0.1.0","blog\u002F4.release-v0.1.0",{"title":26,"path":27,"stem":28},"Getting Started","\u002Fblog\u002Fgetting-started","blog\u002F5.getting-started",false,{"title":31,"path":32,"stem":33},"Code of Conduct","\u002Fcode-of-conduct","code-of-conduct",{"title":35,"path":36,"stem":37},"Community","\u002Fcommunity","community",{"title":39,"path":40,"stem":41,"icon":42},"Design Kit","\u002Fdesign-kit","design-kit","i-lucide-palette",{"title":44,"path":45,"stem":46,"children":47},"Documentation","\u002Fdocs","docs",[48,51,1365,1910,2012,2058],{"title":49,"path":45,"stem":50},"Overview","docs\u002Findex",{"title":52,"path":53,"stem":54,"children":55},"Learn Rux","\u002Fdocs\u002Flearn","docs\u002F1.learn\u002F00.index",[56,57,78,82,98,102,106,110,117,121,125,129,133,137,141,145,149,153,157,161,165,172,176,180,184,188,192,199,203,207,211,215,219,223,227,231,235,239,243,247,251,258,262,266,270,274,278,282,286,293,297,301,305,309,313,317,321,325,332,336,340,344,348,352,356,360,364,368,372,376,380,384,391,395,399,403,407,411,415,422,426,430,434,438,442,446,453,457,461,465,469,473,477,481,485,489,493,497,501,505,509,513,517,524,528,532,536,540,544,551,555,559,563,567,571,575,579,583,587,591,598,602,606,610,614,618,622,626,630,634,640,644,648,655,659,663,667,671,675,679,686,690,694,698,702,706,710,714,718,722,726,730,734,738,742,746,750,757,761,765,769,773,777,781,785,789,793,797,801,805,809,813,817,824,828,832,836,840,844,848,852,856,860,864,868,872,879,883,887,891,895,899,903,907,911,915,919,923,930,934,938,942,946,950,954,958,965,969,973,977,981,985,989,993,997,1001,1005,1009,1016,1020,1024,1028,1032,1036,1040,1044,1048,1052,1056,1060,1067,1071,1075,1079,1083,1087,1091,1095,1099,1106,1110,1114,1118,1122,1126,1130,1134,1138,1142,1146,1150,1154,1161,1165,1169,1173,1177,1181,1185,1189,1196,1200,1204,1208,1212,1216,1223,1227,1231,1235,1239,1243,1247,1251,1255,1262,1266,1270,1274,1278,1282,1286,1290,1297,1301,1305,1309,1313,1317,1321,1325,1329,1333,1337,1341,1345,1349,1353,1357,1361],{"title":49,"path":53,"stem":54},{"title":58,"path":59,"stem":60,"children":61,"page":29},"Install","\u002Fdocs\u002Flearn\u002Finstall","docs\u002F1.learn\u002F00.start",[62,66,70,74],{"title":63,"path":64,"stem":65},"FreeBSD","\u002Fdocs\u002Flearn\u002Finstall\u002Ffreebsd","docs\u002F1.learn\u002F00.start\u002F1.install\u002F1.freebsd",{"title":67,"path":68,"stem":69},"Linux","\u002Fdocs\u002Flearn\u002Finstall\u002Flinux","docs\u002F1.learn\u002F00.start\u002F1.install\u002F2.linux",{"title":71,"path":72,"stem":73},"macOS","\u002Fdocs\u002Flearn\u002Finstall\u002Fmacos","docs\u002F1.learn\u002F00.start\u002F1.install\u002F3.macos",{"title":75,"path":76,"stem":77},"Windows","\u002Fdocs\u002Flearn\u002Finstall\u002Fwindows","docs\u002F1.learn\u002F00.start\u002F1.install\u002F4.windows",{"title":79,"path":80,"stem":81},"Build From Source","\u002Fdocs\u002Flearn\u002Fbuild","docs\u002F1.learn\u002F00.start\u002F2.build",{"title":83,"path":84,"stem":60,"children":85,"page":29},"Editors","\u002Fdocs\u002Flearn\u002Feditors",[86,90,94],{"title":87,"path":88,"stem":89},"Visual Studio Code","\u002Fdocs\u002Flearn\u002Feditors\u002Fvscode","docs\u002F1.learn\u002F00.start\u002F3.editors\u002F1.vscode",{"title":91,"path":92,"stem":93},"Sublime Text","\u002Fdocs\u002Flearn\u002Feditors\u002Fsublime","docs\u002F1.learn\u002F00.start\u002F3.editors\u002F2.sublime",{"title":95,"path":96,"stem":97},"Zed","\u002Fdocs\u002Flearn\u002Feditors\u002Fzed","docs\u002F1.learn\u002F00.start\u002F3.editors\u002F3.zed",{"title":99,"path":100,"stem":101},"First project","\u002Fdocs\u002Flearn\u002Ffirst-project","docs\u002F1.learn\u002F00.start\u002F4.first-project",{"title":103,"path":104,"stem":105},"Learn with AI","\u002Fdocs\u002Flearn\u002Fai","docs\u002F1.learn\u002F00.start\u002F5.ai",{"title":107,"path":108,"stem":109},"Cheat sheet","\u002Fdocs\u002Flearn\u002Fcheatsheet","docs\u002F1.learn\u002F00.start\u002F6.cheatsheet",{"title":111,"path":112,"stem":113,"children":114,"icon":116},"Basics","\u002Fdocs\u002Flearn\u002Fbasics","docs\u002F1.learn\u002F01.basics\u002F00.index",[115],{"title":49,"path":112,"stem":113},"i-lucide-sprout",{"title":118,"path":119,"stem":120},"1.1 Hello, World","\u002Fdocs\u002Flearn\u002Fhello","docs\u002F1.learn\u002F01.basics\u002F01.hello",{"title":122,"path":123,"stem":124},"1.2 Comment","\u002Fdocs\u002Flearn\u002Fcomment","docs\u002F1.learn\u002F01.basics\u002F02.comment",{"title":126,"path":127,"stem":128},"1.3 Variable","\u002Fdocs\u002Flearn\u002Fvariable","docs\u002F1.learn\u002F01.basics\u002F03.variable",{"title":130,"path":131,"stem":132},"1.4 Mutable","\u002Fdocs\u002Flearn\u002Fmutable","docs\u002F1.learn\u002F01.basics\u002F04.mutable",{"title":134,"path":135,"stem":136},"1.5 Integer","\u002Fdocs\u002Flearn\u002Finteger","docs\u002F1.learn\u002F01.basics\u002F05.integer",{"title":138,"path":139,"stem":140},"1.6 Float","\u002Fdocs\u002Flearn\u002Ffloat","docs\u002F1.learn\u002F01.basics\u002F06.float",{"title":142,"path":143,"stem":144},"1.7 Boolean","\u002Fdocs\u002Flearn\u002Fboolean","docs\u002F1.learn\u002F01.basics\u002F07.boolean",{"title":146,"path":147,"stem":148},"1.8 Character","\u002Fdocs\u002Flearn\u002Fcharacter","docs\u002F1.learn\u002F01.basics\u002F08.character",{"title":150,"path":151,"stem":152},"1.9 Literal","\u002Fdocs\u002Flearn\u002Fliteral","docs\u002F1.learn\u002F01.basics\u002F09.literal",{"title":154,"path":155,"stem":156},"1.10 Console","\u002Fdocs\u002Flearn\u002Fconsole","docs\u002F1.learn\u002F01.basics\u002F10.console",{"title":158,"path":159,"stem":160},"1.11 Const","\u002Fdocs\u002Flearn\u002Fconst","docs\u002F1.learn\u002F01.basics\u002F11.const",{"title":162,"path":163,"stem":164},"1.12 Convert","\u002Fdocs\u002Flearn\u002Fconvert","docs\u002F1.learn\u002F01.basics\u002F12.convert",{"title":166,"path":167,"stem":168,"children":169,"icon":171},"Operators","\u002Fdocs\u002Flearn\u002Foperators","docs\u002F1.learn\u002F02.operators\u002F00.index",[170],{"title":49,"path":167,"stem":168},"i-lucide-plus",{"title":173,"path":174,"stem":175},"2.1 Arithmetic","\u002Fdocs\u002Flearn\u002Farithmetic","docs\u002F1.learn\u002F02.operators\u002F01.arithmetic",{"title":177,"path":178,"stem":179},"2.2 Comparison","\u002Fdocs\u002Flearn\u002Fcomparison","docs\u002F1.learn\u002F02.operators\u002F02.comparison",{"title":181,"path":182,"stem":183},"2.3 Logical","\u002Fdocs\u002Flearn\u002Flogical","docs\u002F1.learn\u002F02.operators\u002F03.logical",{"title":185,"path":186,"stem":187},"2.4 Assignment","\u002Fdocs\u002Flearn\u002Fassignment","docs\u002F1.learn\u002F02.operators\u002F04.assignment",{"title":189,"path":190,"stem":191},"2.5 Precedence","\u002Fdocs\u002Flearn\u002Fprecedence","docs\u002F1.learn\u002F02.operators\u002F05.precedence",{"title":193,"path":194,"stem":195,"children":196,"icon":198},"Control flow","\u002Fdocs\u002Flearn\u002Fcontrol-flow","docs\u002F1.learn\u002F03.control-flow\u002F00.index",[197],{"title":49,"path":194,"stem":195},"i-lucide-git-branch",{"title":200,"path":201,"stem":202},"3.1 If","\u002Fdocs\u002Flearn\u002Fif","docs\u002F1.learn\u002F03.control-flow\u002F01.if",{"title":204,"path":205,"stem":206},"3.2 Else if","\u002Fdocs\u002Flearn\u002Felse-if","docs\u002F1.learn\u002F03.control-flow\u002F02.else-if",{"title":208,"path":209,"stem":210},"3.3 Ternary","\u002Fdocs\u002Flearn\u002Fternary","docs\u002F1.learn\u002F03.control-flow\u002F03.ternary",{"title":212,"path":213,"stem":214},"3.4 While","\u002Fdocs\u002Flearn\u002Fwhile","docs\u002F1.learn\u002F03.control-flow\u002F04.while",{"title":216,"path":217,"stem":218},"3.5 Do-while","\u002Fdocs\u002Flearn\u002Fdo-while","docs\u002F1.learn\u002F03.control-flow\u002F05.do-while",{"title":220,"path":221,"stem":222},"3.6 Loop","\u002Fdocs\u002Flearn\u002Floop","docs\u002F1.learn\u002F03.control-flow\u002F06.loop",{"title":224,"path":225,"stem":226},"3.7 Break","\u002Fdocs\u002Flearn\u002Fbreak","docs\u002F1.learn\u002F03.control-flow\u002F07.break",{"title":228,"path":229,"stem":230},"3.8 Continue","\u002Fdocs\u002Flearn\u002Fcontinue","docs\u002F1.learn\u002F03.control-flow\u002F08.continue",{"title":232,"path":233,"stem":234},"3.9 Range","\u002Fdocs\u002Flearn\u002Frange","docs\u002F1.learn\u002F03.control-flow\u002F09.range",{"title":236,"path":237,"stem":238},"3.10 For","\u002Fdocs\u002Flearn\u002Ffor","docs\u002F1.learn\u002F03.control-flow\u002F10.for",{"title":240,"path":241,"stem":242},"3.11 Label","\u002Fdocs\u002Flearn\u002Flabel","docs\u002F1.learn\u002F03.control-flow\u002F11.label",{"title":244,"path":245,"stem":246},"3.12 Match","\u002Fdocs\u002Flearn\u002Fmatch","docs\u002F1.learn\u002F03.control-flow\u002F12.match",{"title":248,"path":249,"stem":250},"3.13 Match expression","\u002Fdocs\u002Flearn\u002Fmatch-expression","docs\u002F1.learn\u002F03.control-flow\u002F13.match-expression",{"title":252,"path":253,"stem":254,"children":255,"icon":257},"Functions","\u002Fdocs\u002Flearn\u002Ffunctions","docs\u002F1.learn\u002F04.functions\u002F00.index",[256],{"title":49,"path":253,"stem":254},"i-lucide-square-function",{"title":259,"path":260,"stem":261},"4.1 Function","\u002Fdocs\u002Flearn\u002Ffunction","docs\u002F1.learn\u002F04.functions\u002F01.function",{"title":263,"path":264,"stem":265},"4.2 Return","\u002Fdocs\u002Flearn\u002Freturn","docs\u002F1.learn\u002F04.functions\u002F02.return",{"title":267,"path":268,"stem":269},"4.3 Recursion","\u002Fdocs\u002Flearn\u002Frecursion","docs\u002F1.learn\u002F04.functions\u002F03.recursion",{"title":271,"path":272,"stem":273},"4.4 Overload","\u002Fdocs\u002Flearn\u002Foverload","docs\u002F1.learn\u002F04.functions\u002F04.overload",{"title":275,"path":276,"stem":277},"4.5 Default argument","\u002Fdocs\u002Flearn\u002Fdefault-argument","docs\u002F1.learn\u002F04.functions\u002F05.default-argument",{"title":279,"path":280,"stem":281},"4.6 Generic","\u002Fdocs\u002Flearn\u002Fgeneric","docs\u002F1.learn\u002F04.functions\u002F06.generic",{"title":283,"path":284,"stem":285},"4.7 Callback","\u002Fdocs\u002Flearn\u002Fcallback","docs\u002F1.learn\u002F04.functions\u002F07.callback",{"title":287,"path":288,"stem":289,"children":290,"icon":292},"Sequences","\u002Fdocs\u002Flearn\u002Fsequences","docs\u002F1.learn\u002F05.sequences\u002F00.index",[291],{"title":49,"path":288,"stem":289},"i-lucide-brackets",{"title":294,"path":295,"stem":296},"5.1 Array","\u002Fdocs\u002Flearn\u002Farray","docs\u002F1.learn\u002F05.sequences\u002F01.array",{"title":298,"path":299,"stem":300},"5.2 Array repeat","\u002Fdocs\u002Flearn\u002Farray-repeat","docs\u002F1.learn\u002F05.sequences\u002F02.array-repeat",{"title":302,"path":303,"stem":304},"5.3 Array nested","\u002Fdocs\u002Flearn\u002Farray-nested","docs\u002F1.learn\u002F05.sequences\u002F03.array-nested",{"title":306,"path":307,"stem":308},"5.4 Slice","\u002Fdocs\u002Flearn\u002Fslice","docs\u002F1.learn\u002F05.sequences\u002F04.slice",{"title":310,"path":311,"stem":312},"5.5 Writable slice","\u002Fdocs\u002Flearn\u002Fwritable-slice","docs\u002F1.learn\u002F05.sequences\u002F05.writable-slice",{"title":314,"path":315,"stem":316},"5.6 Variadic","\u002Fdocs\u002Flearn\u002Fvariadic","docs\u002F1.learn\u002F05.sequences\u002F06.variadic",{"title":318,"path":319,"stem":320},"5.7 Tuple","\u002Fdocs\u002Flearn\u002Ftuple","docs\u002F1.learn\u002F05.sequences\u002F07.tuple",{"title":322,"path":323,"stem":324},"5.8 Destructure","\u002Fdocs\u002Flearn\u002Fdestructure","docs\u002F1.learn\u002F05.sequences\u002F08.destructure",{"title":326,"path":327,"stem":328,"children":329,"icon":331},"Types","\u002Fdocs\u002Flearn\u002Ftypes","docs\u002F1.learn\u002F06.types\u002F00.index",[330],{"title":49,"path":327,"stem":328},"i-lucide-shapes",{"title":333,"path":334,"stem":335},"6.1 Struct","\u002Fdocs\u002Flearn\u002Fstruct","docs\u002F1.learn\u002F06.types\u002F01.struct",{"title":337,"path":338,"stem":339},"6.2 Reference","\u002Fdocs\u002Flearn\u002Freference","docs\u002F1.learn\u002F06.types\u002F02.reference",{"title":341,"path":342,"stem":343},"6.3 Mutable reference","\u002Fdocs\u002Flearn\u002Fmutable-reference","docs\u002F1.learn\u002F06.types\u002F03.mutable-reference",{"title":345,"path":346,"stem":347},"6.4 Method","\u002Fdocs\u002Flearn\u002Fmethod","docs\u002F1.learn\u002F06.types\u002F04.method",{"title":349,"path":350,"stem":351},"6.5 Mutating method","\u002Fdocs\u002Flearn\u002Fmutating-method","docs\u002F1.learn\u002F06.types\u002F05.mutating-method",{"title":353,"path":354,"stem":355},"6.6 Constructor","\u002Fdocs\u002Flearn\u002Fconstructor","docs\u002F1.learn\u002F06.types\u002F06.constructor",{"title":357,"path":358,"stem":359},"6.7 Extension","\u002Fdocs\u002Flearn\u002Fextension","docs\u002F1.learn\u002F06.types\u002F07.extension",{"title":361,"path":362,"stem":363},"6.8 Enum","\u002Fdocs\u002Flearn\u002Fenum","docs\u002F1.learn\u002F06.types\u002F08.enum",{"title":365,"path":366,"stem":367},"6.9 Enum value","\u002Fdocs\u002Flearn\u002Fenum-value","docs\u002F1.learn\u002F06.types\u002F09.enum-value",{"title":369,"path":370,"stem":371},"6.10 Variant","\u002Fdocs\u002Flearn\u002Fvariant","docs\u002F1.learn\u002F06.types\u002F10.variant",{"title":373,"path":374,"stem":375},"6.11 Variant match","\u002Fdocs\u002Flearn\u002Fvariant-match","docs\u002F1.learn\u002F06.types\u002F11.variant-match",{"title":377,"path":378,"stem":379},"6.12 Type alias","\u002Fdocs\u002Flearn\u002Ftype-alias","docs\u002F1.learn\u002F06.types\u002F12.type-alias",{"title":381,"path":382,"stem":383},"6.13 Function field","\u002Fdocs\u002Flearn\u002Ffunction-field","docs\u002F1.learn\u002F06.types\u002F13.function-field",{"title":385,"path":386,"stem":387,"children":388,"icon":390},"Patterns","\u002Fdocs\u002Flearn\u002Fpatterns","docs\u002F1.learn\u002F07.patterns\u002F00.index",[389],{"title":49,"path":386,"stem":387},"i-lucide-scan-search",{"title":392,"path":393,"stem":394},"7.1 Guard","\u002Fdocs\u002Flearn\u002Fguard","docs\u002F1.learn\u002F07.patterns\u002F01.guard",{"title":396,"path":397,"stem":398},"7.2 Range pattern","\u002Fdocs\u002Flearn\u002Frange-pattern","docs\u002F1.learn\u002F07.patterns\u002F02.range-pattern",{"title":400,"path":401,"stem":402},"7.3 Tuple pattern","\u002Fdocs\u002Flearn\u002Ftuple-pattern","docs\u002F1.learn\u002F07.patterns\u002F03.tuple-pattern",{"title":404,"path":405,"stem":406},"7.4 Struct pattern","\u002Fdocs\u002Flearn\u002Fstruct-pattern","docs\u002F1.learn\u002F07.patterns\u002F04.struct-pattern",{"title":408,"path":409,"stem":410},"7.5 Character pattern","\u002Fdocs\u002Flearn\u002Fcharacter-pattern","docs\u002F1.learn\u002F07.patterns\u002F05.character-pattern",{"title":412,"path":413,"stem":414},"7.6 Exhaustive","\u002Fdocs\u002Flearn\u002Fexhaustive","docs\u002F1.learn\u002F07.patterns\u002F06.exhaustive",{"title":416,"path":417,"stem":418,"children":419,"icon":421},"Optionals","\u002Fdocs\u002Flearn\u002Foptionals","docs\u002F1.learn\u002F08.optionals\u002F00.index",[420],{"title":49,"path":417,"stem":418},"i-lucide-circle-dashed",{"title":423,"path":424,"stem":425},"8.1 Optional","\u002Fdocs\u002Flearn\u002Foptional","docs\u002F1.learn\u002F08.optionals\u002F01.optional",{"title":427,"path":428,"stem":429},"8.2 Presence","\u002Fdocs\u002Flearn\u002Fpresence","docs\u002F1.learn\u002F08.optionals\u002F02.presence",{"title":431,"path":432,"stem":433},"8.3 Coalesce","\u002Fdocs\u002Flearn\u002Fcoalesce","docs\u002F1.learn\u002F08.optionals\u002F03.coalesce",{"title":435,"path":436,"stem":437},"8.4 Coalesce exit","\u002Fdocs\u002Flearn\u002Fcoalesce-exit","docs\u002F1.learn\u002F08.optionals\u002F04.coalesce-exit",{"title":439,"path":440,"stem":441},"8.5 Optional propagate","\u002Fdocs\u002Flearn\u002Foptional-propagate","docs\u002F1.learn\u002F08.optionals\u002F05.optional-propagate",{"title":443,"path":444,"stem":445},"8.6 Nested optional","\u002Fdocs\u002Flearn\u002Fnested-optional","docs\u002F1.learn\u002F08.optionals\u002F06.nested-optional",{"title":447,"path":448,"stem":449,"children":450,"icon":452},"Errors","\u002Fdocs\u002Flearn\u002Ferrors","docs\u002F1.learn\u002F09.errors\u002F00.index",[451],{"title":49,"path":448,"stem":449},"i-lucide-triangle-alert",{"title":454,"path":455,"stem":456},"9.1 Fallible","\u002Fdocs\u002Flearn\u002Ffallible","docs\u002F1.learn\u002F09.errors\u002F01.fallible",{"title":458,"path":459,"stem":460},"9.2 Fail","\u002Fdocs\u002Flearn\u002Ffail","docs\u002F1.learn\u002F09.errors\u002F02.fail",{"title":462,"path":463,"stem":464},"9.3 Unit fallible","\u002Fdocs\u002Flearn\u002Funit-fallible","docs\u002F1.learn\u002F09.errors\u002F03.unit-fallible",{"title":466,"path":467,"stem":468},"9.4 Outcome","\u002Fdocs\u002Flearn\u002Foutcome","docs\u002F1.learn\u002F09.errors\u002F04.outcome",{"title":470,"path":471,"stem":472},"9.5 Discard","\u002Fdocs\u002Flearn\u002Fdiscard","docs\u002F1.learn\u002F09.errors\u002F05.discard",{"title":474,"path":475,"stem":476},"9.6 Catch","\u002Fdocs\u002Flearn\u002Fcatch","docs\u002F1.learn\u002F09.errors\u002F06.catch",{"title":478,"path":479,"stem":480},"9.7 Catch fallback","\u002Fdocs\u002Flearn\u002Fcatch-fallback","docs\u002F1.learn\u002F09.errors\u002F07.catch-fallback",{"title":482,"path":483,"stem":484},"9.8 Propagate","\u002Fdocs\u002Flearn\u002Fpropagate","docs\u002F1.learn\u002F09.errors\u002F08.propagate",{"title":486,"path":487,"stem":488},"9.9 Error variant","\u002Fdocs\u002Flearn\u002Ferror-variant","docs\u002F1.learn\u002F09.errors\u002F09.error-variant",{"title":490,"path":491,"stem":492},"9.10 Error mapping","\u002Fdocs\u002Flearn\u002Ferror-mapping","docs\u002F1.learn\u002F09.errors\u002F10.error-mapping",{"title":494,"path":495,"stem":496},"9.11 Error sum","\u002Fdocs\u002Flearn\u002Ferror-sum","docs\u002F1.learn\u002F09.errors\u002F11.error-sum",{"title":498,"path":499,"stem":500},"9.12 Fallible main","\u002Fdocs\u002Flearn\u002Ffallible-main","docs\u002F1.learn\u002F09.errors\u002F12.fallible-main",{"title":502,"path":503,"stem":504},"9.13 Absence to error","\u002Fdocs\u002Flearn\u002Fabsence-to-error","docs\u002F1.learn\u002F09.errors\u002F13.absence-to-error",{"title":506,"path":507,"stem":508},"9.14 Nested fallible","\u002Fdocs\u002Flearn\u002Fnested-fallible","docs\u002F1.learn\u002F09.errors\u002F14.nested-fallible",{"title":510,"path":511,"stem":512},"9.15 Panic","\u002Fdocs\u002Flearn\u002Fpanic","docs\u002F1.learn\u002F09.errors\u002F15.panic",{"title":514,"path":515,"stem":516},"9.16 Assert","\u002Fdocs\u002Flearn\u002Fassert","docs\u002F1.learn\u002F09.errors\u002F16.assert",{"title":518,"path":519,"stem":520,"children":521,"icon":523},"Sum types","\u002Fdocs\u002Flearn\u002Fsum-types","docs\u002F1.learn\u002F10.sum-types\u002F00.index",[522],{"title":49,"path":519,"stem":520},"i-lucide-combine",{"title":525,"path":526,"stem":527},"10.1 Sum type","\u002Fdocs\u002Flearn\u002Fsum-type","docs\u002F1.learn\u002F10.sum-types\u002F01.sum-type",{"title":529,"path":530,"stem":531},"10.2 Typed pattern","\u002Fdocs\u002Flearn\u002Ftyped-pattern","docs\u002F1.learn\u002F10.sum-types\u002F02.typed-pattern",{"title":533,"path":534,"stem":535},"10.3 Subset pattern","\u002Fdocs\u002Flearn\u002Fsubset-pattern","docs\u002F1.learn\u002F10.sum-types\u002F03.subset-pattern",{"title":537,"path":538,"stem":539},"10.4 The is operator","\u002Fdocs\u002Flearn\u002Fis","docs\u002F1.learn\u002F10.sum-types\u002F04.is",{"title":541,"path":542,"stem":543},"10.5 Sum widening","\u002Fdocs\u002Flearn\u002Fsum-widening","docs\u002F1.learn\u002F10.sum-types\u002F05.sum-widening",{"title":545,"path":546,"stem":547,"children":548,"icon":550},"Ownership","\u002Fdocs\u002Flearn\u002Fownership","docs\u002F1.learn\u002F11.ownership\u002F00.index",[549],{"title":49,"path":546,"stem":547},"i-lucide-key-round",{"title":552,"path":553,"stem":554},"11.1 Exclusivity","\u002Fdocs\u002Flearn\u002Fexclusivity","docs\u002F1.learn\u002F11.ownership\u002F01.exclusivity",{"title":556,"path":557,"stem":558},"11.2 Copy","\u002Fdocs\u002Flearn\u002Fcopy","docs\u002F1.learn\u002F11.ownership\u002F02.copy",{"title":560,"path":561,"stem":562},"11.3 Move","\u002Fdocs\u002Flearn\u002Fmove","docs\u002F1.learn\u002F11.ownership\u002F03.move",{"title":564,"path":565,"stem":566},"11.4 Destructor","\u002Fdocs\u002Flearn\u002Fdestructor","docs\u002F1.learn\u002F11.ownership\u002F04.destructor",{"title":568,"path":569,"stem":570},"11.5 Non-copyable types","\u002Fdocs\u002Flearn\u002Fno-copy","docs\u002F1.learn\u002F11.ownership\u002F05.no-copy",{"title":572,"path":573,"stem":574},"11.6 Custom copy","\u002Fdocs\u002Flearn\u002Fcustom-copy","docs\u002F1.learn\u002F11.ownership\u002F06.custom-copy",{"title":576,"path":577,"stem":578},"11.7 Partial move","\u002Fdocs\u002Flearn\u002Fpartial-move","docs\u002F1.learn\u002F11.ownership\u002F07.partial-move",{"title":580,"path":581,"stem":582},"11.8 Defer","\u002Fdocs\u002Flearn\u002Fdefer","docs\u002F1.learn\u002F11.ownership\u002F08.defer",{"title":584,"path":585,"stem":586},"11.9 Defer return","\u002Fdocs\u002Flearn\u002Fdefer-return","docs\u002F1.learn\u002F11.ownership\u002F09.defer-return",{"title":588,"path":589,"stem":590},"11.10 Initialization","\u002Fdocs\u002Flearn\u002Finitialization","docs\u002F1.learn\u002F11.ownership\u002F10.initialization",{"title":592,"path":593,"stem":594,"children":595,"icon":597},"Interfaces","\u002Fdocs\u002Flearn\u002Finterfaces","docs\u002F1.learn\u002F12.interfaces\u002F00.index",[596],{"title":49,"path":593,"stem":594},"i-lucide-plug",{"title":599,"path":600,"stem":601},"12.1 Interface","\u002Fdocs\u002Flearn\u002Finterface","docs\u002F1.learn\u002F12.interfaces\u002F01.interface",{"title":603,"path":604,"stem":605},"12.2 Interface value","\u002Fdocs\u002Flearn\u002Finterface-value","docs\u002F1.learn\u002F12.interfaces\u002F02.interface-value",{"title":607,"path":608,"stem":609},"12.3 Interface parameter","\u002Fdocs\u002Flearn\u002Finterface-parameter","docs\u002F1.learn\u002F12.interfaces\u002F03.interface-parameter",{"title":611,"path":612,"stem":613},"12.4 Display","\u002Fdocs\u002Flearn\u002Fdisplay","docs\u002F1.learn\u002F12.interfaces\u002F04.display",{"title":615,"path":616,"stem":617},"12.5 Equatable","\u002Fdocs\u002Flearn\u002Fequatable","docs\u002F1.learn\u002F12.interfaces\u002F05.equatable",{"title":619,"path":620,"stem":621},"12.6 Comparable","\u002Fdocs\u002Flearn\u002Fcomparable","docs\u002F1.learn\u002F12.interfaces\u002F06.comparable",{"title":623,"path":624,"stem":625},"12.7 Structural equality","\u002Fdocs\u002Flearn\u002Fstructural-equality","docs\u002F1.learn\u002F12.interfaces\u002F07.structural-equality",{"title":627,"path":628,"stem":629},"12.8 Operator overload","\u002Fdocs\u002Flearn\u002Foperator-overload","docs\u002F1.learn\u002F12.interfaces\u002F08.operator-overload",{"title":631,"path":632,"stem":633},"12.9 Derived operator","\u002Fdocs\u002Flearn\u002Fderived-operator","docs\u002F1.learn\u002F12.interfaces\u002F09.derived-operator",{"title":635,"path":636,"stem":637,"children":638},"12.10 Indexer","\u002Fdocs\u002Flearn\u002Findexer","docs\u002F1.learn\u002F12.interfaces\u002F10.indexer",[639],{"title":635,"path":636,"stem":637},{"title":641,"path":642,"stem":643},"12.11 Iterator","\u002Fdocs\u002Flearn\u002Fiterator","docs\u002F1.learn\u002F12.interfaces\u002F11.iterator",{"title":645,"path":646,"stem":647},"12.12 Iterable","\u002Fdocs\u002Flearn\u002Fiterable","docs\u002F1.learn\u002F12.interfaces\u002F12.iterable",{"title":649,"path":650,"stem":651,"children":652,"icon":654},"Generics","\u002Fdocs\u002Flearn\u002Fgenerics","docs\u002F1.learn\u002F13.generics\u002F00.index",[653],{"title":49,"path":650,"stem":651},"i-lucide-boxes",{"title":656,"path":657,"stem":658},"13.1 Generic type","\u002Fdocs\u002Flearn\u002Fgeneric-type","docs\u002F1.learn\u002F13.generics\u002F01.generic-type",{"title":660,"path":661,"stem":662},"13.2 Generic method","\u002Fdocs\u002Flearn\u002Fgeneric-method","docs\u002F1.learn\u002F13.generics\u002F02.generic-method",{"title":664,"path":665,"stem":666},"13.3 Generic bound","\u002Fdocs\u002Flearn\u002Fgeneric-bound","docs\u002F1.learn\u002F13.generics\u002F03.generic-bound",{"title":668,"path":669,"stem":670},"13.4 Multiple bounds","\u002Fdocs\u002Flearn\u002Fmultiple-bounds","docs\u002F1.learn\u002F13.generics\u002F04.multiple-bounds",{"title":672,"path":673,"stem":674},"13.5 Generic outcome","\u002Fdocs\u002Flearn\u002Fgeneric-outcome","docs\u002F1.learn\u002F13.generics\u002F05.generic-outcome",{"title":676,"path":677,"stem":678},"13.6 Generic sum","\u002Fdocs\u002Flearn\u002Fgeneric-sum","docs\u002F1.learn\u002F13.generics\u002F06.generic-sum",{"title":680,"path":681,"stem":682,"children":683,"icon":685},"Text","\u002Fdocs\u002Flearn\u002Ftext","docs\u002F1.learn\u002F14.text\u002F00.index",[684],{"title":49,"path":681,"stem":682},"i-lucide-type",{"title":687,"path":688,"stem":689},"14.1 String literal","\u002Fdocs\u002Flearn\u002Fstring-literal","docs\u002F1.learn\u002F14.text\u002F01.string-literal",{"title":691,"path":692,"stem":693},"14.2 Encoding","\u002Fdocs\u002Flearn\u002Fencoding","docs\u002F1.learn\u002F14.text\u002F02.encoding",{"title":695,"path":696,"stem":697},"14.3 String view","\u002Fdocs\u002Flearn\u002Fstring-view","docs\u002F1.learn\u002F14.text\u002F03.string-view",{"title":699,"path":700,"stem":701},"14.4 String","\u002Fdocs\u002Flearn\u002Fstring","docs\u002F1.learn\u002F14.text\u002F04.string",{"title":703,"path":704,"stem":705},"14.5 String builder","\u002Fdocs\u002Flearn\u002Fstring-builder","docs\u002F1.learn\u002F14.text\u002F05.string-builder",{"title":707,"path":708,"stem":709},"14.6 UTF-8","\u002Fdocs\u002Flearn\u002Futf8","docs\u002F1.learn\u002F14.text\u002F06.utf8",{"title":711,"path":712,"stem":713},"14.7 Unicode","\u002Fdocs\u002Flearn\u002Funicode","docs\u002F1.learn\u002F14.text\u002F07.unicode",{"title":715,"path":716,"stem":717},"14.8 Unicode case","\u002Fdocs\u002Flearn\u002Funicode-case","docs\u002F1.learn\u002F14.text\u002F08.unicode-case",{"title":719,"path":720,"stem":721},"14.9 Format","\u002Fdocs\u002Flearn\u002Fformat","docs\u002F1.learn\u002F14.text\u002F09.format",{"title":723,"path":724,"stem":725},"14.10 Format number","\u002Fdocs\u002Flearn\u002Fformat-number","docs\u002F1.learn\u002F14.text\u002F10.format-number",{"title":727,"path":728,"stem":729},"14.11 Render","\u002Fdocs\u002Flearn\u002Frender","docs\u002F1.learn\u002F14.text\u002F11.render",{"title":731,"path":732,"stem":733},"14.12 Parse","\u002Fdocs\u002Flearn\u002Fparse","docs\u002F1.learn\u002F14.text\u002F12.parse",{"title":735,"path":736,"stem":737},"14.13 Input","\u002Fdocs\u002Flearn\u002Finput","docs\u002F1.learn\u002F14.text\u002F13.input",{"title":739,"path":740,"stem":741},"14.14 Lines and joining","\u002Fdocs\u002Flearn\u002Fjoin-lines","docs\u002F1.learn\u002F14.text\u002F14.join-lines",{"title":743,"path":744,"stem":745},"14.15 Regular expressions","\u002Fdocs\u002Flearn\u002Fregex","docs\u002F1.learn\u002F14.text\u002F15.regex",{"title":747,"path":748,"stem":749},"14.16 Regex captures","\u002Fdocs\u002Flearn\u002Fregex-capture","docs\u002F1.learn\u002F14.text\u002F16.regex-capture",{"title":751,"path":752,"stem":753,"children":754,"icon":756},"Memory","\u002Fdocs\u002Flearn\u002Fmemory","docs\u002F1.learn\u002F15.memory\u002F00.index",[755],{"title":49,"path":752,"stem":753},"i-lucide-memory-stick",{"title":758,"path":759,"stem":760},"15.1 Pointer","\u002Fdocs\u002Flearn\u002Fpointer","docs\u002F1.learn\u002F15.memory\u002F01.pointer",{"title":762,"path":763,"stem":764},"15.2 Out parameter","\u002Fdocs\u002Flearn\u002Fout-parameter","docs\u002F1.learn\u002F15.memory\u002F02.out-parameter",{"title":766,"path":767,"stem":768},"15.3 Raw memory","\u002Fdocs\u002Flearn\u002Fraw-memory","docs\u002F1.learn\u002F15.memory\u002F03.raw-memory",{"title":770,"path":771,"stem":772},"15.4 Pointer arithmetic","\u002Fdocs\u002Flearn\u002Fpointer-arithmetic","docs\u002F1.learn\u002F15.memory\u002F04.pointer-arithmetic",{"title":774,"path":775,"stem":776},"15.5 Pointer slice","\u002Fdocs\u002Flearn\u002Fpointer-slice","docs\u002F1.learn\u002F15.memory\u002F05.pointer-slice",{"title":778,"path":779,"stem":780},"15.6 Optional pointer","\u002Fdocs\u002Flearn\u002Foptional-pointer","docs\u002F1.learn\u002F15.memory\u002F06.optional-pointer",{"title":782,"path":783,"stem":784},"15.7 Layout","\u002Fdocs\u002Flearn\u002Flayout","docs\u002F1.learn\u002F15.memory\u002F07.layout",{"title":786,"path":787,"stem":788},"15.8 Union","\u002Fdocs\u002Flearn\u002Funion","docs\u002F1.learn\u002F15.memory\u002F08.union",{"title":790,"path":791,"stem":792},"15.9 Allocator","\u002Fdocs\u002Flearn\u002Fallocator","docs\u002F1.learn\u002F15.memory\u002F09.allocator",{"title":794,"path":795,"stem":796},"15.10 Box","\u002Fdocs\u002Flearn\u002Fbox","docs\u002F1.learn\u002F15.memory\u002F10.box",{"title":798,"path":799,"stem":800},"15.11 Arena","\u002Fdocs\u002Flearn\u002Farena","docs\u002F1.learn\u002F15.memory\u002F11.arena",{"title":802,"path":803,"stem":804},"15.12 Fixed buffer","\u002Fdocs\u002Flearn\u002Ffixed-buffer","docs\u002F1.learn\u002F15.memory\u002F12.fixed-buffer",{"title":806,"path":807,"stem":808},"15.13 Pool","\u002Fdocs\u002Flearn\u002Fpool","docs\u002F1.learn\u002F15.memory\u002F13.pool",{"title":810,"path":811,"stem":812},"15.14 Zeroize","\u002Fdocs\u002Flearn\u002Fzeroize","docs\u002F1.learn\u002F15.memory\u002F14.zeroize",{"title":814,"path":815,"stem":816},"15.15 Rc","\u002Fdocs\u002Flearn\u002Frc","docs\u002F1.learn\u002F15.memory\u002F15.rc",{"title":818,"path":819,"stem":820,"children":821,"icon":823},"Numbers","\u002Fdocs\u002Flearn\u002Fnumbers","docs\u002F1.learn\u002F16.numbers\u002F00.index",[822],{"title":49,"path":819,"stem":820},"i-lucide-binary",{"title":825,"path":826,"stem":827},"16.1 Wide integer","\u002Fdocs\u002Flearn\u002Fwide-integer","docs\u002F1.learn\u002F16.numbers\u002F01.wide-integer",{"title":829,"path":830,"stem":831},"16.2 Number limit","\u002Fdocs\u002Flearn\u002Fnumber-limit","docs\u002F1.learn\u002F16.numbers\u002F02.number-limit",{"title":833,"path":834,"stem":835},"16.3 Float special","\u002Fdocs\u002Flearn\u002Ffloat-special","docs\u002F1.learn\u002F16.numbers\u002F03.float-special",{"title":837,"path":838,"stem":839},"16.4 Bitwise","\u002Fdocs\u002Flearn\u002Fbitwise","docs\u002F1.learn\u002F16.numbers\u002F04.bitwise",{"title":841,"path":842,"stem":843},"16.5 Shift","\u002Fdocs\u002Flearn\u002Fshift","docs\u002F1.learn\u002F16.numbers\u002F05.shift",{"title":845,"path":846,"stem":847},"16.6 Checked arithmetic","\u002Fdocs\u002Flearn\u002Fchecked-arithmetic","docs\u002F1.learn\u002F16.numbers\u002F06.checked-arithmetic",{"title":849,"path":850,"stem":851},"16.7 Wrapping arithmetic","\u002Fdocs\u002Flearn\u002Fwrapping-arithmetic","docs\u002F1.learn\u002F16.numbers\u002F07.wrapping-arithmetic",{"title":853,"path":854,"stem":855},"16.8 Checked convert","\u002Fdocs\u002Flearn\u002Fchecked-convert","docs\u002F1.learn\u002F16.numbers\u002F08.checked-convert",{"title":857,"path":858,"stem":859},"16.9 Bit operation","\u002Fdocs\u002Flearn\u002Fbit-operation","docs\u002F1.learn\u002F16.numbers\u002F09.bit-operation",{"title":861,"path":862,"stem":863},"16.10 Endian","\u002Fdocs\u002Flearn\u002Fendian","docs\u002F1.learn\u002F16.numbers\u002F10.endian",{"title":865,"path":866,"stem":867},"16.11 Math","\u002Fdocs\u002Flearn\u002Fmath","docs\u002F1.learn\u002F16.numbers\u002F11.math",{"title":869,"path":870,"stem":871},"16.12 Complex","\u002Fdocs\u002Flearn\u002Fcomplex","docs\u002F1.learn\u002F16.numbers\u002F12.complex",{"title":873,"path":874,"stem":875,"children":876,"icon":878},"Collections","\u002Fdocs\u002Flearn\u002Fcollections","docs\u002F1.learn\u002F17.collections\u002F00.index",[877],{"title":49,"path":874,"stem":875},"i-lucide-layers",{"title":880,"path":881,"stem":882},"17.1 Vector","\u002Fdocs\u002Flearn\u002Fvector","docs\u002F1.learn\u002F17.collections\u002F01.vector",{"title":884,"path":885,"stem":886},"17.2 Dynamic array","\u002Fdocs\u002Flearn\u002Fdynamic-array","docs\u002F1.learn\u002F17.collections\u002F02.dynamic-array",{"title":888,"path":889,"stem":890},"17.3 Deque","\u002Fdocs\u002Flearn\u002Fdeque","docs\u002F1.learn\u002F17.collections\u002F03.deque",{"title":892,"path":893,"stem":894},"17.4 Hash map","\u002Fdocs\u002Flearn\u002Fhash-map","docs\u002F1.learn\u002F17.collections\u002F04.hash-map",{"title":896,"path":897,"stem":898},"17.5 Hash set","\u002Fdocs\u002Flearn\u002Fhash-set","docs\u002F1.learn\u002F17.collections\u002F05.hash-set",{"title":900,"path":901,"stem":902},"17.6 Tree map","\u002Fdocs\u002Flearn\u002Ftree-map","docs\u002F1.learn\u002F17.collections\u002F06.tree-map",{"title":904,"path":905,"stem":906},"17.7 Tree set","\u002Fdocs\u002Flearn\u002Ftree-set","docs\u002F1.learn\u002F17.collections\u002F07.tree-set",{"title":908,"path":909,"stem":910},"17.8 Priority queue","\u002Fdocs\u002Flearn\u002Fpriority-queue","docs\u002F1.learn\u002F17.collections\u002F08.priority-queue",{"title":912,"path":913,"stem":914},"17.9 Bit set","\u002Fdocs\u002Flearn\u002Fbit-set","docs\u002F1.learn\u002F17.collections\u002F09.bit-set",{"title":916,"path":917,"stem":918},"17.10 Small vector","\u002Fdocs\u002Flearn\u002Fsmall-vector","docs\u002F1.learn\u002F17.collections\u002F10.small-vector",{"title":920,"path":921,"stem":922},"17.11 LRU cache","\u002Fdocs\u002Flearn\u002Flru-cache","docs\u002F1.learn\u002F17.collections\u002F11.lru-cache",{"title":924,"path":925,"stem":926,"children":927,"icon":929},"Algorithms","\u002Fdocs\u002Flearn\u002Falgorithms","docs\u002F1.learn\u002F18.algorithms\u002F00.index",[928],{"title":49,"path":925,"stem":926},"i-lucide-arrow-down-wide-narrow",{"title":931,"path":932,"stem":933},"18.1 Sort","\u002Fdocs\u002Flearn\u002Fsort","docs\u002F1.learn\u002F18.algorithms\u002F01.sort",{"title":935,"path":936,"stem":937},"18.2 Search","\u002Fdocs\u002Flearn\u002Fsearch","docs\u002F1.learn\u002F18.algorithms\u002F02.search",{"title":939,"path":940,"stem":941},"18.3 Binary search","\u002Fdocs\u002Flearn\u002Fbinary-search","docs\u002F1.learn\u002F18.algorithms\u002F03.binary-search",{"title":943,"path":944,"stem":945},"18.4 Min and max","\u002Fdocs\u002Flearn\u002Fmin-max","docs\u002F1.learn\u002F18.algorithms\u002F04.min-max",{"title":947,"path":948,"stem":949},"18.5 Fold","\u002Fdocs\u002Flearn\u002Ffold","docs\u002F1.learn\u002F18.algorithms\u002F05.fold",{"title":951,"path":952,"stem":953},"18.6 Iterator adaptors","\u002Fdocs\u002Flearn\u002Fiterator-adaptor","docs\u002F1.learn\u002F18.algorithms\u002F06.iterator-adaptor",{"title":955,"path":956,"stem":957},"18.7 Scan","\u002Fdocs\u002Flearn\u002Fscan","docs\u002F1.learn\u002F18.algorithms\u002F07.scan",{"title":959,"path":960,"stem":961,"children":962,"icon":964},"Files","\u002Fdocs\u002Flearn\u002Ffiles","docs\u002F1.learn\u002F19.files\u002F00.index",[963],{"title":49,"path":960,"stem":961},"i-lucide-folder-open",{"title":966,"path":967,"stem":968},"19.1 Path","\u002Fdocs\u002Flearn\u002Fpath","docs\u002F1.learn\u002F19.files\u002F01.path",{"title":970,"path":971,"stem":972},"19.2 Path join","\u002Fdocs\u002Flearn\u002Fpath-join","docs\u002F1.learn\u002F19.files\u002F02.path-join",{"title":974,"path":975,"stem":976},"19.3 Path normalize","\u002Fdocs\u002Flearn\u002Fpath-normalize","docs\u002F1.learn\u002F19.files\u002F03.path-normalize",{"title":978,"path":979,"stem":980},"19.4 File","\u002Fdocs\u002Flearn\u002Ffile","docs\u002F1.learn\u002F19.files\u002F04.file",{"title":982,"path":983,"stem":984},"19.5 Directory","\u002Fdocs\u002Flearn\u002Fdirectory","docs\u002F1.learn\u002F19.files\u002F05.directory",{"title":986,"path":987,"stem":988},"19.6 Metadata","\u002Fdocs\u002Flearn\u002Fmetadata","docs\u002F1.learn\u002F19.files\u002F06.metadata",{"title":990,"path":991,"stem":992},"19.7 Binary","\u002Fdocs\u002Flearn\u002Fbinary","docs\u002F1.learn\u002F19.files\u002F07.binary",{"title":994,"path":995,"stem":996},"19.8 Buffered I\u002FO","\u002Fdocs\u002Flearn\u002Fbuffered-io","docs\u002F1.learn\u002F19.files\u002F08.buffered-io",{"title":998,"path":999,"stem":1000},"19.9 Atomic file","\u002Fdocs\u002Flearn\u002Fatomic-file","docs\u002F1.learn\u002F19.files\u002F09.atomic-file",{"title":1002,"path":1003,"stem":1004},"19.10 Temporary file","\u002Fdocs\u002Flearn\u002Ftemporary-file","docs\u002F1.learn\u002F19.files\u002F10.temporary-file",{"title":1006,"path":1007,"stem":1008},"19.11 Memory streams","\u002Fdocs\u002Flearn\u002Fmemory-stream","docs\u002F1.learn\u002F19.files\u002F11.memory-stream",{"title":1010,"path":1011,"stem":1012,"children":1013,"icon":1015},"Utilities","\u002Fdocs\u002Flearn\u002Futilities","docs\u002F1.learn\u002F20.utilities\u002F00.index",[1014],{"title":49,"path":1011,"stem":1012},"i-lucide-wrench",{"title":1017,"path":1018,"stem":1019},"20.1 Duration","\u002Fdocs\u002Flearn\u002Fduration","docs\u002F1.learn\u002F20.utilities\u002F01.duration",{"title":1021,"path":1022,"stem":1023},"20.2 Stopwatch","\u002Fdocs\u002Flearn\u002Fstopwatch","docs\u002F1.learn\u002F20.utilities\u002F02.stopwatch",{"title":1025,"path":1026,"stem":1027},"20.3 Date","\u002Fdocs\u002Flearn\u002Fdate","docs\u002F1.learn\u002F20.utilities\u002F03.date",{"title":1029,"path":1030,"stem":1031},"20.4 Date and time","\u002Fdocs\u002Flearn\u002Fdate-time","docs\u002F1.learn\u002F20.utilities\u002F04.date-time",{"title":1033,"path":1034,"stem":1035},"20.5 Random","\u002Fdocs\u002Flearn\u002Frandom","docs\u002F1.learn\u002F20.utilities\u002F05.random",{"title":1037,"path":1038,"stem":1039},"20.6 Distribution","\u002Fdocs\u002Flearn\u002Fdistribution","docs\u002F1.learn\u002F20.utilities\u002F06.distribution",{"title":1041,"path":1042,"stem":1043},"20.7 Entropy","\u002Fdocs\u002Flearn\u002Fentropy","docs\u002F1.learn\u002F20.utilities\u002F07.entropy",{"title":1045,"path":1046,"stem":1047},"20.8 Hash","\u002Fdocs\u002Flearn\u002Fhash","docs\u002F1.learn\u002F20.utilities\u002F08.hash",{"title":1049,"path":1050,"stem":1051},"20.9 UUID","\u002Fdocs\u002Flearn\u002Fuuid","docs\u002F1.learn\u002F20.utilities\u002F09.uuid",{"title":1053,"path":1054,"stem":1055},"20.10 Nano ID","\u002Fdocs\u002Flearn\u002Fnano-id","docs\u002F1.learn\u002F20.utilities\u002F10.nano-id",{"title":1057,"path":1058,"stem":1059},"20.11 Time zone","\u002Fdocs\u002Flearn\u002Ftime-zone","docs\u002F1.learn\u002F20.utilities\u002F11.time-zone",{"title":1061,"path":1062,"stem":1063,"children":1064,"icon":1066},"Data formats","\u002Fdocs\u002Flearn\u002Fdata-formats","docs\u002F1.learn\u002F21.data-formats\u002F00.index",[1065],{"title":49,"path":1062,"stem":1063},"i-lucide-file-json",{"title":1068,"path":1069,"stem":1070},"21.1 JSON","\u002Fdocs\u002Flearn\u002Fjson","docs\u002F1.learn\u002F21.data-formats\u002F01.json",{"title":1072,"path":1073,"stem":1074},"21.2 Writing JSON","\u002Fdocs\u002Flearn\u002Fjson-write","docs\u002F1.learn\u002F21.data-formats\u002F02.json-write",{"title":1076,"path":1077,"stem":1078},"21.3 Streaming JSON","\u002Fdocs\u002Flearn\u002Fjson-stream","docs\u002F1.learn\u002F21.data-formats\u002F03.json-stream",{"title":1080,"path":1081,"stem":1082},"21.4 TOML","\u002Fdocs\u002Flearn\u002Ftoml","docs\u002F1.learn\u002F21.data-formats\u002F04.toml",{"title":1084,"path":1085,"stem":1086},"21.5 Writing TOML","\u002Fdocs\u002Flearn\u002Ftoml-write","docs\u002F1.learn\u002F21.data-formats\u002F05.toml-write",{"title":1088,"path":1089,"stem":1090},"21.6 Base64 and friends","\u002Fdocs\u002Flearn\u002Fbase-encoding","docs\u002F1.learn\u002F21.data-formats\u002F06.base-encoding",{"title":1092,"path":1093,"stem":1094},"21.7 URL","\u002Fdocs\u002Flearn\u002Furl","docs\u002F1.learn\u002F21.data-formats\u002F07.url",{"title":1096,"path":1097,"stem":1098},"21.8 Compress","\u002Fdocs\u002Flearn\u002Fcompress","docs\u002F1.learn\u002F21.data-formats\u002F08.compress",{"title":1100,"path":1101,"stem":1102,"children":1103,"icon":1105},"Packages","\u002Fdocs\u002Flearn\u002Fpackages","docs\u002F1.learn\u002F22.packages\u002F00.index",[1104],{"title":49,"path":1101,"stem":1102},"i-lucide-package",{"title":1107,"path":1108,"stem":1109},"22.1 Module","\u002Fdocs\u002Flearn\u002Fmodule","docs\u002F1.learn\u002F22.packages\u002F01.module",{"title":1111,"path":1112,"stem":1113},"22.2 Visibility","\u002Fdocs\u002Flearn\u002Fvisibility","docs\u002F1.learn\u002F22.packages\u002F02.visibility",{"title":1115,"path":1116,"stem":1117},"22.3 Package","\u002Fdocs\u002Flearn\u002Fpackage","docs\u002F1.learn\u002F22.packages\u002F03.package",{"title":1119,"path":1120,"stem":1121},"22.4 Dependency","\u002Fdocs\u002Flearn\u002Fdependency","docs\u002F1.learn\u002F22.packages\u002F04.dependency",{"title":1123,"path":1124,"stem":1125},"22.5 Workspace","\u002Fdocs\u002Flearn\u002Fworkspace","docs\u002F1.learn\u002F22.packages\u002F05.workspace",{"title":1127,"path":1128,"stem":1129},"22.6 Source library","\u002Fdocs\u002Flearn\u002Fsource-library","docs\u002F1.learn\u002F22.packages\u002F06.source-library",{"title":1131,"path":1132,"stem":1133},"22.7 Static library","\u002Fdocs\u002Flearn\u002Fstatic-library","docs\u002F1.learn\u002F22.packages\u002F07.static-library",{"title":1135,"path":1136,"stem":1137},"22.8 Shared library","\u002Fdocs\u002Flearn\u002Fshared-library","docs\u002F1.learn\u002F22.packages\u002F08.shared-library",{"title":1139,"path":1140,"stem":1141},"22.9 Documentation","\u002Fdocs\u002Flearn\u002Fdocumentation","docs\u002F1.learn\u002F22.packages\u002F09.documentation",{"title":1143,"path":1144,"stem":1145},"22.10 Tooling","\u002Fdocs\u002Flearn\u002Ftooling","docs\u002F1.learn\u002F22.packages\u002F10.tooling",{"title":1147,"path":1148,"stem":1149},"22.11 Unit tests","\u002Fdocs\u002Flearn\u002Funit-test","docs\u002F1.learn\u002F22.packages\u002F11.unit-test",{"title":1151,"path":1152,"stem":1153},"22.12 Benchmark","\u002Fdocs\u002Flearn\u002Fbenchmark","docs\u002F1.learn\u002F22.packages\u002F12.benchmark",{"title":1155,"path":1156,"stem":1157,"children":1158,"icon":1160},"Compile time","\u002Fdocs\u002Flearn\u002Fcompile-time","docs\u002F1.learn\u002F23.compile-time\u002F00.index",[1159],{"title":49,"path":1156,"stem":1157},"i-lucide-cpu",{"title":1162,"path":1163,"stem":1164},"23.1 When","\u002Fdocs\u002Flearn\u002Fwhen","docs\u002F1.learn\u002F23.compile-time\u002F01.when",{"title":1166,"path":1167,"stem":1168},"23.2 Target","\u002Fdocs\u002Flearn\u002Ftarget","docs\u002F1.learn\u002F23.compile-time\u002F02.target",{"title":1170,"path":1171,"stem":1172},"23.3 Build mode","\u002Fdocs\u002Flearn\u002Fbuild-mode","docs\u002F1.learn\u002F23.compile-time\u002F03.build-mode",{"title":1174,"path":1175,"stem":1176},"23.4 Source location","\u002Fdocs\u002Flearn\u002Fsource-location","docs\u002F1.learn\u002F23.compile-time\u002F04.source-location",{"title":1178,"path":1179,"stem":1180},"23.5 Compile error","\u002Fdocs\u002Flearn\u002Fcompile-error","docs\u002F1.learn\u002F23.compile-time\u002F05.compile-error",{"title":1182,"path":1183,"stem":1184},"23.6 Define","\u002Fdocs\u002Flearn\u002Fdefine","docs\u002F1.learn\u002F23.compile-time\u002F06.define",{"title":1186,"path":1187,"stem":1188},"23.7 Intrinsic","\u002Fdocs\u002Flearn\u002Fintrinsic","docs\u002F1.learn\u002F23.compile-time\u002F07.intrinsic",{"title":1190,"path":1191,"stem":1192,"children":1193,"icon":1195},"Platform","\u002Fdocs\u002Flearn\u002Fplatform","docs\u002F1.learn\u002F24.platform\u002F00.index",[1194],{"title":49,"path":1191,"stem":1192},"i-lucide-monitor-cog",{"title":1197,"path":1198,"stem":1199},"24.1 Extern","\u002Fdocs\u002Flearn\u002Fextern","docs\u002F1.learn\u002F24.platform\u002F01.extern",{"title":1201,"path":1202,"stem":1203},"24.2 C interop","\u002Fdocs\u002Flearn\u002Fc-interop","docs\u002F1.learn\u002F24.platform\u002F02.c-interop",{"title":1205,"path":1206,"stem":1207},"24.3 ABI","\u002Fdocs\u002Flearn\u002Fabi","docs\u002F1.learn\u002F24.platform\u002F03.abi",{"title":1209,"path":1210,"stem":1211},"24.4 Assembly","\u002Fdocs\u002Flearn\u002Fasm","docs\u002F1.learn\u002F24.platform\u002F04.asm",{"title":1213,"path":1214,"stem":1215},"24.5 ARM assembly","\u002Fdocs\u002Flearn\u002Fasm-arm","docs\u002F1.learn\u002F24.platform\u002F05.asm-arm",{"title":1217,"path":1218,"stem":1219,"children":1220,"icon":1222},"Concurrency","\u002Fdocs\u002Flearn\u002Fconcurrency","docs\u002F1.learn\u002F25.concurrency\u002F00.index",[1221],{"title":49,"path":1218,"stem":1219},"i-lucide-git-fork",{"title":1224,"path":1225,"stem":1226},"25.1 Thread","\u002Fdocs\u002Flearn\u002Fthread","docs\u002F1.learn\u002F25.concurrency\u002F01.thread",{"title":1228,"path":1229,"stem":1230},"25.2 Atomic","\u002Fdocs\u002Flearn\u002Fatomic","docs\u002F1.learn\u002F25.concurrency\u002F02.atomic",{"title":1232,"path":1233,"stem":1234},"25.3 Mutex","\u002Fdocs\u002Flearn\u002Fmutex","docs\u002F1.learn\u002F25.concurrency\u002F03.mutex",{"title":1236,"path":1237,"stem":1238},"25.4 Arc","\u002Fdocs\u002Flearn\u002Farc","docs\u002F1.learn\u002F25.concurrency\u002F04.arc",{"title":1240,"path":1241,"stem":1242},"25.5 Channel","\u002Fdocs\u002Flearn\u002Fchannel","docs\u002F1.learn\u002F25.concurrency\u002F05.channel",{"title":1244,"path":1245,"stem":1246},"25.6 Wait group","\u002Fdocs\u002Flearn\u002Fwait-group","docs\u002F1.learn\u002F25.concurrency\u002F06.wait-group",{"title":1248,"path":1249,"stem":1250},"25.7 Once","\u002Fdocs\u002Flearn\u002Fonce","docs\u002F1.learn\u002F25.concurrency\u002F07.once",{"title":1252,"path":1253,"stem":1254},"25.8 Read-write lock","\u002Fdocs\u002Flearn\u002Frw-lock","docs\u002F1.learn\u002F25.concurrency\u002F08.rw-lock",{"title":1256,"path":1257,"stem":1258,"children":1259,"icon":1261},"Systems","\u002Fdocs\u002Flearn\u002Fsystems","docs\u002F1.learn\u002F26.systems\u002F00.index",[1260],{"title":49,"path":1257,"stem":1258},"i-lucide-terminal",{"title":1263,"path":1264,"stem":1265},"26.1 Environment","\u002Fdocs\u002Flearn\u002Fenvironment","docs\u002F1.learn\u002F26.systems\u002F01.environment",{"title":1267,"path":1268,"stem":1269},"26.2 Child process","\u002Fdocs\u002Flearn\u002Fchild-process","docs\u002F1.learn\u002F26.systems\u002F02.child-process",{"title":1271,"path":1272,"stem":1273},"26.3 Command line","\u002Fdocs\u002Flearn\u002Fcommand-line","docs\u002F1.learn\u002F26.systems\u002F03.command-line",{"title":1275,"path":1276,"stem":1277},"26.4 Log","\u002Fdocs\u002Flearn\u002Flog","docs\u002F1.learn\u002F26.systems\u002F04.log",{"title":1279,"path":1280,"stem":1281},"26.5 IP addresses","\u002Fdocs\u002Flearn\u002Fip-address","docs\u002F1.learn\u002F26.systems\u002F05.ip-address",{"title":1283,"path":1284,"stem":1285},"26.6 TCP","\u002Fdocs\u002Flearn\u002Ftcp","docs\u002F1.learn\u002F26.systems\u002F06.tcp",{"title":1287,"path":1288,"stem":1289},"26.7 UDP","\u002Fdocs\u002Flearn\u002Fudp","docs\u002F1.learn\u002F26.systems\u002F07.udp",{"title":1291,"path":1292,"stem":1293,"children":1294,"icon":1296},"Projects","\u002Fdocs\u002Flearn\u002Fprojects","docs\u002F1.learn\u002F27.projects\u002F00.index",[1295],{"title":49,"path":1292,"stem":1293},"i-lucide-hammer",{"title":1298,"path":1299,"stem":1300},"27.1 Thanks","\u002Fdocs\u002Flearn\u002Fthanks","docs\u002F1.learn\u002F27.projects\u002F01.thanks",{"title":1302,"path":1303,"stem":1304},"27.2 FizzBuzz","\u002Fdocs\u002Flearn\u002Ffizz-buzz","docs\u002F1.learn\u002F27.projects\u002F02.fizz-buzz",{"title":1306,"path":1307,"stem":1308},"27.3 Temperature","\u002Fdocs\u002Flearn\u002Ftemperature","docs\u002F1.learn\u002F27.projects\u002F03.temperature",{"title":1310,"path":1311,"stem":1312},"27.4 Prime","\u002Fdocs\u002Flearn\u002Fprime","docs\u002F1.learn\u002F27.projects\u002F04.prime",{"title":1314,"path":1315,"stem":1316},"27.5 Calculator","\u002Fdocs\u002Flearn\u002Fcalculator","docs\u002F1.learn\u002F27.projects\u002F05.calculator",{"title":1318,"path":1319,"stem":1320},"27.6 Circle","\u002Fdocs\u002Flearn\u002Fcircle","docs\u002F1.learn\u002F27.projects\u002F06.circle",{"title":1322,"path":1323,"stem":1324},"27.7 Quadratic","\u002Fdocs\u002Flearn\u002Fquadratic","docs\u002F1.learn\u002F27.projects\u002F07.quadratic",{"title":1326,"path":1327,"stem":1328},"27.8 Word count","\u002Fdocs\u002Flearn\u002Fword-count","docs\u002F1.learn\u002F27.projects\u002F08.word-count",{"title":1330,"path":1331,"stem":1332},"27.9 Inventory","\u002Fdocs\u002Flearn\u002Finventory","docs\u002F1.learn\u002F27.projects\u002F09.inventory",{"title":1334,"path":1335,"stem":1336},"27.10 Statistics","\u002Fdocs\u002Flearn\u002Fstatistics","docs\u002F1.learn\u002F27.projects\u002F10.statistics",{"title":1338,"path":1339,"stem":1340},"27.11 Guess","\u002Fdocs\u002Flearn\u002Fguess","docs\u002F1.learn\u002F27.projects\u002F11.guess",{"title":1342,"path":1343,"stem":1344},"27.12 Age","\u002Fdocs\u002Flearn\u002Fage","docs\u002F1.learn\u002F27.projects\u002F12.age",{"title":1346,"path":1347,"stem":1348},"27.13 Password","\u002Fdocs\u002Flearn\u002Fpassword","docs\u002F1.learn\u002F27.projects\u002F13.password",{"title":1350,"path":1351,"stem":1352},"27.14 Launch","\u002Fdocs\u002Flearn\u002Flaunch","docs\u002F1.learn\u002F27.projects\u002F14.launch",{"title":1354,"path":1355,"stem":1356},"27.15 Notes","\u002Fdocs\u002Flearn\u002Fnotes","docs\u002F1.learn\u002F27.projects\u002F15.notes",{"title":1358,"path":1359,"stem":1360},"27.16 Melody","\u002Fdocs\u002Flearn\u002Fmelody","docs\u002F1.learn\u002F27.projects\u002F16.melody",{"title":1362,"path":1363,"stem":1364},"27.17 Grep","\u002Fdocs\u002Flearn\u002Fgrep","docs\u002F1.learn\u002F27.projects\u002F17.grep",{"title":1366,"path":1367,"stem":1368,"children":1369},"Rux Reference","\u002Fdocs\u002Flang","docs\u002F2.lang\u002Findex",[1370,1371,1375,1403,1433,1457,1497,1521,1532,1556,1576,1584,1596,1604,1612,1620,1628,1636,1648,1663,1678,1696,1711,1730,1758,1777,1793,1821,1865,1881,1893],{"title":49,"path":1367,"stem":1368},{"title":1372,"path":1373,"stem":1374},"Introduction","\u002Fdocs\u002Flang\u002Fintroduction","docs\u002F2.lang\u002F01.introduction",{"title":1376,"path":1377,"stem":1378,"children":1379,"page":29},"Lexical Structure","\u002Fdocs\u002Flang\u002Flexical","docs\u002F2.lang\u002F02.lexical",[1380,1384,1388,1392,1396,1400],{"title":1381,"path":1382,"stem":1383},"Source Files","\u002Fdocs\u002Flang\u002Flexical\u002Fsource-files","docs\u002F2.lang\u002F02.lexical\u002F1.source-files",{"title":1385,"path":1386,"stem":1387},"Comments","\u002Fdocs\u002Flang\u002Flexical\u002Fcomments","docs\u002F2.lang\u002F02.lexical\u002F2.comments",{"title":1389,"path":1390,"stem":1391},"Identifiers","\u002Fdocs\u002Flang\u002Flexical\u002Fidentifiers","docs\u002F2.lang\u002F02.lexical\u002F3.identifiers",{"title":1393,"path":1394,"stem":1395},"Keywords","\u002Fdocs\u002Flang\u002Flexical\u002Fkeywords","docs\u002F2.lang\u002F02.lexical\u002F4.keywords",{"title":1397,"path":1398,"stem":1399},"Literals","\u002Fdocs\u002Flang\u002Flexical\u002Fliterals","docs\u002F2.lang\u002F02.lexical\u002F5.literals",{"title":166,"path":1401,"stem":1402},"\u002Fdocs\u002Flang\u002Flexical\u002Foperators","docs\u002F2.lang\u002F02.lexical\u002F6.operators",{"title":326,"path":1404,"stem":1405,"children":1406,"page":29},"\u002Fdocs\u002Flang\u002Ftypes","docs\u002F2.lang\u002F03.types",[1407,1410,1414,1418,1422,1426,1429],{"title":49,"path":1408,"stem":1409},"\u002Fdocs\u002Flang\u002Ftypes\u002Foverview","docs\u002F2.lang\u002F03.types\u002F1.overview",{"title":1411,"path":1412,"stem":1413},"Integers","\u002Fdocs\u002Flang\u002Ftypes\u002Fintegers","docs\u002F2.lang\u002F03.types\u002F2.integers",{"title":1415,"path":1416,"stem":1417},"Floating-Point","\u002Fdocs\u002Flang\u002Ftypes\u002Ffloating-point","docs\u002F2.lang\u002F03.types\u002F3.floating-point",{"title":1419,"path":1420,"stem":1421},"Booleans","\u002Fdocs\u002Flang\u002Ftypes\u002Fbooleans","docs\u002F2.lang\u002F03.types\u002F4.booleans",{"title":1423,"path":1424,"stem":1425},"Characters","\u002Fdocs\u002Flang\u002Ftypes\u002Fcharacters","docs\u002F2.lang\u002F03.types\u002F5.characters",{"title":680,"path":1427,"stem":1428},"\u002Fdocs\u002Flang\u002Ftypes\u002Ftext","docs\u002F2.lang\u002F03.types\u002F6.text",{"title":1430,"path":1431,"stem":1432},"Aliases","\u002Fdocs\u002Flang\u002Ftypes\u002Faliases","docs\u002F2.lang\u002F03.types\u002F7.aliases",{"title":1434,"path":1435,"stem":1436,"children":1437,"page":29},"Bindings","\u002Fdocs\u002Flang\u002Fbindings","docs\u002F2.lang\u002F04.bindings",[1438,1441,1445,1449,1453],{"title":49,"path":1439,"stem":1440},"\u002Fdocs\u002Flang\u002Fbindings\u002Foverview","docs\u002F2.lang\u002F04.bindings\u002F1.overview",{"title":1442,"path":1443,"stem":1444},"Constants","\u002Fdocs\u002Flang\u002Fbindings\u002Fconstants","docs\u002F2.lang\u002F04.bindings\u002F2.constants",{"title":1446,"path":1447,"stem":1448},"Initialization","\u002Fdocs\u002Flang\u002Fbindings\u002Finitialization","docs\u002F2.lang\u002F04.bindings\u002F3.initialization",{"title":1450,"path":1451,"stem":1452},"Destructuring","\u002Fdocs\u002Flang\u002Fbindings\u002Fdestructuring","docs\u002F2.lang\u002F04.bindings\u002F4.destructuring",{"title":1454,"path":1455,"stem":1456},"Module variables","\u002Fdocs\u002Flang\u002Fbindings\u002Fmodule-variables","docs\u002F2.lang\u002F04.bindings\u002F5.module-variables",{"title":1458,"path":1459,"stem":1460,"children":1461,"page":29},"Expressions","\u002Fdocs\u002Flang\u002Fexpressions","docs\u002F2.lang\u002F05.expressions",[1462,1465,1469,1473,1477,1481,1485,1489,1493],{"title":49,"path":1463,"stem":1464},"\u002Fdocs\u002Flang\u002Fexpressions\u002Foverview","docs\u002F2.lang\u002F05.expressions\u002F1.overview",{"title":1466,"path":1467,"stem":1468},"Arithmetic","\u002Fdocs\u002Flang\u002Fexpressions\u002Farithmetic","docs\u002F2.lang\u002F05.expressions\u002F2.arithmetic",{"title":1470,"path":1471,"stem":1472},"Comparison","\u002Fdocs\u002Flang\u002Fexpressions\u002Fcomparison","docs\u002F2.lang\u002F05.expressions\u002F3.comparison",{"title":1474,"path":1475,"stem":1476},"Logical","\u002Fdocs\u002Flang\u002Fexpressions\u002Flogical","docs\u002F2.lang\u002F05.expressions\u002F4.logical",{"title":1478,"path":1479,"stem":1480},"Bitwise","\u002Fdocs\u002Flang\u002Fexpressions\u002Fbitwise","docs\u002F2.lang\u002F05.expressions\u002F5.bitwise",{"title":1482,"path":1483,"stem":1484},"Shift","\u002Fdocs\u002Flang\u002Fexpressions\u002Fshift","docs\u002F2.lang\u002F05.expressions\u002F6.shift",{"title":1486,"path":1487,"stem":1488},"Assignment","\u002Fdocs\u002Flang\u002Fexpressions\u002Fassignment","docs\u002F2.lang\u002F05.expressions\u002F7.assignment",{"title":1490,"path":1491,"stem":1492},"Conditional","\u002Fdocs\u002Flang\u002Fexpressions\u002Fconditional","docs\u002F2.lang\u002F05.expressions\u002F8.conditional",{"title":1494,"path":1495,"stem":1496},"Casts","\u002Fdocs\u002Flang\u002Fexpressions\u002Fcasts","docs\u002F2.lang\u002F05.expressions\u002F9.casts",{"title":1498,"path":1499,"stem":1500,"children":1501,"page":29},"Statements","\u002Fdocs\u002Flang\u002Fstatements","docs\u002F2.lang\u002F06.statements",[1502,1505,1509,1513,1517],{"title":49,"path":1503,"stem":1504},"\u002Fdocs\u002Flang\u002Fstatements\u002Foverview","docs\u002F2.lang\u002F06.statements\u002F1.overview",{"title":1506,"path":1507,"stem":1508},"if","\u002Fdocs\u002Flang\u002Fstatements\u002Fif","docs\u002F2.lang\u002F06.statements\u002F2.if",{"title":1510,"path":1511,"stem":1512},"Loops","\u002Fdocs\u002Flang\u002Fstatements\u002Floops","docs\u002F2.lang\u002F06.statements\u002F3.loops",{"title":1514,"path":1515,"stem":1516},"break \u002F continue","\u002Fdocs\u002Flang\u002Fstatements\u002Fbreak-continue","docs\u002F2.lang\u002F06.statements\u002F4.break-continue",{"title":1518,"path":1519,"stem":1520},"return","\u002Fdocs\u002Flang\u002Fstatements\u002Freturn","docs\u002F2.lang\u002F06.statements\u002F5.return",{"title":385,"path":1522,"stem":1523,"children":1524,"page":29},"\u002Fdocs\u002Flang\u002Fpatterns","docs\u002F2.lang\u002F07.patterns",[1525,1529],{"title":1526,"path":1527,"stem":1528},"match","\u002Fdocs\u002Flang\u002Fpatterns\u002Fmatch","docs\u002F2.lang\u002F07.patterns\u002F1.match",{"title":385,"path":1530,"stem":1531},"\u002Fdocs\u002Flang\u002Fpatterns\u002Fpatterns","docs\u002F2.lang\u002F07.patterns\u002F2.patterns",{"title":252,"path":1533,"stem":1534,"children":1535,"page":29},"\u002Fdocs\u002Flang\u002Ffunctions","docs\u002F2.lang\u002F08.functions",[1536,1540,1544,1548,1552],{"title":1537,"path":1538,"stem":1539},"Declaration","\u002Fdocs\u002Flang\u002Ffunctions\u002Fdeclaration","docs\u002F2.lang\u002F08.functions\u002F1.declaration",{"title":1541,"path":1542,"stem":1543},"Parameters","\u002Fdocs\u002Flang\u002Ffunctions\u002Fparameters","docs\u002F2.lang\u002F08.functions\u002F2.parameters",{"title":1545,"path":1546,"stem":1547},"Overloading","\u002Fdocs\u002Flang\u002Ffunctions\u002Foverloading","docs\u002F2.lang\u002F08.functions\u002F3.overloading",{"title":1549,"path":1550,"stem":1551},"Function types","\u002Fdocs\u002Flang\u002Ffunctions\u002Ffunction-types","docs\u002F2.lang\u002F08.functions\u002F4.function-types",{"title":1553,"path":1554,"stem":1555},"Main","\u002Fdocs\u002Flang\u002Ffunctions\u002Fmain","docs\u002F2.lang\u002F08.functions\u002F5.main",{"title":1557,"path":1558,"stem":1559,"children":1560,"page":29},"Structures","\u002Fdocs\u002Flang\u002Fstructs","docs\u002F2.lang\u002F09.structs",[1561,1564,1568,1572],{"title":49,"path":1562,"stem":1563},"\u002Fdocs\u002Flang\u002Fstructs\u002Foverview","docs\u002F2.lang\u002F09.structs\u002F1.overview",{"title":1565,"path":1566,"stem":1567},"Methods","\u002Fdocs\u002Flang\u002Fstructs\u002Fmethods","docs\u002F2.lang\u002F09.structs\u002F2.methods",{"title":1569,"path":1570,"stem":1571},"Constructors","\u002Fdocs\u002Flang\u002Fstructs\u002Fconstructors","docs\u002F2.lang\u002F09.structs\u002F3.constructors",{"title":1573,"path":1574,"stem":1575},"Extensions","\u002Fdocs\u002Flang\u002Fstructs\u002Fextensions","docs\u002F2.lang\u002F09.structs\u002F4.extensions",{"title":1577,"path":1578,"stem":1579,"children":1580,"page":29},"Enumerations","\u002Fdocs\u002Flang\u002Fenums","docs\u002F2.lang\u002F10.enums",[1581],{"title":49,"path":1582,"stem":1583},"\u002Fdocs\u002Flang\u002Fenums\u002Foverview","docs\u002F2.lang\u002F10.enums\u002F1.overview",{"title":1585,"path":1586,"stem":1587,"children":1588,"page":29},"Variants","\u002Fdocs\u002Flang\u002Fvariants","docs\u002F2.lang\u002F11.variants",[1589,1592],{"title":49,"path":1590,"stem":1591},"\u002Fdocs\u002Flang\u002Fvariants\u002Foverview","docs\u002F2.lang\u002F11.variants\u002F1.overview",{"title":1593,"path":1594,"stem":1595},"Matching","\u002Fdocs\u002Flang\u002Fvariants\u002Fmatching","docs\u002F2.lang\u002F11.variants\u002F2.matching",{"title":1597,"path":1598,"stem":1599,"children":1600,"page":29},"Unions","\u002Fdocs\u002Flang\u002Funions","docs\u002F2.lang\u002F12.unions",[1601],{"title":49,"path":1602,"stem":1603},"\u002Fdocs\u002Flang\u002Funions\u002Foverview","docs\u002F2.lang\u002F12.unions\u002F1.overview",{"title":1605,"path":1606,"stem":1607,"children":1608,"page":29},"Tuples","\u002Fdocs\u002Flang\u002Ftuples","docs\u002F2.lang\u002F13.tuples",[1609],{"title":49,"path":1610,"stem":1611},"\u002Fdocs\u002Flang\u002Ftuples\u002Foverview","docs\u002F2.lang\u002F13.tuples\u002F1.overview",{"title":1613,"path":1614,"stem":1615,"children":1616,"page":29},"Arrays","\u002Fdocs\u002Flang\u002Farrays","docs\u002F2.lang\u002F14.arrays",[1617],{"title":49,"path":1618,"stem":1619},"\u002Fdocs\u002Flang\u002Farrays\u002Foverview","docs\u002F2.lang\u002F14.arrays\u002F1.overview",{"title":1621,"path":1622,"stem":1623,"children":1624,"page":29},"Slices","\u002Fdocs\u002Flang\u002Fslices","docs\u002F2.lang\u002F15.slices",[1625],{"title":49,"path":1626,"stem":1627},"\u002Fdocs\u002Flang\u002Fslices\u002Foverview","docs\u002F2.lang\u002F15.slices\u002F1.overview",{"title":1629,"path":1630,"stem":1631,"children":1632,"page":29},"Ranges","\u002Fdocs\u002Flang\u002Franges","docs\u002F2.lang\u002F16.ranges",[1633],{"title":49,"path":1634,"stem":1635},"\u002Fdocs\u002Flang\u002Franges\u002Foverview","docs\u002F2.lang\u002F16.ranges\u002F1.overview",{"title":1637,"path":1638,"stem":1639,"children":1640,"page":29},"References","\u002Fdocs\u002Flang\u002Freferences","docs\u002F2.lang\u002F17.references",[1641,1644],{"title":49,"path":1642,"stem":1643},"\u002Fdocs\u002Flang\u002Freferences\u002Foverview","docs\u002F2.lang\u002F17.references\u002F1.overview",{"title":1645,"path":1646,"stem":1647},"Exclusivity","\u002Fdocs\u002Flang\u002Freferences\u002Fexclusivity","docs\u002F2.lang\u002F17.references\u002F2.exclusivity",{"title":1649,"path":1650,"stem":1651,"children":1652,"page":29},"Pointers","\u002Fdocs\u002Flang\u002Fpointers","docs\u002F2.lang\u002F18.pointers",[1653,1656,1659],{"title":49,"path":1654,"stem":1655},"\u002Fdocs\u002Flang\u002Fpointers\u002Foverview","docs\u002F2.lang\u002F18.pointers\u002F1.overview",{"title":1466,"path":1657,"stem":1658},"\u002Fdocs\u002Flang\u002Fpointers\u002Farithmetic","docs\u002F2.lang\u002F18.pointers\u002F2.arithmetic",{"title":1660,"path":1661,"stem":1662},"Slicing","\u002Fdocs\u002Flang\u002Fpointers\u002Fslicing","docs\u002F2.lang\u002F18.pointers\u002F3.slicing",{"title":416,"path":1664,"stem":1665,"children":1666,"page":29},"\u002Fdocs\u002Flang\u002Foptionals","docs\u002F2.lang\u002F19.optionals",[1667,1670,1674],{"title":49,"path":1668,"stem":1669},"\u002Fdocs\u002Flang\u002Foptionals\u002Foverview","docs\u002F2.lang\u002F19.optionals\u002F1.overview",{"title":1671,"path":1672,"stem":1673},"Coalescing","\u002Fdocs\u002Flang\u002Foptionals\u002Fcoalescing","docs\u002F2.lang\u002F19.optionals\u002F2.coalescing",{"title":1675,"path":1676,"stem":1677},"Propagation","\u002Fdocs\u002Flang\u002Foptionals\u002Fpropagation","docs\u002F2.lang\u002F19.optionals\u002F3.propagation",{"title":447,"path":1679,"stem":1680,"children":1681,"page":29},"\u002Fdocs\u002Flang\u002Ferrors","docs\u002F2.lang\u002F20.errors",[1682,1685,1689,1692],{"title":49,"path":1683,"stem":1684},"\u002Fdocs\u002Flang\u002Ferrors\u002Foverview","docs\u002F2.lang\u002F20.errors\u002F1.overview",{"title":1686,"path":1687,"stem":1688},"Handling","\u002Fdocs\u002Flang\u002Ferrors\u002Fhandling","docs\u002F2.lang\u002F20.errors\u002F2.handling",{"title":1675,"path":1690,"stem":1691},"\u002Fdocs\u002Flang\u002Ferrors\u002Fpropagation","docs\u002F2.lang\u002F20.errors\u002F3.propagation",{"title":1693,"path":1694,"stem":1695},"Panics","\u002Fdocs\u002Flang\u002Ferrors\u002Fpanics","docs\u002F2.lang\u002F20.errors\u002F4.panics",{"title":1697,"path":1698,"stem":1699,"children":1700,"page":29},"Sum Types","\u002Fdocs\u002Flang\u002Fsums","docs\u002F2.lang\u002F21.sums",[1701,1704,1707],{"title":49,"path":1702,"stem":1703},"\u002Fdocs\u002Flang\u002Fsums\u002Foverview","docs\u002F2.lang\u002F21.sums\u002F1.overview",{"title":385,"path":1705,"stem":1706},"\u002Fdocs\u002Flang\u002Fsums\u002Fpatterns","docs\u002F2.lang\u002F21.sums\u002F2.patterns",{"title":1708,"path":1709,"stem":1710},"Type Tests","\u002Fdocs\u002Flang\u002Fsums\u002Ftype-tests","docs\u002F2.lang\u002F21.sums\u002F3.type-tests",{"title":545,"path":1712,"stem":1713,"children":1714,"page":29},"\u002Fdocs\u002Flang\u002Fownership","docs\u002F2.lang\u002F22.ownership",[1715,1718,1722,1726],{"title":49,"path":1716,"stem":1717},"\u002Fdocs\u002Flang\u002Fownership\u002Foverview","docs\u002F2.lang\u002F22.ownership\u002F1.overview",{"title":1719,"path":1720,"stem":1721},"Copy and Move","\u002Fdocs\u002Flang\u002Fownership\u002Fcopy-and-move","docs\u002F2.lang\u002F22.ownership\u002F2.copy-and-move",{"title":1723,"path":1724,"stem":1725},"Destructors","\u002Fdocs\u002Flang\u002Fownership\u002Fdestructors","docs\u002F2.lang\u002F22.ownership\u002F3.destructors",{"title":1727,"path":1728,"stem":1729},"Defer","\u002Fdocs\u002Flang\u002Fownership\u002Fdefer","docs\u002F2.lang\u002F22.ownership\u002F4.defer",{"title":592,"path":1731,"stem":1732,"children":1733,"page":29},"\u002Fdocs\u002Flang\u002Finterfaces","docs\u002F2.lang\u002F23.interfaces",[1734,1737,1741,1745,1748,1754],{"title":49,"path":1735,"stem":1736},"\u002Fdocs\u002Flang\u002Finterfaces\u002Foverview","docs\u002F2.lang\u002F23.interfaces\u002F1.overview",{"title":1738,"path":1739,"stem":1740},"Interface Values","\u002Fdocs\u002Flang\u002Finterfaces\u002Finterface-values","docs\u002F2.lang\u002F23.interfaces\u002F2.interface-values",{"title":1742,"path":1743,"stem":1744},"Core Interfaces","\u002Fdocs\u002Flang\u002Finterfaces\u002Fcore-interfaces","docs\u002F2.lang\u002F23.interfaces\u002F3.core-interfaces",{"title":166,"path":1746,"stem":1747},"\u002Fdocs\u002Flang\u002Finterfaces\u002Foperators","docs\u002F2.lang\u002F23.interfaces\u002F4.operators",{"title":1749,"path":1750,"stem":1751,"children":1752},"Indexers","\u002Fdocs\u002Flang\u002Finterfaces\u002Findexers","docs\u002F2.lang\u002F23.interfaces\u002F5.indexers",[1753],{"title":1749,"path":1750,"stem":1751},{"title":1755,"path":1756,"stem":1757},"Iteration","\u002Fdocs\u002Flang\u002Finterfaces\u002Fiteration","docs\u002F2.lang\u002F23.interfaces\u002F6.iteration",{"title":649,"path":1759,"stem":1760,"children":1761,"page":29},"\u002Fdocs\u002Flang\u002Fgenerics","docs\u002F2.lang\u002F24.generics",[1762,1765,1769,1773],{"title":49,"path":1763,"stem":1764},"\u002Fdocs\u002Flang\u002Fgenerics\u002Foverview","docs\u002F2.lang\u002F24.generics\u002F1.overview",{"title":1766,"path":1767,"stem":1768},"Generic Types","\u002Fdocs\u002Flang\u002Fgenerics\u002Ftypes","docs\u002F2.lang\u002F24.generics\u002F2.types",{"title":1770,"path":1771,"stem":1772},"Generic Methods","\u002Fdocs\u002Flang\u002Fgenerics\u002Fmethods","docs\u002F2.lang\u002F24.generics\u002F3.methods",{"title":1774,"path":1775,"stem":1776},"Bounds","\u002Fdocs\u002Flang\u002Fgenerics\u002Fbounds","docs\u002F2.lang\u002F24.generics\u002F4.bounds",{"title":1778,"path":1779,"stem":1780,"children":1781,"page":29},"Modules","\u002Fdocs\u002Flang\u002Fmodules","docs\u002F2.lang\u002F25.modules",[1782,1785,1789],{"title":49,"path":1783,"stem":1784},"\u002Fdocs\u002Flang\u002Fmodules\u002Foverview","docs\u002F2.lang\u002F25.modules\u002F1.overview",{"title":1786,"path":1787,"stem":1788},"Imports","\u002Fdocs\u002Flang\u002Fmodules\u002Fimports","docs\u002F2.lang\u002F25.modules\u002F2.imports",{"title":1790,"path":1791,"stem":1792},"Visibility","\u002Fdocs\u002Flang\u002Fmodules\u002Fvisibility","docs\u002F2.lang\u002F25.modules\u002F3.visibility",{"title":1794,"path":1795,"stem":1796,"children":1797,"page":29},"Compile-Time","\u002Fdocs\u002Flang\u002Fcomptime","docs\u002F2.lang\u002F26.comptime",[1798,1801,1805,1809,1813,1817],{"title":49,"path":1799,"stem":1800},"\u002Fdocs\u002Flang\u002Fcomptime\u002Foverview","docs\u002F2.lang\u002F26.comptime\u002F1.overview",{"title":1802,"path":1803,"stem":1804},"Conditional Compilation","\u002Fdocs\u002Flang\u002Fcomptime\u002Fconditional","docs\u002F2.lang\u002F26.comptime\u002F2.conditional",{"title":1806,"path":1807,"stem":1808},"Context","\u002Fdocs\u002Flang\u002Fcomptime\u002Fcontext","docs\u002F2.lang\u002F26.comptime\u002F3.context",{"title":1810,"path":1811,"stem":1812},"Config","\u002Fdocs\u002Flang\u002Fcomptime\u002Fconfig","docs\u002F2.lang\u002F26.comptime\u002F4.config",{"title":1814,"path":1815,"stem":1816},"Intrinsics","\u002Fdocs\u002Flang\u002Fcomptime\u002Fintrinsics","docs\u002F2.lang\u002F26.comptime\u002F5.intrinsics",{"title":1818,"path":1819,"stem":1820},"Diagnostics","\u002Fdocs\u002Flang\u002Fcomptime\u002Fdiagnostics","docs\u002F2.lang\u002F26.comptime\u002F6.diagnostics",{"title":1822,"path":1823,"stem":1824,"children":1825,"page":29},"Attributes","\u002Fdocs\u002Flang\u002Fattributes","docs\u002F2.lang\u002F27.attributes",[1826,1829,1833,1837,1841,1845,1849,1853,1857,1861],{"title":49,"path":1827,"stem":1828},"\u002Fdocs\u002Flang\u002Fattributes\u002Foverview","docs\u002F2.lang\u002F27.attributes\u002F1.overview",{"title":1830,"path":1831,"stem":1832},"#Unsendable","\u002Fdocs\u002Flang\u002Fattributes\u002Funsendable","docs\u002F2.lang\u002F27.attributes\u002F10.unsendable",{"title":1834,"path":1835,"stem":1836},"#Link","\u002Fdocs\u002Flang\u002Fattributes\u002Flink","docs\u002F2.lang\u002F27.attributes\u002F2.link",{"title":1838,"path":1839,"stem":1840},"#Abi","\u002Fdocs\u002Flang\u002Fattributes\u002Fabi","docs\u002F2.lang\u002F27.attributes\u002F3.abi",{"title":1842,"path":1843,"stem":1844},"#NoReturn","\u002Fdocs\u002Flang\u002Fattributes\u002Fnoreturn","docs\u002F2.lang\u002F27.attributes\u002F4.noreturn",{"title":1846,"path":1847,"stem":1848},"#Warn","\u002Fdocs\u002Flang\u002Fattributes\u002Fwarn","docs\u002F2.lang\u002F27.attributes\u002F5.warn",{"title":1850,"path":1851,"stem":1852},"#Error","\u002Fdocs\u002Flang\u002Fattributes\u002Ferror","docs\u002F2.lang\u002F27.attributes\u002F6.error",{"title":1854,"path":1855,"stem":1856},"#Allow","\u002Fdocs\u002Flang\u002Fattributes\u002Fallow","docs\u002F2.lang\u002F27.attributes\u002F7.allow",{"title":1858,"path":1859,"stem":1860},"#Format","\u002Fdocs\u002Flang\u002Fattributes\u002Fformat","docs\u002F2.lang\u002F27.attributes\u002F8.format",{"title":1862,"path":1863,"stem":1864},"#Test","\u002Fdocs\u002Flang\u002Fattributes\u002Ftest","docs\u002F2.lang\u002F27.attributes\u002F9.test",{"title":1866,"path":1867,"stem":1868,"children":1869,"page":29},"Foreign Function Interface","\u002Fdocs\u002Flang\u002Fffi","docs\u002F2.lang\u002F28.ffi",[1870,1873,1877],{"title":49,"path":1871,"stem":1872},"\u002Fdocs\u002Flang\u002Fffi\u002Foverview","docs\u002F2.lang\u002F28.ffi\u002F1.overview",{"title":1874,"path":1875,"stem":1876},"Linking","\u002Fdocs\u002Flang\u002Fffi\u002Flinking","docs\u002F2.lang\u002F28.ffi\u002F2.linking",{"title":1878,"path":1879,"stem":1880},"Assembly","\u002Fdocs\u002Flang\u002Fffi\u002Fassembly","docs\u002F2.lang\u002F28.ffi\u002F3.assembly",{"title":751,"path":1882,"stem":1883,"children":1884,"page":29},"\u002Fdocs\u002Flang\u002Fmemory","docs\u002F2.lang\u002F29.memory",[1885,1889],{"title":1886,"path":1887,"stem":1888},"Layout","\u002Fdocs\u002Flang\u002Fmemory\u002Flayout","docs\u002F2.lang\u002F29.memory\u002F1.layout",{"title":1890,"path":1891,"stem":1892},"Atomics","\u002Fdocs\u002Flang\u002Fmemory\u002Fatomics","docs\u002F2.lang\u002F29.memory\u002F2.atomics",{"title":1894,"path":1895,"stem":1896,"children":1897,"page":29},"Appendix","\u002Fdocs\u002Flang\u002Fappendix","docs\u002F2.lang\u002F30.appendix",[1898,1902,1906],{"title":1899,"path":1900,"stem":1901},"Primitive Types","\u002Fdocs\u002Flang\u002Fappendix\u002Fprimitives","docs\u002F2.lang\u002F30.appendix\u002F1.primitives",{"title":1903,"path":1904,"stem":1905},"Tokens","\u002Fdocs\u002Flang\u002Fappendix\u002Ftokens","docs\u002F2.lang\u002F30.appendix\u002F2.tokens",{"title":1907,"path":1908,"stem":1909},"RCU Format","\u002Fdocs\u002Flang\u002Fappendix\u002Frcu","docs\u002F2.lang\u002F30.appendix\u002F3.rcu",{"title":1911,"path":1912,"stem":1913,"children":1914},"CLI Reference","\u002Fdocs\u002Fcli","docs\u002F3.cli\u002Findex",[1915,1916,1920,1924,1928,1932,1936,1940,1944,1948,1952,1956,1960,1964,1968,1972,1976,1980,1984,1988,1992,1996,2000,2004,2008],{"title":49,"path":1912,"stem":1913},{"title":1917,"path":1918,"stem":1919},"Global Options","\u002Fdocs\u002Fcli\u002Fglobal","docs\u002F3.cli\u002F01.global",{"title":1921,"path":1922,"stem":1923},"add","\u002Fdocs\u002Fcli\u002Fadd","docs\u002F3.cli\u002F02.add",{"title":1925,"path":1926,"stem":1927},"build","\u002Fdocs\u002Fcli\u002Fbuild","docs\u002F3.cli\u002F03.build",{"title":1929,"path":1930,"stem":1931},"check","\u002Fdocs\u002Fcli\u002Fcheck","docs\u002F3.cli\u002F04.check",{"title":1933,"path":1934,"stem":1935},"clean","\u002Fdocs\u002Fcli\u002Fclean","docs\u002F3.cli\u002F05.clean",{"title":1937,"path":1938,"stem":1939},"doc","\u002Fdocs\u002Fcli\u002Fdoc","docs\u002F3.cli\u002F06.doc",{"title":1941,"path":1942,"stem":1943},"fmt","\u002Fdocs\u002Fcli\u002Ffmt","docs\u002F3.cli\u002F07.fmt",{"title":1945,"path":1946,"stem":1947},"help","\u002Fdocs\u002Fcli\u002Fhelp","docs\u002F3.cli\u002F08.help",{"title":1949,"path":1950,"stem":1951},"info","\u002Fdocs\u002Fcli\u002Finfo","docs\u002F3.cli\u002F09.info",{"title":1953,"path":1954,"stem":1955},"init","\u002Fdocs\u002Fcli\u002Finit","docs\u002F3.cli\u002F10.init",{"title":1957,"path":1958,"stem":1959},"install","\u002Fdocs\u002Fcli\u002Finstall","docs\u002F3.cli\u002F11.install",{"title":1961,"path":1962,"stem":1963},"lint","\u002Fdocs\u002Fcli\u002Flint","docs\u002F3.cli\u002F12.lint",{"title":1965,"path":1966,"stem":1967},"list","\u002Fdocs\u002Fcli\u002Flist","docs\u002F3.cli\u002F13.list",{"title":1969,"path":1970,"stem":1971},"login","\u002Fdocs\u002Fcli\u002Flogin","docs\u002F3.cli\u002F14.login",{"title":1973,"path":1974,"stem":1975},"logout","\u002Fdocs\u002Fcli\u002Flogout","docs\u002F3.cli\u002F15.logout",{"title":1977,"path":1978,"stem":1979},"new","\u002Fdocs\u002Fcli\u002Fnew","docs\u002F3.cli\u002F16.new",{"title":1981,"path":1982,"stem":1983},"pack","\u002Fdocs\u002Fcli\u002Fpack","docs\u002F3.cli\u002F17.pack",{"title":1985,"path":1986,"stem":1987},"publish","\u002Fdocs\u002Fcli\u002Fpublish","docs\u002F3.cli\u002F18.publish",{"title":1989,"path":1990,"stem":1991},"remove","\u002Fdocs\u002Fcli\u002Fremove","docs\u002F3.cli\u002F19.remove",{"title":1993,"path":1994,"stem":1995},"run","\u002Fdocs\u002Fcli\u002Frun","docs\u002F3.cli\u002F20.run",{"title":1997,"path":1998,"stem":1999},"test","\u002Fdocs\u002Fcli\u002Ftest","docs\u002F3.cli\u002F21.test",{"title":2001,"path":2002,"stem":2003},"uninstall","\u002Fdocs\u002Fcli\u002Funinstall","docs\u002F3.cli\u002F22.uninstall",{"title":2005,"path":2006,"stem":2007},"update","\u002Fdocs\u002Fcli\u002Fupdate","docs\u002F3.cli\u002F23.update",{"title":2009,"path":2010,"stem":2011},"version","\u002Fdocs\u002Fcli\u002Fversion","docs\u002F3.cli\u002F24.version",{"title":2013,"path":2014,"stem":2015,"children":2016},"Packaging","\u002Fdocs\u002Fpackaging","docs\u002F4.packaging\u002Findex",[2017,2018,2022,2026,2030,2034,2038,2042,2046,2050,2054],{"title":49,"path":2014,"stem":2015},{"title":2019,"path":2020,"stem":2021},"Package Types","\u002Fdocs\u002Fpackaging\u002Ftypes","docs\u002F4.packaging\u002F1.types",{"title":2023,"path":2024,"stem":2025},"Yanking","\u002Fdocs\u002Fpackaging\u002Fyanking","docs\u002F4.packaging\u002F10.yanking",{"title":2027,"path":2028,"stem":2029},"Directory Layout","\u002Fdocs\u002Fpackaging\u002Flayout","docs\u002F4.packaging\u002F2.layout",{"title":2031,"path":2032,"stem":2033},"Package Manifest","\u002Fdocs\u002Fpackaging\u002Fmanifest","docs\u002F4.packaging\u002F3.manifest",{"title":2035,"path":2036,"stem":2037},"Dependencies","\u002Fdocs\u002Fpackaging\u002Fdependencies","docs\u002F4.packaging\u002F4.dependencies",{"title":2039,"path":2040,"stem":2041},"The Registry","\u002Fdocs\u002Fpackaging\u002Fregistry","docs\u002F4.packaging\u002F5.registry",{"title":2043,"path":2044,"stem":2045},"Namespaces","\u002Fdocs\u002Fpackaging\u002Fnamespaces","docs\u002F4.packaging\u002F6.namespaces",{"title":2047,"path":2048,"stem":2049},"API Tokens","\u002Fdocs\u002Fpackaging\u002Ftokens","docs\u002F4.packaging\u002F7.tokens",{"title":2051,"path":2052,"stem":2053},"Publishing","\u002Fdocs\u002Fpackaging\u002Fpublishing","docs\u002F4.packaging\u002F8.publishing",{"title":2055,"path":2056,"stem":2057},"Versioning","\u002Fdocs\u002Fpackaging\u002Fversioning","docs\u002F4.packaging\u002F9.versioning",{"title":2059,"path":2060,"stem":2061,"children":2062},"API Reference","\u002Fdocs\u002Fapi","docs\u002F5.api\u002Findex",[2063,2065,2179,2204,2244,2293,2358,2429,2468,2549,2590,2629,2668,2738,2793,2819,2874,2901,2944,2987,3012,3063,3104,3174,3232,3290,3369,3382,3416,3439,3474,3488,3518,3541,3558,3569,3596,3630,3648,3671],{"title":2064,"path":2060,"stem":2061},"Table of Contents",{"title":2066,"path":2067,"stem":2068,"children":2069,"icon":2178},"Core","\u002Fdocs\u002Fapi\u002Fcore","docs\u002F5.api\u002F01.core\u002F0.index",[2070,2071,2075,2079,2083,2087,2091,2095,2099,2102,2106,2109,2113,2116,2120,2123,2127,2131,2135,2139,2143,2147,2151,2155,2159,2162,2166,2170,2174],{"title":49,"path":2067,"stem":2068},{"title":2072,"path":2073,"stem":2074},"Comparable","\u002Fdocs\u002Fapi\u002Fcore\u002Fcomparable","docs\u002F5.api\u002F01.core\u002F1.interfaces\u002Fcomparable",{"title":2076,"path":2077,"stem":2078},"Equatable","\u002Fdocs\u002Fapi\u002Fcore\u002Fequatable","docs\u002F5.api\u002F01.core\u002F1.interfaces\u002Fequatable",{"title":2080,"path":2081,"stem":2082},"Hashable","\u002Fdocs\u002Fapi\u002Fcore\u002Fhashable","docs\u002F5.api\u002F01.core\u002F1.interfaces\u002Fhashable",{"title":2084,"path":2085,"stem":2086},"Iterable","\u002Fdocs\u002Fapi\u002Fcore\u002Fiterable","docs\u002F5.api\u002F01.core\u002F1.interfaces\u002Fiterable",{"title":2088,"path":2089,"stem":2090},"Iterator","\u002Fdocs\u002Fapi\u002Fcore\u002Fiterator","docs\u002F5.api\u002F01.core\u002F1.interfaces\u002Fiterator",{"title":2092,"path":2093,"stem":2094},"Sendable","\u002Fdocs\u002Fapi\u002Fcore\u002Fsendable","docs\u002F5.api\u002F01.core\u002F1.interfaces\u002Fsendable",{"title":2096,"path":2097,"stem":2098},"Iterator adaptors","\u002Fdocs\u002Fapi\u002Fcore\u002Fadaptors","docs\u002F5.api\u002F01.core\u002F2.types\u002Fadaptors",{"title":1419,"path":2100,"stem":2101},"\u002Fdocs\u002Fapi\u002Fcore\u002Fbooleans","docs\u002F5.api\u002F01.core\u002F2.types\u002Fbooleans",{"title":2103,"path":2104,"stem":2105},"Build","\u002Fdocs\u002Fapi\u002Fcore\u002Fbuild","docs\u002F5.api\u002F01.core\u002F2.types\u002Fbuild",{"title":1423,"path":2107,"stem":2108},"\u002Fdocs\u002Fapi\u002Fcore\u002Fcharacters","docs\u002F5.api\u002F01.core\u002F2.types\u002Fcharacters",{"title":2110,"path":2111,"stem":2112},"Compiler","\u002Fdocs\u002Fapi\u002Fcore\u002Fcompiler","docs\u002F5.api\u002F01.core\u002F2.types\u002Fcompiler",{"title":1810,"path":2114,"stem":2115},"\u002Fdocs\u002Fapi\u002Fcore\u002Fconfig","docs\u002F5.api\u002F01.core\u002F2.types\u002Fconfig",{"title":2117,"path":2118,"stem":2119},"Floating-point types","\u002Fdocs\u002Fapi\u002Fcore\u002Ffloating-point","docs\u002F5.api\u002F01.core\u002F2.types\u002Ffloating-point",{"title":1411,"path":2121,"stem":2122},"\u002Fdocs\u002Fapi\u002Fcore\u002Fintegers","docs\u002F5.api\u002F01.core\u002F2.types\u002Fintegers",{"title":2124,"path":2125,"stem":2126},"Ordering","\u002Fdocs\u002Fapi\u002Fcore\u002Fordering","docs\u002F5.api\u002F01.core\u002F2.types\u002Fordering",{"title":2128,"path":2129,"stem":2130},"SemanticVersion","\u002Fdocs\u002Fapi\u002Fcore\u002Fsemantic-version","docs\u002F5.api\u002F01.core\u002F2.types\u002Fsemantic-version",{"title":2132,"path":2133,"stem":2134},"Source","\u002Fdocs\u002Fapi\u002Fcore\u002Fsource","docs\u002F5.api\u002F01.core\u002F2.types\u002Fsource",{"title":2136,"path":2137,"stem":2138},"Target","\u002Fdocs\u002Fapi\u002Fcore\u002Ftarget","docs\u002F5.api\u002F01.core\u002F2.types\u002Ftarget",{"title":2140,"path":2141,"stem":2142},"Integer arithmetic","\u002Fdocs\u002Fapi\u002Fcore\u002Farithmetic","docs\u002F5.api\u002F01.core\u002F3.functions\u002Farithmetic",{"title":2144,"path":2145,"stem":2146},"Atomic intrinsics","\u002Fdocs\u002Fapi\u002Fcore\u002Fatomic","docs\u002F5.api\u002F01.core\u002F3.functions\u002Fatomic",{"title":2148,"path":2149,"stem":2150},"Bit operations","\u002Fdocs\u002Fapi\u002Fcore\u002Fbits","docs\u002F5.api\u002F01.core\u002F3.functions\u002Fbits",{"title":2152,"path":2153,"stem":2154},"Byte order","\u002Fdocs\u002Fapi\u002Fcore\u002Fbyte-order","docs\u002F5.api\u002F01.core\u002F3.functions\u002Fbyte-order",{"title":2156,"path":2157,"stem":2158},"Checked conversion","\u002Fdocs\u002Fapi\u002Fcore\u002Fconversion","docs\u002F5.api\u002F01.core\u002F3.functions\u002Fconversion",{"title":1818,"path":2160,"stem":2161},"\u002Fdocs\u002Fapi\u002Fcore\u002Fdiagnostics","docs\u002F5.api\u002F01.core\u002F3.functions\u002Fdiagnostics",{"title":2163,"path":2164,"stem":2165},"Float classification","\u002Fdocs\u002Fapi\u002Fcore\u002Ffloat-classification","docs\u002F5.api\u002F01.core\u002F3.functions\u002Ffloat-classification",{"title":2167,"path":2168,"stem":2169},"Outcomes","\u002Fdocs\u002Fapi\u002Fcore\u002Foutcomes","docs\u002F5.api\u002F01.core\u002F3.functions\u002Foutcomes",{"title":2171,"path":2172,"stem":2173},"Process start","\u002Fdocs\u002Fapi\u002Fcore\u002Fstartup","docs\u002F5.api\u002F01.core\u002F3.functions\u002Fstartup",{"title":2175,"path":2176,"stem":2177},"Zeroize","\u002Fdocs\u002Fapi\u002Fcore\u002Fzeroize","docs\u002F5.api\u002F01.core\u002F3.functions\u002Fzeroize","i-lucide-atom",{"title":751,"path":2180,"stem":2181,"children":2182,"icon":756},"\u002Fdocs\u002Fapi\u002Fmemory","docs\u002F5.api\u002F02.memory\u002F0.index",[2183,2184,2188,2192,2196,2200],{"title":49,"path":2180,"stem":2181},{"title":2185,"path":2186,"stem":2187},"Alignment","\u002Fdocs\u002Fapi\u002Fmemory\u002Falignment","docs\u002F5.api\u002F02.memory\u002F3.functions\u002Falignment",{"title":2189,"path":2190,"stem":2191},"Heap allocation","\u002Fdocs\u002Fapi\u002Fmemory\u002Fallocation","docs\u002F5.api\u002F02.memory\u002F3.functions\u002Fallocation",{"title":2193,"path":2194,"stem":2195},"Block operations","\u002Fdocs\u002Fapi\u002Fmemory\u002Fblocks","docs\u002F5.api\u002F02.memory\u002F3.functions\u002Fblocks",{"title":2197,"path":2198,"stem":2199},"Unaligned and byte-order access","\u002Fdocs\u002Fapi\u002Fmemory\u002Funaligned-access","docs\u002F5.api\u002F02.memory\u002F3.functions\u002Funaligned-access",{"title":2201,"path":2202,"stem":2203},"Pages","\u002Fdocs\u002Fapi\u002Fmemory\u002Fpages","docs\u002F5.api\u002F02.memory\u002F4.constants\u002Fpages",{"title":2205,"path":2206,"stem":2207,"children":2208,"icon":654},"Allocator","\u002Fdocs\u002Fapi\u002Fallocator","docs\u002F5.api\u002F03.allocator\u002F0.index",[2209,2210,2213,2217,2221,2225,2229,2232,2236,2240],{"title":49,"path":2206,"stem":2207},{"title":2205,"path":2211,"stem":2212},"\u002Fdocs\u002Fapi\u002Fallocator\u002Fallocator","docs\u002F5.api\u002F03.allocator\u002F1.interfaces\u002Fallocator",{"title":2214,"path":2215,"stem":2216},"AllocError","\u002Fdocs\u002Fapi\u002Fallocator\u002Falloc-error","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Falloc-error",{"title":2218,"path":2219,"stem":2220},"Arena","\u002Fdocs\u002Fapi\u002Fallocator\u002Farena","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Farena",{"title":2222,"path":2223,"stem":2224},"Box\u003CT>","\u002Fdocs\u002Fapi\u002Fallocator\u002Fbox","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Fbox",{"title":2226,"path":2227,"stem":2228},"FixedBuffer","\u002Fdocs\u002Fapi\u002Fallocator\u002Ffixed-buffer","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Ffixed-buffer",{"title":1886,"path":2230,"stem":2231},"\u002Fdocs\u002Fapi\u002Fallocator\u002Flayout","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Flayout",{"title":2233,"path":2234,"stem":2235},"Pool","\u002Fdocs\u002Fapi\u002Fallocator\u002Fpool","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Fpool",{"title":2237,"path":2238,"stem":2239},"Shared ownership","\u002Fdocs\u002Fapi\u002Fallocator\u002Fshared","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Fshared",{"title":2241,"path":2242,"stem":2243},"SystemAllocator","\u002Fdocs\u002Fapi\u002Fallocator\u002Fsystem-allocator","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Fsystem-allocator",{"title":2245,"path":2246,"stem":2247,"children":2248,"icon":2292},"Math","\u002Fdocs\u002Fapi\u002Fmath","docs\u002F5.api\u002F04.math\u002F0.index",[2249,2250,2254,2258,2262,2266,2270,2274,2277,2281,2285,2289],{"title":49,"path":2246,"stem":2247},{"title":2251,"path":2252,"stem":2253},"Complex numbers","\u002Fdocs\u002Fapi\u002Fmath\u002Fcomplex","docs\u002F5.api\u002F04.math\u002F2.types\u002Fcomplex",{"title":2255,"path":2256,"stem":2257},"Absolute value, minimum and maximum","\u002Fdocs\u002Fapi\u002Fmath\u002Fabs-min-max","docs\u002F5.api\u002F04.math\u002F3.functions\u002Fabs-min-max",{"title":2259,"path":2260,"stem":2261},"Classification and special values","\u002Fdocs\u002Fapi\u002Fmath\u002Fclassification","docs\u002F5.api\u002F04.math\u002F3.functions\u002Fclassification",{"title":2263,"path":2264,"stem":2265},"Exponentials and logarithms","\u002Fdocs\u002Fapi\u002Fmath\u002Fexponential","docs\u002F5.api\u002F04.math\u002F3.functions\u002Fexponential",{"title":2267,"path":2268,"stem":2269},"Floating-point representation","\u002Fdocs\u002Fapi\u002Fmath\u002Ffloat-representation","docs\u002F5.api\u002F04.math\u002F3.functions\u002Ffloat-representation",{"title":2271,"path":2272,"stem":2273},"Hyperbolic functions","\u002Fdocs\u002Fapi\u002Fmath\u002Fhyperbolic","docs\u002F5.api\u002F04.math\u002F3.functions\u002Fhyperbolic",{"title":2140,"path":2275,"stem":2276},"\u002Fdocs\u002Fapi\u002Fmath\u002Finteger","docs\u002F5.api\u002F04.math\u002F3.functions\u002Finteger",{"title":2278,"path":2279,"stem":2280},"Powers and roots","\u002Fdocs\u002Fapi\u002Fmath\u002Fpowers","docs\u002F5.api\u002F04.math\u002F3.functions\u002Fpowers",{"title":2282,"path":2283,"stem":2284},"Rounding and remainders","\u002Fdocs\u002Fapi\u002Fmath\u002Frounding","docs\u002F5.api\u002F04.math\u002F3.functions\u002Frounding",{"title":2286,"path":2287,"stem":2288},"Trigonometry","\u002Fdocs\u002Fapi\u002Fmath\u002Ftrigonometry","docs\u002F5.api\u002F04.math\u002F3.functions\u002Ftrigonometry",{"title":1442,"path":2290,"stem":2291},"\u002Fdocs\u002Fapi\u002Fmath\u002Fconstants","docs\u002F5.api\u002F04.math\u002F4.constants\u002Fconstants","i-lucide-sigma",{"title":680,"path":2294,"stem":2295,"children":2296,"icon":685},"\u002Fdocs\u002Fapi\u002Ftext","docs\u002F5.api\u002F05.text\u002F0.index",[2297,2298,2302,2306,2310,2314,2318,2322,2326,2330,2334,2338,2342,2346,2350,2354],{"title":49,"path":2294,"stem":2295},{"title":2299,"path":2300,"stem":2301},"Debug","\u002Fdocs\u002Fapi\u002Ftext\u002Fdebug","docs\u002F5.api\u002F05.text\u002F1.interfaces\u002Fdebug",{"title":2303,"path":2304,"stem":2305},"Display","\u002Fdocs\u002Fapi\u002Ftext\u002Fdisplay","docs\u002F5.api\u002F05.text\u002F1.interfaces\u002Fdisplay",{"title":2307,"path":2308,"stem":2309},"ParseFailure","\u002Fdocs\u002Fapi\u002Ftext\u002Fparse-failure","docs\u002F5.api\u002F05.text\u002F1.interfaces\u002Fparse-failure",{"title":2311,"path":2312,"stem":2313},"TextWriter","\u002Fdocs\u002Fapi\u002Ftext\u002Ftext-writer","docs\u002F5.api\u002F05.text\u002F1.interfaces\u002Ftext-writer",{"title":2315,"path":2316,"stem":2317},"BufferWriter","\u002Fdocs\u002Fapi\u002Ftext\u002Fbuffer-writer","docs\u002F5.api\u002F05.text\u002F2.types\u002Fbuffer-writer",{"title":2319,"path":2320,"stem":2321},"CString","\u002Fdocs\u002Fapi\u002Ftext\u002Fc-string","docs\u002F5.api\u002F05.text\u002F2.types\u002Fc-string",{"title":2323,"path":2324,"stem":2325},"FormatError","\u002Fdocs\u002Fapi\u002Ftext\u002Fformat-error","docs\u002F5.api\u002F05.text\u002F2.types\u002Fformat-error",{"title":2327,"path":2328,"stem":2329},"FormatSpec","\u002Fdocs\u002Fapi\u002Ftext\u002Fformat-spec","docs\u002F5.api\u002F05.text\u002F2.types\u002Fformat-spec",{"title":2331,"path":2332,"stem":2333},"String","\u002Fdocs\u002Fapi\u002Ftext\u002Fstring","docs\u002F5.api\u002F05.text\u002F2.types\u002Fstring",{"title":2335,"path":2336,"stem":2337},"StringBuilder","\u002Fdocs\u002Fapi\u002Ftext\u002Fstring-builder","docs\u002F5.api\u002F05.text\u002F2.types\u002Fstring-builder",{"title":2339,"path":2340,"stem":2341},"StringView","\u002Fdocs\u002Fapi\u002Ftext\u002Fstring-view","docs\u002F5.api\u002F05.text\u002F2.types\u002Fstring-view",{"title":2343,"path":2344,"stem":2345},"TextError","\u002Fdocs\u002Fapi\u002Ftext\u002Ftext-error","docs\u002F5.api\u002F05.text\u002F2.types\u002Ftext-error",{"title":2347,"path":2348,"stem":2349},"Utf8Error","\u002Fdocs\u002Fapi\u002Ftext\u002Futf8-error","docs\u002F5.api\u002F05.text\u002F2.types\u002Futf8-error",{"title":2351,"path":2352,"stem":2353},"Transforming text","\u002Fdocs\u002Fapi\u002Ftext\u002Ftransform","docs\u002F5.api\u002F05.text\u002F3.functions\u002Ftransform",{"title":2355,"path":2356,"stem":2357},"UTF-8","\u002Fdocs\u002Fapi\u002Ftext\u002Futf8","docs\u002F5.api\u002F05.text\u002F3.functions\u002Futf8",{"title":2359,"path":2360,"stem":2361,"children":2362,"icon":2428},"Format","\u002Fdocs\u002Fapi\u002Fformat","docs\u002F5.api\u002F06.format\u002F0.index",[2363,2364,2368,2372,2376,2380,2384,2388,2392,2396,2400,2404,2408,2412,2416,2420,2424],{"title":49,"path":2360,"stem":2361},{"title":2365,"path":2366,"stem":2367},"ByteCursor","\u002Fdocs\u002Fapi\u002Fformat\u002Fbyte-cursor","docs\u002F5.api\u002F06.format\u002F2.types\u002Fbyte-cursor",{"title":2369,"path":2370,"stem":2371},"FixedNat","\u002Fdocs\u002Fapi\u002Fformat\u002Ffixed-nat","docs\u002F5.api\u002F06.format\u002F2.types\u002Ffixed-nat",{"title":2373,"path":2374,"stem":2375},"FloatLayout","\u002Fdocs\u002Fapi\u002Fformat\u002Ffloat-layout","docs\u002F5.api\u002F06.format\u002F2.types\u002Ffloat-layout",{"title":2377,"path":2378,"stem":2379},"Float128","\u002Fdocs\u002Fapi\u002Fformat\u002Ffloat128","docs\u002F5.api\u002F06.format\u002F2.types\u002Ffloat128",{"title":2381,"path":2382,"stem":2383},"Float256","\u002Fdocs\u002Fapi\u002Fformat\u002Ffloat256","docs\u002F5.api\u002F06.format\u002F2.types\u002Ffloat256",{"title":2385,"path":2386,"stem":2387},"Float512","\u002Fdocs\u002Fapi\u002Fformat\u002Ffloat512","docs\u002F5.api\u002F06.format\u002F2.types\u002Ffloat512",{"title":2389,"path":2390,"stem":2391},"Float80","\u002Fdocs\u002Fapi\u002Fformat\u002Ffloat80","docs\u002F5.api\u002F06.format\u002F2.types\u002Ffloat80",{"title":2393,"path":2394,"stem":2395},"ParseError","\u002Fdocs\u002Fapi\u002Fformat\u002Fparse-error","docs\u002F5.api\u002F06.format\u002F2.types\u002Fparse-error",{"title":2397,"path":2398,"stem":2399},"Writing characters and booleans","\u002Fdocs\u002Fapi\u002Fformat\u002Fcharacter-text","docs\u002F5.api\u002F06.format\u002F3.functions\u002Fcharacter-text",{"title":2401,"path":2402,"stem":2403},"Float classification and bits","\u002Fdocs\u002Fapi\u002Fformat\u002Ffloat-bits","docs\u002F5.api\u002F06.format\u002F3.functions\u002Ffloat-bits",{"title":2405,"path":2406,"stem":2407},"Writing floats","\u002Fdocs\u002Fapi\u002Fformat\u002Ffloat-text","docs\u002F5.api\u002F06.format\u002F3.functions\u002Ffloat-text",{"title":2409,"path":2410,"stem":2411},"Writing integers","\u002Fdocs\u002Fapi\u002Fformat\u002Finteger-text","docs\u002F5.api\u002F06.format\u002F3.functions\u002Finteger-text",{"title":2413,"path":2414,"stem":2415},"Parsing integers, booleans and characters","\u002Fdocs\u002Fapi\u002Fformat\u002Fparse","docs\u002F5.api\u002F06.format\u002F3.functions\u002Fparse",{"title":2417,"path":2418,"stem":2419},"Parsing floats","\u002Fdocs\u002Fapi\u002Fformat\u002Fparse-float","docs\u002F5.api\u002F06.format\u002F3.functions\u002Fparse-float",{"title":2421,"path":2422,"stem":2423},"Render","\u002Fdocs\u002Fapi\u002Fformat\u002Frender","docs\u002F5.api\u002F06.format\u002F3.functions\u002Frender",{"title":2425,"path":2426,"stem":2427},"WriteFormat","\u002Fdocs\u002Fapi\u002Fformat\u002Fwrite-format","docs\u002F5.api\u002F06.format\u002F3.functions\u002Fwrite-format","i-lucide-whole-word",{"title":2430,"path":2431,"stem":2432,"children":2433,"icon":2467},"Unicode","\u002Fdocs\u002Fapi\u002Funicode","docs\u002F5.api\u002F07.unicode\u002F0.index",[2434,2435,2439,2443,2447,2451,2455,2459,2463],{"title":49,"path":2431,"stem":2432},{"title":2436,"path":2437,"stem":2438},"GeneralCategory","\u002Fdocs\u002Fapi\u002Funicode\u002Fgeneral-category","docs\u002F5.api\u002F07.unicode\u002F2.types\u002Fgeneral-category",{"title":2440,"path":2441,"stem":2442},"GraphemeBreak","\u002Fdocs\u002Fapi\u002Funicode\u002Fgrapheme-break","docs\u002F5.api\u002F07.unicode\u002F2.types\u002Fgrapheme-break",{"title":2444,"path":2445,"stem":2446},"Case mapping","\u002Fdocs\u002Fapi\u002Funicode\u002Fcase","docs\u002F5.api\u002F07.unicode\u002F3.functions\u002Fcase",{"title":2448,"path":2449,"stem":2450},"Grapheme clusters","\u002Fdocs\u002Fapi\u002Funicode\u002Fgraphemes","docs\u002F5.api\u002F07.unicode\u002F3.functions\u002Fgraphemes",{"title":2452,"path":2453,"stem":2454},"Normalization","\u002Fdocs\u002Fapi\u002Funicode\u002Fnormalization","docs\u002F5.api\u002F07.unicode\u002F3.functions\u002Fnormalization",{"title":2456,"path":2457,"stem":2458},"Character properties","\u002Fdocs\u002Fapi\u002Funicode\u002Fproperties","docs\u002F5.api\u002F07.unicode\u002F3.functions\u002Fproperties",{"title":2460,"path":2461,"stem":2462},"Scripts","\u002Fdocs\u002Fapi\u002Funicode\u002Fscripts","docs\u002F5.api\u002F07.unicode\u002F3.functions\u002Fscripts",{"title":2464,"path":2465,"stem":2466},"Generated tables","\u002Fdocs\u002Fapi\u002Funicode\u002Ftables","docs\u002F5.api\u002F07.unicode\u002F4.constants\u002Ftables","i-lucide-languages",{"title":873,"path":2469,"stem":2470,"children":2471,"icon":878},"\u002Fdocs\u002Fapi\u002Fcollections","docs\u002F5.api\u002F08.collections\u002F0.index",[2472,2473,2477,2481,2485,2489,2493,2497,2501,2505,2509,2513,2517,2521,2525,2529,2533,2537,2541,2545],{"title":49,"path":2469,"stem":2470},{"title":2474,"path":2475,"stem":2476},"Array\u003CT>","\u002Fdocs\u002Fapi\u002Fcollections\u002Farray","docs\u002F5.api\u002F08.collections\u002F2.types\u002Farray",{"title":2478,"path":2479,"stem":2480},"BitSet","\u002Fdocs\u002Fapi\u002Fcollections\u002Fbit-set","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fbit-set",{"title":2482,"path":2483,"stem":2484},"CollectionError","\u002Fdocs\u002Fapi\u002Fcollections\u002Fcollection-error","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fcollection-error",{"title":2486,"path":2487,"stem":2488},"Deque\u003CT>","\u002Fdocs\u002Fapi\u002Fcollections\u002Fdeque","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fdeque",{"title":2490,"path":2491,"stem":2492},"HashMap\u003CK, V>","\u002Fdocs\u002Fapi\u002Fcollections\u002Fhash-map","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fhash-map",{"title":2494,"path":2495,"stem":2496},"HashSet\u003CT>","\u002Fdocs\u002Fapi\u002Fcollections\u002Fhash-set","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fhash-set",{"title":2498,"path":2499,"stem":2500},"Slice iterators","\u002Fdocs\u002Fapi\u002Fcollections\u002Fiterators","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fiterators",{"title":2502,"path":2503,"stem":2504},"KeyValue\u003CK, V>","\u002Fdocs\u002Fapi\u002Fcollections\u002Fkey-value","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fkey-value",{"title":2506,"path":2507,"stem":2508},"LruCache\u003CK, V>","\u002Fdocs\u002Fapi\u002Fcollections\u002Flru-cache","docs\u002F5.api\u002F08.collections\u002F2.types\u002Flru-cache",{"title":2510,"path":2511,"stem":2512},"PriorityQueue\u003CT>","\u002Fdocs\u002Fapi\u002Fcollections\u002Fpriority-queue","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fpriority-queue",{"title":2514,"path":2515,"stem":2516},"SmallVector\u003CT>","\u002Fdocs\u002Fapi\u002Fcollections\u002Fsmall-vector","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fsmall-vector",{"title":2518,"path":2519,"stem":2520},"Table\u003CK, V>","\u002Fdocs\u002Fapi\u002Fcollections\u002Ftable","docs\u002F5.api\u002F08.collections\u002F2.types\u002Ftable",{"title":2522,"path":2523,"stem":2524},"TableSeed","\u002Fdocs\u002Fapi\u002Fcollections\u002Ftable-seed","docs\u002F5.api\u002F08.collections\u002F2.types\u002Ftable-seed",{"title":2526,"path":2527,"stem":2528},"Tree\u003CK, V>","\u002Fdocs\u002Fapi\u002Fcollections\u002Ftree","docs\u002F5.api\u002F08.collections\u002F2.types\u002Ftree",{"title":2530,"path":2531,"stem":2532},"TreeMap\u003CK, V>","\u002Fdocs\u002Fapi\u002Fcollections\u002Ftree-map","docs\u002F5.api\u002F08.collections\u002F2.types\u002Ftree-map",{"title":2534,"path":2535,"stem":2536},"TreeSet\u003CT>","\u002Fdocs\u002Fapi\u002Fcollections\u002Ftree-set","docs\u002F5.api\u002F08.collections\u002F2.types\u002Ftree-set",{"title":2538,"path":2539,"stem":2540},"Vector\u003CT>","\u002Fdocs\u002Fapi\u002Fcollections\u002Fvector","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fvector",{"title":2542,"path":2543,"stem":2544},"Comparing","\u002Fdocs\u002Fapi\u002Fcollections\u002Fcomparing","docs\u002F5.api\u002F08.collections\u002F3.functions\u002Fcomparing",{"title":2546,"path":2547,"stem":2548},"Hashing","\u002Fdocs\u002Fapi\u002Fcollections\u002Fhashing","docs\u002F5.api\u002F08.collections\u002F3.functions\u002Fhashing",{"title":924,"path":2550,"stem":2551,"children":2552,"icon":929},"\u002Fdocs\u002Fapi\u002Falgorithms","docs\u002F5.api\u002F09.algorithms\u002F0.index",[2553,2554,2558,2562,2566,2570,2574,2578,2582,2586],{"title":49,"path":2550,"stem":2551},{"title":2555,"path":2556,"stem":2557},"Comparing slices","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fcomparing","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fcomparing",{"title":2559,"path":2560,"stem":2561},"Folding","\u002Fdocs\u002Fapi\u002Falgorithms\u002Ffolding","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Ffolding",{"title":2563,"path":2564,"stem":2565},"Heaps","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fheaps","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fheaps",{"title":2567,"path":2568,"stem":2569},"Minimum and maximum","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fmin-max","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fmin-max",{"title":2571,"path":2572,"stem":2573},"Modifying","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fmodifying","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fmodifying",{"title":2575,"path":2576,"stem":2577},"Numeric sequences","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fnumeric","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fnumeric",{"title":2579,"path":2580,"stem":2581},"Searching","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fsearching","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fsearching",{"title":2583,"path":2584,"stem":2585},"Sorted slices","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fsorted-slices","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fsorted-slices",{"title":2587,"path":2588,"stem":2589},"Sorting","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fsorting","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fsorting",{"title":2591,"path":2592,"stem":2593,"children":2594,"icon":2628},"Hash","\u002Fdocs\u002Fapi\u002Fhash","docs\u002F5.api\u002F10.hash\u002F0.index",[2595,2596,2600,2604,2608,2612,2616,2620,2624],{"title":49,"path":2592,"stem":2593},{"title":2597,"path":2598,"stem":2599},"Hasher","\u002Fdocs\u002Fapi\u002Fhash\u002Fhasher","docs\u002F5.api\u002F10.hash\u002F1.interfaces\u002Fhasher",{"title":2601,"path":2602,"stem":2603},"Adler32","\u002Fdocs\u002Fapi\u002Fhash\u002Fadler32","docs\u002F5.api\u002F10.hash\u002F2.types\u002Fadler32",{"title":2605,"path":2606,"stem":2607},"Crc32","\u002Fdocs\u002Fapi\u002Fhash\u002Fcrc32","docs\u002F5.api\u002F10.hash\u002F2.types\u002Fcrc32",{"title":2609,"path":2610,"stem":2611},"Crc32c","\u002Fdocs\u002Fapi\u002Fhash\u002Fcrc32c","docs\u002F5.api\u002F10.hash\u002F2.types\u002Fcrc32c",{"title":2613,"path":2614,"stem":2615},"Fnv1a32","\u002Fdocs\u002Fapi\u002Fhash\u002Ffnv1a32","docs\u002F5.api\u002F10.hash\u002F2.types\u002Ffnv1a32",{"title":2617,"path":2618,"stem":2619},"Fnv1a64","\u002Fdocs\u002Fapi\u002Fhash\u002Ffnv1a64","docs\u002F5.api\u002F10.hash\u002F2.types\u002Ffnv1a64",{"title":2621,"path":2622,"stem":2623},"SipHash24","\u002Fdocs\u002Fapi\u002Fhash\u002Fsip-hash24","docs\u002F5.api\u002F10.hash\u002F2.types\u002Fsip-hash24",{"title":2625,"path":2626,"stem":2627},"XxHash64","\u002Fdocs\u002Fapi\u002Fhash\u002Fxx-hash64","docs\u002F5.api\u002F10.hash\u002F2.types\u002Fxx-hash64","i-lucide-hash",{"title":2630,"path":2631,"stem":2632,"children":2633,"icon":2667},"Random","\u002Fdocs\u002Fapi\u002Frandom","docs\u002F5.api\u002F11.random\u002F0.index",[2634,2635,2639,2643,2647,2651,2655,2659,2663],{"title":49,"path":2631,"stem":2632},{"title":2636,"path":2637,"stem":2638},"RandomGenerator","\u002Fdocs\u002Fapi\u002Frandom\u002Frandom-generator","docs\u002F5.api\u002F11.random\u002F1.interfaces\u002Frandom-generator",{"title":2640,"path":2641,"stem":2642},"Pcg64Dxsm","\u002Fdocs\u002Fapi\u002Frandom\u002Fpcg64-dxsm","docs\u002F5.api\u002F11.random\u002F2.types\u002Fpcg64-dxsm",{"title":2644,"path":2645,"stem":2646},"Reservoir\u003CT>","\u002Fdocs\u002Fapi\u002Frandom\u002Freservoir","docs\u002F5.api\u002F11.random\u002F2.types\u002Freservoir",{"title":2648,"path":2649,"stem":2650},"SplitMix64","\u002Fdocs\u002Fapi\u002Frandom\u002Fsplit-mix64","docs\u002F5.api\u002F11.random\u002F2.types\u002Fsplit-mix64",{"title":2652,"path":2653,"stem":2654},"Xoshiro256","\u002Fdocs\u002Fapi\u002Frandom\u002Fxoshiro256","docs\u002F5.api\u002F11.random\u002F2.types\u002Fxoshiro256",{"title":2656,"path":2657,"stem":2658},"Distributions","\u002Fdocs\u002Fapi\u002Frandom\u002Fdistributions","docs\u002F5.api\u002F11.random\u002F3.functions\u002Fdistributions",{"title":2660,"path":2661,"stem":2662},"Sampling and shuffling","\u002Fdocs\u002Fapi\u002Frandom\u002Fsampling","docs\u002F5.api\u002F11.random\u002F3.functions\u002Fsampling",{"title":2664,"path":2665,"stem":2666},"Uniform ranges","\u002Fdocs\u002Fapi\u002Frandom\u002Funiform","docs\u002F5.api\u002F11.random\u002F3.functions\u002Funiform","i-lucide-dices",{"title":2669,"path":2670,"stem":2671,"children":2672,"icon":1261},"Io","\u002Fdocs\u002Fapi\u002Fio","docs\u002F5.api\u002F12.io\u002F0.index",[2673,2674,2678,2682,2686,2690,2694,2698,2702,2706,2710,2714,2718,2722,2726,2730,2734],{"title":49,"path":2670,"stem":2671},{"title":2675,"path":2676,"stem":2677},"Reader","\u002Fdocs\u002Fapi\u002Fio\u002Freader","docs\u002F5.api\u002F12.io\u002F1.interfaces\u002Freader",{"title":2679,"path":2680,"stem":2681},"Seeker","\u002Fdocs\u002Fapi\u002Fio\u002Fseeker","docs\u002F5.api\u002F12.io\u002F1.interfaces\u002Fseeker",{"title":2683,"path":2684,"stem":2685},"Writer","\u002Fdocs\u002Fapi\u002Fio\u002Fwriter","docs\u002F5.api\u002F12.io\u002F1.interfaces\u002Fwriter",{"title":2687,"path":2688,"stem":2689},"BufferedReader","\u002Fdocs\u002Fapi\u002Fio\u002Fbuffered-reader","docs\u002F5.api\u002F12.io\u002F2.types\u002Fbuffered-reader",{"title":2691,"path":2692,"stem":2693},"BufferedWriter","\u002Fdocs\u002Fapi\u002Fio\u002Fbuffered-writer","docs\u002F5.api\u002F12.io\u002F2.types\u002Fbuffered-writer",{"title":2695,"path":2696,"stem":2697},"ConsoleWriter","\u002Fdocs\u002Fapi\u002Fio\u002Fconsole-writer","docs\u002F5.api\u002F12.io\u002F2.types\u002Fconsole-writer",{"title":2699,"path":2700,"stem":2701},"IoError","\u002Fdocs\u002Fapi\u002Fio\u002Fio-error","docs\u002F5.api\u002F12.io\u002F2.types\u002Fio-error",{"title":2703,"path":2704,"stem":2705},"Memory streams","\u002Fdocs\u002Fapi\u002Fio\u002Fmemory-stream","docs\u002F5.api\u002F12.io\u002F2.types\u002Fmemory-stream",{"title":2707,"path":2708,"stem":2709},"StandardError","\u002Fdocs\u002Fapi\u002Fio\u002Fstandard-error","docs\u002F5.api\u002F12.io\u002F2.types\u002Fstandard-error",{"title":2711,"path":2712,"stem":2713},"StandardIn","\u002Fdocs\u002Fapi\u002Fio\u002Fstandard-in","docs\u002F5.api\u002F12.io\u002F2.types\u002Fstandard-in",{"title":2715,"path":2716,"stem":2717},"StandardOut","\u002Fdocs\u002Fapi\u002Fio\u002Fstandard-out","docs\u002F5.api\u002F12.io\u002F2.types\u002Fstandard-out",{"title":2719,"path":2720,"stem":2721},"StreamWriter","\u002Fdocs\u002Fapi\u002Fio\u002Fstream-writer","docs\u002F5.api\u002F12.io\u002F2.types\u002Fstream-writer",{"title":2723,"path":2724,"stem":2725},"Binary encoding","\u002Fdocs\u002Fapi\u002Fio\u002Fbinary","docs\u002F5.api\u002F12.io\u002F3.functions\u002Fbinary",{"title":2727,"path":2728,"stem":2729},"Print","\u002Fdocs\u002Fapi\u002Fio\u002Fprint","docs\u002F5.api\u002F12.io\u002F3.functions\u002Fprint",{"title":2731,"path":2732,"stem":2733},"PrintLine","\u002Fdocs\u002Fapi\u002Fio\u002Fprint-line","docs\u002F5.api\u002F12.io\u002F3.functions\u002Fprint-line",{"title":2735,"path":2736,"stem":2737},"ReadLine","\u002Fdocs\u002Fapi\u002Fio\u002Fread-line","docs\u002F5.api\u002F12.io\u002F3.functions\u002Fread-line",{"title":2739,"path":2740,"stem":2741,"children":2742,"icon":2792},"FileSystem","\u002Fdocs\u002Fapi\u002Ffilesystem","docs\u002F5.api\u002F13.filesystem\u002F0.index",[2743,2744,2748,2752,2756,2760,2764,2768,2772,2776,2780,2784,2788],{"title":49,"path":2740,"stem":2741},{"title":2745,"path":2746,"stem":2747},"AtomicWrite","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Fatomic-write","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Fatomic-write",{"title":2749,"path":2750,"stem":2751},"Capabilities","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Fcapabilities","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Fcapabilities",{"title":2753,"path":2754,"stem":2755},"File","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Ffile","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Ffile",{"title":2757,"path":2758,"stem":2759},"FileStream","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Ffile-stream","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Ffile-stream",{"title":2761,"path":2762,"stem":2763},"Metadata","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Fmetadata","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Fmetadata",{"title":2765,"path":2766,"stem":2767},"Permissions","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Fpermissions","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Fpermissions",{"title":2769,"path":2770,"stem":2771},"TemporaryDirectoryHandle","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Ftemporary-directory-handle","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Ftemporary-directory-handle",{"title":2773,"path":2774,"stem":2775},"TemporaryFile","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Ftemporary-file","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Ftemporary-file",{"title":2777,"path":2778,"stem":2779},"Directories","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Fdirectories","docs\u002F5.api\u002F13.filesystem\u002F3.functions\u002Fdirectories",{"title":2781,"path":2782,"stem":2783},"File operations","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Ffile-operations","docs\u002F5.api\u002F13.filesystem\u002F3.functions\u002Ffile-operations",{"title":2785,"path":2786,"stem":2787},"Working directory","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Flocation","docs\u002F5.api\u002F13.filesystem\u002F3.functions\u002Flocation",{"title":2789,"path":2790,"stem":2791},"Native error codes","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Fnative-errors","docs\u002F5.api\u002F13.filesystem\u002F3.functions\u002Fnative-errors","i-lucide-folder-tree",{"title":2794,"path":2795,"stem":2796,"children":2797,"icon":2818},"Path","\u002Fdocs\u002Fapi\u002Fpath","docs\u002F5.api\u002F14.path\u002F0.index",[2798,2799,2803,2807,2810,2814],{"title":49,"path":2795,"stem":2796},{"title":2800,"path":2801,"stem":2802},"OsString","\u002Fdocs\u002Fapi\u002Fpath\u002Fos-string","docs\u002F5.api\u002F14.path\u002F2.types\u002Fos-string",{"title":2804,"path":2805,"stem":2806},"OsStringView","\u002Fdocs\u002Fapi\u002Fpath\u002Fos-string-view","docs\u002F5.api\u002F14.path\u002F2.types\u002Fos-string-view",{"title":2794,"path":2808,"stem":2809},"\u002Fdocs\u002Fapi\u002Fpath\u002Fpath","docs\u002F5.api\u002F14.path\u002F2.types\u002Fpath",{"title":2811,"path":2812,"stem":2813},"PathBuffer","\u002Fdocs\u002Fapi\u002Fpath\u002Fpath-buffer","docs\u002F5.api\u002F14.path\u002F2.types\u002Fpath-buffer",{"title":2815,"path":2816,"stem":2817},"Path syntax","\u002Fdocs\u002Fapi\u002Fpath\u002Fsyntax","docs\u002F5.api\u002F14.path\u002F3.functions\u002Fsyntax","i-lucide-route",{"title":2820,"path":2821,"stem":2822,"children":2823,"icon":2873},"Time","\u002Fdocs\u002Fapi\u002Ftime","docs\u002F5.api\u002F15.time\u002F0.index",[2824,2825,2829,2833,2837,2841,2845,2849,2853,2857,2861,2865,2869],{"title":49,"path":2821,"stem":2822},{"title":2826,"path":2827,"stem":2828},"Waiter","\u002Fdocs\u002Fapi\u002Ftime\u002Fwaiter","docs\u002F5.api\u002F15.time\u002F1.interfaces\u002Fwaiter",{"title":2830,"path":2831,"stem":2832},"Date","\u002Fdocs\u002Fapi\u002Ftime\u002Fdate","docs\u002F5.api\u002F15.time\u002F2.types\u002Fdate",{"title":2834,"path":2835,"stem":2836},"DateTime","\u002Fdocs\u002Fapi\u002Ftime\u002Fdate-time","docs\u002F5.api\u002F15.time\u002F2.types\u002Fdate-time",{"title":2838,"path":2839,"stem":2840},"Duration","\u002Fdocs\u002Fapi\u002Ftime\u002Fduration","docs\u002F5.api\u002F15.time\u002F2.types\u002Fduration",{"title":2842,"path":2843,"stem":2844},"Instant","\u002Fdocs\u002Fapi\u002Ftime\u002Finstant","docs\u002F5.api\u002F15.time\u002F2.types\u002Finstant",{"title":2846,"path":2847,"stem":2848},"OffsetDateTime","\u002Fdocs\u002Fapi\u002Ftime\u002Foffset-date-time","docs\u002F5.api\u002F15.time\u002F2.types\u002Foffset-date-time",{"title":2850,"path":2851,"stem":2852},"Stopwatch","\u002Fdocs\u002Fapi\u002Ftime\u002Fstopwatch","docs\u002F5.api\u002F15.time\u002F2.types\u002Fstopwatch",{"title":2854,"path":2855,"stem":2856},"TimeOfDay","\u002Fdocs\u002Fapi\u002Ftime\u002Ftime-of-day","docs\u002F5.api\u002F15.time\u002F2.types\u002Ftime-of-day",{"title":2858,"path":2859,"stem":2860},"TimeParseError","\u002Fdocs\u002Fapi\u002Ftime\u002Ftime-parse-error","docs\u002F5.api\u002F15.time\u002F2.types\u002Ftime-parse-error",{"title":2862,"path":2863,"stem":2864},"Timestamp","\u002Fdocs\u002Fapi\u002Ftime\u002Ftimestamp","docs\u002F5.api\u002F15.time\u002F2.types\u002Ftimestamp",{"title":2866,"path":2867,"stem":2868},"UtcOffset","\u002Fdocs\u002Fapi\u002Ftime\u002Futc-offset","docs\u002F5.api\u002F15.time\u002F2.types\u002Futc-offset",{"title":2870,"path":2871,"stem":2872},"SleepFor","\u002Fdocs\u002Fapi\u002Ftime\u002Fsleep","docs\u002F5.api\u002F15.time\u002F3.functions\u002Fsleep","i-lucide-clock",{"title":2875,"path":2876,"stem":2877,"children":2878,"icon":2900},"Entropy","\u002Fdocs\u002Fapi\u002Fentropy","docs\u002F5.api\u002F16.entropy\u002F0.index",[2879,2880,2884,2888,2892,2896],{"title":49,"path":2876,"stem":2877},{"title":2881,"path":2882,"stem":2883},"EntropySource","\u002Fdocs\u002Fapi\u002Fentropy\u002Fentropy-source","docs\u002F5.api\u002F16.entropy\u002F1.interfaces\u002Fentropy-source",{"title":2885,"path":2886,"stem":2887},"EntropyError","\u002Fdocs\u002Fapi\u002Fentropy\u002Fentropy-error","docs\u002F5.api\u002F16.entropy\u002F2.types\u002Fentropy-error",{"title":2889,"path":2890,"stem":2891},"SystemEntropy","\u002Fdocs\u002Fapi\u002Fentropy\u002Fsystem-entropy","docs\u002F5.api\u002F16.entropy\u002F2.types\u002Fsystem-entropy",{"title":2893,"path":2894,"stem":2895},"Fill","\u002Fdocs\u002Fapi\u002Fentropy\u002Ffill","docs\u002F5.api\u002F16.entropy\u002F3.functions\u002Ffill",{"title":2897,"path":2898,"stem":2899},"NextUint64","\u002Fdocs\u002Fapi\u002Fentropy\u002Fnext-uint64","docs\u002F5.api\u002F16.entropy\u002F3.functions\u002Fnext-uint64","i-lucide-sparkles",{"title":2902,"path":2903,"stem":2904,"children":2905,"icon":2943},"Json","\u002Fdocs\u002Fapi\u002Fjson","docs\u002F5.api\u002F17.json\u002F0.index",[2906,2907,2911,2915,2919,2923,2927,2931,2935,2939],{"title":49,"path":2903,"stem":2904},{"title":2908,"path":2909,"stem":2910},"JsonEventReader","\u002Fdocs\u002Fapi\u002Fjson\u002Fjson-event-reader","docs\u002F5.api\u002F17.json\u002F2.types\u002Fjson-event-reader",{"title":2912,"path":2913,"stem":2914},"JsonLexer","\u002Fdocs\u002Fapi\u002Fjson\u002Fjson-lexer","docs\u002F5.api\u002F17.json\u002F2.types\u002Fjson-lexer",{"title":2916,"path":2917,"stem":2918},"JsonLimits","\u002Fdocs\u002Fapi\u002Fjson\u002Fjson-limits","docs\u002F5.api\u002F17.json\u002F2.types\u002Fjson-limits",{"title":2920,"path":2921,"stem":2922},"JsonNumber","\u002Fdocs\u002Fapi\u002Fjson\u002Fjson-number","docs\u002F5.api\u002F17.json\u002F2.types\u002Fjson-number",{"title":2924,"path":2925,"stem":2926},"JsonParseError","\u002Fdocs\u002Fapi\u002Fjson\u002Fjson-parse-error","docs\u002F5.api\u002F17.json\u002F2.types\u002Fjson-parse-error",{"title":2928,"path":2929,"stem":2930},"JsonParser","\u002Fdocs\u002Fapi\u002Fjson\u002Fjson-parser","docs\u002F5.api\u002F17.json\u002F2.types\u002Fjson-parser",{"title":2932,"path":2933,"stem":2934},"JsonValue","\u002Fdocs\u002Fapi\u002Fjson\u002Fjson-value","docs\u002F5.api\u002F17.json\u002F2.types\u002Fjson-value",{"title":2936,"path":2937,"stem":2938},"Parse","\u002Fdocs\u002Fapi\u002Fjson\u002Fparse","docs\u002F5.api\u002F17.json\u002F3.functions\u002Fparse",{"title":2940,"path":2941,"stem":2942},"WriteValue","\u002Fdocs\u002Fapi\u002Fjson\u002Fwrite-value","docs\u002F5.api\u002F17.json\u002F3.functions\u002Fwrite-value","i-lucide-braces",{"title":2945,"path":2946,"stem":2947,"children":2948,"icon":2986},"Toml","\u002Fdocs\u002Fapi\u002Ftoml","docs\u002F5.api\u002F18.toml\u002F0.index",[2949,2950,2954,2958,2962,2966,2970,2974,2978,2982],{"title":49,"path":2946,"stem":2947},{"title":2951,"path":2952,"stem":2953},"TomlEventReader","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-event-reader","docs\u002F5.api\u002F18.toml\u002F2.types\u002Ftoml-event-reader",{"title":2955,"path":2956,"stem":2957},"TomlLexer","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-lexer","docs\u002F5.api\u002F18.toml\u002F2.types\u002Ftoml-lexer",{"title":2959,"path":2960,"stem":2961},"TomlParseFailure","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-parse-failure","docs\u002F5.api\u002F18.toml\u002F2.types\u002Ftoml-parse-failure",{"title":2963,"path":2964,"stem":2965},"TomlParser","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-parser","docs\u002F5.api\u002F18.toml\u002F2.types\u002Ftoml-parser",{"title":2967,"path":2968,"stem":2969},"TomlScalarError","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-scalar-error","docs\u002F5.api\u002F18.toml\u002F2.types\u002Ftoml-scalar-error",{"title":2971,"path":2972,"stem":2973},"TomlValue","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-value","docs\u002F5.api\u002F18.toml\u002F2.types\u002Ftoml-value",{"title":2975,"path":2976,"stem":2977},"Scalars","\u002Fdocs\u002Fapi\u002Ftoml\u002Fscalars","docs\u002F5.api\u002F18.toml\u002F3.functions\u002Fscalars",{"title":2979,"path":2980,"stem":2981},"TomlParse","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-parse","docs\u002F5.api\u002F18.toml\u002F3.functions\u002Ftoml-parse",{"title":2983,"path":2984,"stem":2985},"TomlWriteDocument","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-write-document","docs\u002F5.api\u002F18.toml\u002F3.functions\u002Ftoml-write-document","i-lucide-file-cog",{"title":2988,"path":2989,"stem":2990,"children":2991,"icon":3011},"Uuid","\u002Fdocs\u002Fapi\u002Fuuid","docs\u002F5.api\u002F19.uuid\u002F0.index",[2992,2993,2997,3000,3003,3007],{"title":49,"path":2989,"stem":2990},{"title":2994,"path":2995,"stem":2996},"MonotonicUuid","\u002Fdocs\u002Fapi\u002Fuuid\u002Fmonotonic-uuid","docs\u002F5.api\u002F19.uuid\u002F2.types\u002Fmonotonic-uuid",{"title":2988,"path":2998,"stem":2999},"\u002Fdocs\u002Fapi\u002Fuuid\u002Fuuid","docs\u002F5.api\u002F19.uuid\u002F2.types\u002Fuuid",{"title":2630,"path":3001,"stem":3002},"\u002Fdocs\u002Fapi\u002Fuuid\u002Frandom","docs\u002F5.api\u002F19.uuid\u002F3.functions\u002Frandom",{"title":3004,"path":3005,"stem":3006},"Text form","\u002Fdocs\u002Fapi\u002Fuuid\u002Ftext","docs\u002F5.api\u002F19.uuid\u002F3.functions\u002Ftext",{"title":3008,"path":3009,"stem":3010},"TimeOrdered","\u002Fdocs\u002Fapi\u002Fuuid\u002Ftime-ordered","docs\u002F5.api\u002F19.uuid\u002F3.functions\u002Ftime-ordered","i-lucide-fingerprint-pattern",{"title":3013,"path":3014,"stem":3015,"children":3016,"icon":3062},"Crypto","\u002Fdocs\u002Fapi\u002Fcrypto","docs\u002F5.api\u002F20.crypto\u002F0.index",[3017,3018,3022,3026,3030,3034,3038,3042,3046,3050,3054,3058],{"title":49,"path":3014,"stem":3015},{"title":3019,"path":3020,"stem":3021},"Digest","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fdigest","docs\u002F5.api\u002F20.crypto\u002F1.interfaces\u002Fdigest",{"title":3023,"path":3024,"stem":3025},"Blake3","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fblake3","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Fblake3",{"title":3027,"path":3028,"stem":3029},"Hmac\u003CD>","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fhmac","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Fhmac",{"title":3031,"path":3032,"stem":3033},"LegacyMd5","\u002Fdocs\u002Fapi\u002Fcrypto\u002Flegacy-md5","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Flegacy-md5",{"title":3035,"path":3036,"stem":3037},"LegacySha1","\u002Fdocs\u002Fapi\u002Fcrypto\u002Flegacy-sha1","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Flegacy-sha1",{"title":3039,"path":3040,"stem":3041},"Sha256","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fsha256","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Fsha256",{"title":3043,"path":3044,"stem":3045},"Sha3","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fsha3","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Fsha3",{"title":3047,"path":3048,"stem":3049},"Sha512","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fsha512","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Fsha512",{"title":3051,"path":3052,"stem":3053},"Shake","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fshake","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Fshake",{"title":3055,"path":3056,"stem":3057},"Hkdf\u003CD>","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fhkdf","docs\u002F5.api\u002F20.crypto\u002F3.functions\u002Fhkdf",{"title":3059,"path":3060,"stem":3061},"Secrets","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fsecrets","docs\u002F5.api\u002F20.crypto\u002F3.functions\u002Fsecrets","i-lucide-lock",{"title":3064,"path":3065,"stem":3066,"children":3067,"icon":3103},"C","\u002Fdocs\u002Fapi\u002Fc","docs\u002F5.api\u002F21.c\u002F0.index",[3068,3069,3073,3077,3080,3084,3088,3092,3095,3099],{"title":49,"path":3065,"stem":3066},{"title":3070,"path":3071,"stem":3072},"timespec","\u002Fdocs\u002Fapi\u002Fc\u002Ftimespec","docs\u002F5.api\u002F21.c\u002F2.types\u002Ftimespec",{"title":3074,"path":3075,"stem":3076},"tm","\u002Fdocs\u002Fapi\u002Fc\u002Ftm","docs\u002F5.api\u002F21.c\u002F2.types\u002Ftm",{"title":326,"path":3078,"stem":3079},"\u002Fdocs\u002Fapi\u002Fc\u002Ftypes","docs\u002F5.api\u002F21.c\u002F2.types\u002Ftypes",{"title":3081,"path":3082,"stem":3083},"Mathematics","\u002Fdocs\u002Fapi\u002Fc\u002Fmath","docs\u002F5.api\u002F21.c\u002F3.functions\u002Fmath",{"title":3085,"path":3086,"stem":3087},"General utilities","\u002Fdocs\u002Fapi\u002Fc\u002Fstdlib","docs\u002F5.api\u002F21.c\u002F3.functions\u002Fstdlib",{"title":3089,"path":3090,"stem":3091},"Strings and memory","\u002Fdocs\u002Fapi\u002Fc\u002Fstring","docs\u002F5.api\u002F21.c\u002F3.functions\u002Fstring",{"title":2820,"path":3093,"stem":3094},"\u002Fdocs\u002Fapi\u002Fc\u002Ftime","docs\u002F5.api\u002F21.c\u002F3.functions\u002Ftime",{"title":3096,"path":3097,"stem":3098},"errno","\u002Fdocs\u002Fapi\u002Fc\u002Ferrno","docs\u002F5.api\u002F21.c\u002F4.constants\u002Ferrno",{"title":3100,"path":3101,"stem":3102},"Standard I\u002FO","\u002Fdocs\u002Fapi\u002Fc\u002Fstdio","docs\u002F5.api\u002F21.c\u002F4.constants\u002Fstdio","i-simple-icons-c",{"title":67,"path":3105,"stem":3106,"children":3107,"icon":3173},"\u002Fdocs\u002Fapi\u002Flinux","docs\u002F5.api\u002F22.linux\u002F0.index",[3108,3109,3113,3116,3120,3124,3128,3132,3136,3140,3144,3148,3152,3155,3158,3162,3165,3169],{"title":49,"path":3105,"stem":3106},{"title":3110,"path":3111,"stem":3112},"Timespec","\u002Fdocs\u002Fapi\u002Flinux\u002Ftimespec","docs\u002F5.api\u002F22.linux\u002F2.types\u002Ftimespec",{"title":326,"path":3114,"stem":3115},"\u002Fdocs\u002Fapi\u002Flinux\u002Ftypes","docs\u002F5.api\u002F22.linux\u002F2.types\u002Ftypes",{"title":3117,"path":3118,"stem":3119},"Directories and links","\u002Fdocs\u002Fapi\u002Flinux\u002Fdirectories","docs\u002F5.api\u002F22.linux\u002F3.functions\u002Fdirectories",{"title":3121,"path":3122,"stem":3123},"GetRandom","\u002Fdocs\u002Fapi\u002Flinux\u002Fget-random","docs\u002F5.api\u002F22.linux\u002F3.functions\u002Fget-random",{"title":3125,"path":3126,"stem":3127},"Process","\u002Fdocs\u002Fapi\u002Flinux\u002Fprocess","docs\u002F5.api\u002F22.linux\u002F3.functions\u002Fprocess",{"title":3129,"path":3130,"stem":3131},"Name resolution","\u002Fdocs\u002Fapi\u002Flinux\u002Fresolve","docs\u002F5.api\u002F22.linux\u002F3.functions\u002Fresolve",{"title":3133,"path":3134,"stem":3135},"Starting processes","\u002Fdocs\u002Fapi\u002Flinux\u002Fspawn","docs\u002F5.api\u002F22.linux\u002F3.functions\u002Fspawn",{"title":3137,"path":3138,"stem":3139},"System calls","\u002Fdocs\u002Fapi\u002Flinux\u002Fsyscalls","docs\u002F5.api\u002F22.linux\u002F3.functions\u002Fsyscalls",{"title":3141,"path":3142,"stem":3143},"Threads","\u002Fdocs\u002Fapi\u002Flinux\u002Fthread","docs\u002F5.api\u002F22.linux\u002F3.functions\u002Fthread",{"title":3145,"path":3146,"stem":3147},"Clocks","\u002Fdocs\u002Fapi\u002Flinux\u002Fclock","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Fclock",{"title":3149,"path":3150,"stem":3151},"Dynamic loading","\u002Fdocs\u002Fapi\u002Flinux\u002Fdynamic","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Fdynamic",{"title":447,"path":3153,"stem":3154},"\u002Fdocs\u002Fapi\u002Flinux\u002Ferrors","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Ferrors",{"title":959,"path":3156,"stem":3157},"\u002Fdocs\u002Fapi\u002Flinux\u002Ffiles","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Ffiles",{"title":3159,"path":3160,"stem":3161},"Futexes","\u002Fdocs\u002Fapi\u002Flinux\u002Ffutex","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Ffutex",{"title":751,"path":3163,"stem":3164},"\u002Fdocs\u002Fapi\u002Flinux\u002Fmemory","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Fmemory",{"title":3166,"path":3167,"stem":3168},"Polling","\u002Fdocs\u002Fapi\u002Flinux\u002Fpoll","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Fpoll",{"title":3170,"path":3171,"stem":3172},"Sockets","\u002Fdocs\u002Fapi\u002Flinux\u002Fsocket","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Fsocket","i-simple-icons-linux",{"title":63,"path":3175,"stem":3176,"children":3177,"icon":3231},"\u002Fdocs\u002Fapi\u002Ffreebsd","docs\u002F5.api\u002F23.freebsd\u002F0.index",[3178,3179,3182,3185,3188,3191,3194,3197,3200,3203,3206,3209,3212,3215,3218,3221,3224,3227],{"title":49,"path":3175,"stem":3176},{"title":3110,"path":3180,"stem":3181},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Ftimespec","docs\u002F5.api\u002F23.freebsd\u002F2.types\u002Ftimespec",{"title":326,"path":3183,"stem":3184},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Ftypes","docs\u002F5.api\u002F23.freebsd\u002F2.types\u002Ftypes",{"title":3117,"path":3186,"stem":3187},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fdirectories","docs\u002F5.api\u002F23.freebsd\u002F3.functions\u002Fdirectories",{"title":3121,"path":3189,"stem":3190},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fget-random","docs\u002F5.api\u002F23.freebsd\u002F3.functions\u002Fget-random",{"title":3125,"path":3192,"stem":3193},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fprocess","docs\u002F5.api\u002F23.freebsd\u002F3.functions\u002Fprocess",{"title":3129,"path":3195,"stem":3196},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fresolve","docs\u002F5.api\u002F23.freebsd\u002F3.functions\u002Fresolve",{"title":3133,"path":3198,"stem":3199},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fspawn","docs\u002F5.api\u002F23.freebsd\u002F3.functions\u002Fspawn",{"title":3137,"path":3201,"stem":3202},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fsyscalls","docs\u002F5.api\u002F23.freebsd\u002F3.functions\u002Fsyscalls",{"title":3141,"path":3204,"stem":3205},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fthread","docs\u002F5.api\u002F23.freebsd\u002F3.functions\u002Fthread",{"title":3145,"path":3207,"stem":3208},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fclock","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Fclock",{"title":3149,"path":3210,"stem":3211},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fdynamic","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Fdynamic",{"title":447,"path":3213,"stem":3214},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Ferrors","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Ferrors",{"title":959,"path":3216,"stem":3217},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Ffiles","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Ffiles",{"title":751,"path":3219,"stem":3220},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fmemory","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Fmemory",{"title":3166,"path":3222,"stem":3223},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fpoll","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Fpoll",{"title":3170,"path":3225,"stem":3226},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fsocket","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Fsocket",{"title":3228,"path":3229,"stem":3230},"Address waits","\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fumtx","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Fumtx","i-simple-icons-freebsd",{"title":71,"path":3233,"stem":3234,"children":3235,"icon":3289},"\u002Fdocs\u002Fapi\u002Fmacos","docs\u002F5.api\u002F24.macos\u002F0.index",[3236,3237,3240,3244,3247,3250,3253,3256,3259,3262,3265,3268,3271,3274,3277,3280,3283,3286],{"title":49,"path":3233,"stem":3234},{"title":3110,"path":3238,"stem":3239},"\u002Fdocs\u002Fapi\u002Fmacos\u002Ftimespec","docs\u002F5.api\u002F24.macos\u002F2.types\u002Ftimespec",{"title":3241,"path":3242,"stem":3243},"Timeval","\u002Fdocs\u002Fapi\u002Fmacos\u002Ftimeval","docs\u002F5.api\u002F24.macos\u002F2.types\u002Ftimeval",{"title":326,"path":3245,"stem":3246},"\u002Fdocs\u002Fapi\u002Fmacos\u002Ftypes","docs\u002F5.api\u002F24.macos\u002F2.types\u002Ftypes",{"title":3145,"path":3248,"stem":3249},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fclock","docs\u002F5.api\u002F24.macos\u002F3.functions\u002Fclock",{"title":3117,"path":3251,"stem":3252},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fdirectories","docs\u002F5.api\u002F24.macos\u002F3.functions\u002Fdirectories",{"title":3121,"path":3254,"stem":3255},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fget-random","docs\u002F5.api\u002F24.macos\u002F3.functions\u002Fget-random",{"title":3125,"path":3257,"stem":3258},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fprocess","docs\u002F5.api\u002F24.macos\u002F3.functions\u002Fprocess",{"title":3129,"path":3260,"stem":3261},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fresolve","docs\u002F5.api\u002F24.macos\u002F3.functions\u002Fresolve",{"title":3133,"path":3263,"stem":3264},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fspawn","docs\u002F5.api\u002F24.macos\u002F3.functions\u002Fspawn",{"title":3141,"path":3266,"stem":3267},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fthread","docs\u002F5.api\u002F24.macos\u002F3.functions\u002Fthread",{"title":3149,"path":3269,"stem":3270},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fdynamic","docs\u002F5.api\u002F24.macos\u002F4.constants\u002Fdynamic",{"title":447,"path":3272,"stem":3273},"\u002Fdocs\u002Fapi\u002Fmacos\u002Ferrors","docs\u002F5.api\u002F24.macos\u002F4.constants\u002Ferrors",{"title":959,"path":3275,"stem":3276},"\u002Fdocs\u002Fapi\u002Fmacos\u002Ffiles","docs\u002F5.api\u002F24.macos\u002F4.constants\u002Ffiles",{"title":751,"path":3278,"stem":3279},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fmemory","docs\u002F5.api\u002F24.macos\u002F4.constants\u002Fmemory",{"title":3166,"path":3281,"stem":3282},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fpoll","docs\u002F5.api\u002F24.macos\u002F4.constants\u002Fpoll",{"title":3170,"path":3284,"stem":3285},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fsocket","docs\u002F5.api\u002F24.macos\u002F4.constants\u002Fsocket",{"title":3228,"path":3287,"stem":3288},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fulock","docs\u002F5.api\u002F24.macos\u002F4.constants\u002Fulock","i-simple-icons-apple",{"title":75,"path":3291,"stem":3292,"children":3293,"icon":3368},"\u002Fdocs\u002Fapi\u002Fwindows","docs\u002F5.api\u002F25.windows\u002F0.index",[3294,3295,3299,3303,3307,3311,3315,3319,3322,3326,3329,3333,3337,3340,3343,3346,3350,3354,3357,3361,3364],{"title":49,"path":3291,"stem":3292},{"title":3296,"path":3297,"stem":3298},"CodePage","\u002Fdocs\u002Fapi\u002Fwindows\u002Fcode-page","docs\u002F5.api\u002F25.windows\u002F2.types\u002Fcode-page",{"title":3300,"path":3301,"stem":3302},"CreationDisposition","\u002Fdocs\u002Fapi\u002Fwindows\u002Fcreation-disposition","docs\u002F5.api\u002F25.windows\u002F2.types\u002Fcreation-disposition",{"title":3304,"path":3305,"stem":3306},"FileTime","\u002Fdocs\u002Fapi\u002Fwindows\u002Ffile-time","docs\u002F5.api\u002F25.windows\u002F2.types\u002Ffile-time",{"title":3308,"path":3309,"stem":3310},"SystemInfo","\u002Fdocs\u002Fapi\u002Fwindows\u002Fsystem-info","docs\u002F5.api\u002F25.windows\u002F2.types\u002Fsystem-info",{"title":3312,"path":3313,"stem":3314},"SystemTime","\u002Fdocs\u002Fapi\u002Fwindows\u002Fsystem-time","docs\u002F5.api\u002F25.windows\u002F2.types\u002Fsystem-time",{"title":3316,"path":3317,"stem":3318},"Time zone","\u002Fdocs\u002Fapi\u002Fwindows\u002Ftime-zone","docs\u002F5.api\u002F25.windows\u002F2.types\u002Ftime-zone",{"title":326,"path":3320,"stem":3321},"\u002Fdocs\u002Fapi\u002Fwindows\u002Ftypes","docs\u002F5.api\u002F25.windows\u002F2.types\u002Ftypes",{"title":3323,"path":3324,"stem":3325},"Win32FindDataA","\u002Fdocs\u002Fapi\u002Fwindows\u002Fwin32-find-data-a","docs\u002F5.api\u002F25.windows\u002F2.types\u002Fwin32-find-data-a",{"title":3145,"path":3327,"stem":3328},"\u002Fdocs\u002Fapi\u002Fwindows\u002Fclock","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Fclock",{"title":3330,"path":3331,"stem":3332},"Console","\u002Fdocs\u002Fapi\u002Fwindows\u002Fconsole","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Fconsole",{"title":3334,"path":3335,"stem":3336},"File system","\u002Fdocs\u002Fapi\u002Fwindows\u002Ffile-system","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Ffile-system",{"title":959,"path":3338,"stem":3339},"\u002Fdocs\u002Fapi\u002Fwindows\u002Ffiles","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Ffiles",{"title":3121,"path":3341,"stem":3342},"\u002Fdocs\u002Fapi\u002Fwindows\u002Fget-random","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Fget-random",{"title":751,"path":3344,"stem":3345},"\u002Fdocs\u002Fapi\u002Fwindows\u002Fmemory","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Fmemory",{"title":3347,"path":3348,"stem":3349},"Processes and threads","\u002Fdocs\u002Fapi\u002Fwindows\u002Fprocess","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Fprocess",{"title":3351,"path":3352,"stem":3353},"Process control","\u002Fdocs\u002Fapi\u002Fwindows\u002Fprocess-control","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Fprocess-control",{"title":3228,"path":3355,"stem":3356},"\u002Fdocs\u002Fapi\u002Fwindows\u002Fsynch","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Fsynch",{"title":3358,"path":3359,"stem":3360},"Text conversion","\u002Fdocs\u002Fapi\u002Fwindows\u002Ftext","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Ftext",{"title":447,"path":3362,"stem":3363},"\u002Fdocs\u002Fapi\u002Fwindows\u002Ferrors","docs\u002F5.api\u002F25.windows\u002F4.constants\u002Ferrors",{"title":3365,"path":3366,"stem":3367},"Winsock","\u002Fdocs\u002Fapi\u002Fwindows\u002Fwinsock","docs\u002F5.api\u002F25.windows\u002F4.constants\u002Fwinsock","i-simple-icons-windows",{"title":3370,"path":3371,"stem":3372,"children":3373,"icon":3381},"Regex","\u002Fdocs\u002Fapi\u002Fregex","docs\u002F5.api\u002F26.regex\u002F0.index",[3374,3375,3378],{"title":49,"path":3371,"stem":3372},{"title":447,"path":3376,"stem":3377},"\u002Fdocs\u002Fapi\u002Fregex\u002Ferror","docs\u002F5.api\u002F26.regex\u002F2.types\u002Ferror",{"title":3370,"path":3379,"stem":3380},"\u002Fdocs\u002Fapi\u002Fregex\u002Fregex","docs\u002F5.api\u002F26.regex\u002F2.types\u002Fregex","i-lucide-regex",{"title":3125,"path":3383,"stem":3384,"children":3385,"icon":3415},"\u002Fdocs\u002Fapi\u002Fprocess","docs\u002F5.api\u002F27.process\u002F0.index",[3386,3387,3391,3395,3399,3403,3407,3411],{"title":49,"path":3383,"stem":3384},{"title":3388,"path":3389,"stem":3390},"Captured output","\u002Fdocs\u002Fapi\u002Fprocess\u002Fcapture","docs\u002F5.api\u002F27.process\u002F2.types\u002Fcapture",{"title":3392,"path":3393,"stem":3394},"Child processes","\u002Fdocs\u002Fapi\u002Fprocess\u002Fchild","docs\u002F5.api\u002F27.process\u002F2.types\u002Fchild",{"title":3396,"path":3397,"stem":3398},"Commands","\u002Fdocs\u002Fapi\u002Fprocess\u002Fcommand","docs\u002F5.api\u002F27.process\u002F2.types\u002Fcommand",{"title":3400,"path":3401,"stem":3402},"Arguments","\u002Fdocs\u002Fapi\u002Fprocess\u002Farguments","docs\u002F5.api\u002F27.process\u002F3.functions\u002Farguments",{"title":3404,"path":3405,"stem":3406},"Environment","\u002Fdocs\u002Fapi\u002Fprocess\u002Fenvironment","docs\u002F5.api\u002F27.process\u002F3.functions\u002Fenvironment",{"title":3408,"path":3409,"stem":3410},"Executable","\u002Fdocs\u002Fapi\u002Fprocess\u002Fexecutable","docs\u002F5.api\u002F27.process\u002F3.functions\u002Fexecutable",{"title":3412,"path":3413,"stem":3414},"Exit","\u002Fdocs\u002Fapi\u002Fprocess\u002Fexit","docs\u002F5.api\u002F27.process\u002F3.functions\u002Fexit","i-lucide-square-terminal",{"title":3417,"path":3418,"stem":3419,"children":3420,"icon":3438},"CommandLine","\u002Fdocs\u002Fapi\u002Fcommandline","docs\u002F5.api\u002F28.commandline\u002F0.index",[3421,3422,3426,3430,3434],{"title":49,"path":3418,"stem":3419},{"title":3423,"path":3424,"stem":3425},"CommandLineError","\u002Fdocs\u002Fapi\u002Fcommandline\u002Fcommand-line-error","docs\u002F5.api\u002F28.commandline\u002F2.types\u002Fcommand-line-error",{"title":3427,"path":3428,"stem":3429},"Parsed","\u002Fdocs\u002Fapi\u002Fcommandline\u002Fparsed","docs\u002F5.api\u002F28.commandline\u002F2.types\u002Fparsed",{"title":3431,"path":3432,"stem":3433},"Help","\u002Fdocs\u002Fapi\u002Fcommandline\u002Fhelp","docs\u002F5.api\u002F28.commandline\u002F3.functions\u002Fhelp",{"title":3435,"path":3436,"stem":3437},"Specification","\u002Fdocs\u002Fapi\u002Fcommandline\u002Fspec","docs\u002F5.api\u002F28.commandline\u002F3.functions\u002Fspec","i-lucide-square-chevron-right",{"title":3440,"path":3441,"stem":3442,"children":3443,"icon":3473},"Log","\u002Fdocs\u002Fapi\u002Flog","docs\u002F5.api\u002F29.log\u002F0.index",[3444,3445,3449,3453,3457,3461,3465,3469],{"title":49,"path":3441,"stem":3442},{"title":3446,"path":3447,"stem":3448},"Fields","\u002Fdocs\u002Fapi\u002Flog\u002Ffield","docs\u002F5.api\u002F29.log\u002F2.types\u002Ffield",{"title":3450,"path":3451,"stem":3452},"Levels","\u002Fdocs\u002Fapi\u002Flog\u002Flevel","docs\u002F5.api\u002F29.log\u002F2.types\u002Flevel",{"title":3454,"path":3455,"stem":3456},"Logger","\u002Fdocs\u002Fapi\u002Flog\u002Flogger","docs\u002F5.api\u002F29.log\u002F2.types\u002Flogger",{"title":3458,"path":3459,"stem":3460},"Records","\u002Fdocs\u002Fapi\u002Flog\u002Frecord","docs\u002F5.api\u002F29.log\u002F2.types\u002Frecord",{"title":3462,"path":3463,"stem":3464},"RotatingFile","\u002Fdocs\u002Fapi\u002Flog\u002Frotating-file","docs\u002F5.api\u002F29.log\u002F2.types\u002Frotating-file",{"title":3466,"path":3467,"stem":3468},"RotatingStream","\u002Fdocs\u002Fapi\u002Flog\u002Frotating-stream","docs\u002F5.api\u002F29.log\u002F2.types\u002Frotating-stream",{"title":3470,"path":3471,"stem":3472},"Process-wide log","\u002Fdocs\u002Fapi\u002Flog\u002Fglobal","docs\u002F5.api\u002F29.log\u002F3.functions\u002Fglobal","i-lucide-scroll-text",{"title":3475,"path":3476,"stem":3477,"children":3478,"icon":3487},"TimeZone","\u002Fdocs\u002Fapi\u002Ftimezone","docs\u002F5.api\u002F30.timezone\u002F0.index",[3479,3480,3483],{"title":49,"path":3476,"stem":3477},{"title":447,"path":3481,"stem":3482},"\u002Fdocs\u002Fapi\u002Ftimezone\u002Ferror","docs\u002F5.api\u002F30.timezone\u002F2.types\u002Ferror",{"title":3484,"path":3485,"stem":3486},"Time zones","\u002Fdocs\u002Fapi\u002Ftimezone\u002Fzone","docs\u002F5.api\u002F30.timezone\u002F2.types\u002Fzone","i-lucide-globe",{"title":3489,"path":3490,"stem":3491,"children":3492,"icon":3517},"Net","\u002Fdocs\u002Fapi\u002Fnet","docs\u002F5.api\u002F31.net\u002F0.index",[3493,3494,3498,3502,3506,3510,3514],{"title":49,"path":3490,"stem":3491},{"title":3495,"path":3496,"stem":3497},"Addresses","\u002Fdocs\u002Fapi\u002Fnet\u002Faddress","docs\u002F5.api\u002F31.net\u002F2.types\u002Faddress",{"title":3499,"path":3500,"stem":3501},"Poller","\u002Fdocs\u002Fapi\u002Fnet\u002Fpoller","docs\u002F5.api\u002F31.net\u002F2.types\u002Fpoller",{"title":3503,"path":3504,"stem":3505},"Resolver","\u002Fdocs\u002Fapi\u002Fnet\u002Fresolver","docs\u002F5.api\u002F31.net\u002F2.types\u002Fresolver",{"title":3507,"path":3508,"stem":3509},"TCP","\u002Fdocs\u002Fapi\u002Fnet\u002Ftcp","docs\u002F5.api\u002F31.net\u002F2.types\u002Ftcp",{"title":3511,"path":3512,"stem":3513},"UDP","\u002Fdocs\u002Fapi\u002Fnet\u002Fudp","docs\u002F5.api\u002F31.net\u002F2.types\u002Fudp",{"title":3129,"path":3515,"stem":3516},"\u002Fdocs\u002Fapi\u002Fnet\u002Fresolve","docs\u002F5.api\u002F31.net\u002F3.functions\u002Fresolve","i-lucide-network",{"title":3519,"path":3520,"stem":3521,"children":3522,"icon":3540},"Test","\u002Fdocs\u002Fapi\u002Ftest","docs\u002F5.api\u002F32.test\u002F0.index",[3523,3524,3528,3532,3536],{"title":49,"path":3520,"stem":3521},{"title":3525,"path":3526,"stem":3527},"Failures","\u002Fdocs\u002Fapi\u002Ftest\u002Ffailure","docs\u002F5.api\u002F32.test\u002F2.types\u002Ffailure",{"title":3529,"path":3530,"stem":3531},"Runner","\u002Fdocs\u002Fapi\u002Ftest\u002Frunner","docs\u002F5.api\u002F32.test\u002F2.types\u002Frunner",{"title":3533,"path":3534,"stem":3535},"Benchmarks","\u002Fdocs\u002Fapi\u002Ftest\u002Fbenchmark","docs\u002F5.api\u002F32.test\u002F3.functions\u002Fbenchmark",{"title":3537,"path":3538,"stem":3539},"Checks","\u002Fdocs\u002Fapi\u002Ftest\u002Fexpect","docs\u002F5.api\u002F32.test\u002F3.functions\u002Fexpect","i-lucide-flask-conical",{"title":3542,"path":3543,"stem":3544,"children":3545,"icon":1222},"Thread","\u002Fdocs\u002Fapi\u002Fthread","docs\u002F5.api\u002F33.thread\u002F0.index",[3546,3547,3550,3554],{"title":49,"path":3543,"stem":3544},{"title":447,"path":3548,"stem":3549},"\u002Fdocs\u002Fapi\u002Fthread\u002Ferror","docs\u002F5.api\u002F33.thread\u002F2.types\u002Ferror",{"title":3551,"path":3552,"stem":3553},"Starting threads","\u002Fdocs\u002Fapi\u002Fthread\u002Fspawn","docs\u002F5.api\u002F33.thread\u002F2.types\u002Fspawn",{"title":3555,"path":3556,"stem":3557},"The current thread","\u002Fdocs\u002Fapi\u002Fthread\u002Fcurrent","docs\u002F5.api\u002F33.thread\u002F3.functions\u002Fcurrent",{"title":3559,"path":3560,"stem":3561,"children":3562,"icon":3568},"Atomic","\u002Fdocs\u002Fapi\u002Fatomic","docs\u002F5.api\u002F34.atomic\u002F0.index",[3563,3564],{"title":49,"path":3560,"stem":3561},{"title":3565,"path":3566,"stem":3567},"Atomic\u003CT>","\u002Fdocs\u002Fapi\u002Fatomic\u002Fatomic","docs\u002F5.api\u002F34.atomic\u002F2.types\u002Fatomic","i-lucide-zap",{"title":3570,"path":3571,"stem":3572,"children":3573,"icon":3595},"Sync","\u002Fdocs\u002Fapi\u002Fsync","docs\u002F5.api\u002F35.sync\u002F0.index",[3574,3575,3579,3583,3587,3591],{"title":49,"path":3571,"stem":3572},{"title":3576,"path":3577,"stem":3578},"Channels","\u002Fdocs\u002Fapi\u002Fsync\u002Fchannel","docs\u002F5.api\u002F35.sync\u002F2.types\u002Fchannel",{"title":3580,"path":3581,"stem":3582},"Counters","\u002Fdocs\u002Fapi\u002Fsync\u002Fcounters","docs\u002F5.api\u002F35.sync\u002F2.types\u002Fcounters",{"title":3584,"path":3585,"stem":3586},"Locks","\u002Fdocs\u002Fapi\u002Fsync\u002Flock","docs\u002F5.api\u002F35.sync\u002F2.types\u002Flock",{"title":3588,"path":3589,"stem":3590},"Mutexes","\u002Fdocs\u002Fapi\u002Fsync\u002Fmutex","docs\u002F5.api\u002F35.sync\u002F2.types\u002Fmutex",{"title":3592,"path":3593,"stem":3594},"Reader-writer locks","\u002Fdocs\u002Fapi\u002Fsync\u002Frw-lock","docs\u002F5.api\u002F35.sync\u002F2.types\u002Frw-lock","i-lucide-lock-keyhole",{"title":3597,"path":3598,"stem":3599,"children":3600,"icon":823},"Encoding","\u002Fdocs\u002Fapi\u002Fencoding","docs\u002F5.api\u002F36.encoding\u002F0.index",[3601,3602,3606,3610,3614,3618,3622,3626],{"title":49,"path":3598,"stem":3599},{"title":3603,"path":3604,"stem":3605},"DecodeError","\u002Fdocs\u002Fapi\u002Fencoding\u002Fdecode-error","docs\u002F5.api\u002F36.encoding\u002F2.types\u002Fdecode-error",{"title":3607,"path":3608,"stem":3609},"Streams","\u002Fdocs\u002Fapi\u002Fencoding\u002Fstream","docs\u002F5.api\u002F36.encoding\u002F2.types\u002Fstream",{"title":3611,"path":3612,"stem":3613},"Base32","\u002Fdocs\u002Fapi\u002Fencoding\u002Fbase32","docs\u002F5.api\u002F36.encoding\u002F3.functions\u002Fbase32",{"title":3615,"path":3616,"stem":3617},"Base58","\u002Fdocs\u002Fapi\u002Fencoding\u002Fbase58","docs\u002F5.api\u002F36.encoding\u002F3.functions\u002Fbase58",{"title":3619,"path":3620,"stem":3621},"Base64","\u002Fdocs\u002Fapi\u002Fencoding\u002Fbase64","docs\u002F5.api\u002F36.encoding\u002F3.functions\u002Fbase64",{"title":3623,"path":3624,"stem":3625},"Hexadecimal","\u002Fdocs\u002Fapi\u002Fencoding\u002Fhex","docs\u002F5.api\u002F36.encoding\u002F3.functions\u002Fhex",{"title":3627,"path":3628,"stem":3629},"Percent-encoding","\u002Fdocs\u002Fapi\u002Fencoding\u002Fpercent","docs\u002F5.api\u002F36.encoding\u002F3.functions\u002Fpercent",{"title":3631,"path":3632,"stem":3633,"children":3634,"icon":3647},"Url","\u002Fdocs\u002Fapi\u002Furl","docs\u002F5.api\u002F37.url\u002F0.index",[3635,3636,3639,3643],{"title":49,"path":3632,"stem":3633},{"title":447,"path":3637,"stem":3638},"\u002Fdocs\u002Fapi\u002Furl\u002Ferror","docs\u002F5.api\u002F37.url\u002F2.types\u002Ferror",{"title":3640,"path":3641,"stem":3642},"Query strings","\u002Fdocs\u002Fapi\u002Furl\u002Fquery","docs\u002F5.api\u002F37.url\u002F2.types\u002Fquery",{"title":3644,"path":3645,"stem":3646},"URLs","\u002Fdocs\u002Fapi\u002Furl\u002Furl","docs\u002F5.api\u002F37.url\u002F2.types\u002Furl","i-lucide-link",{"title":3649,"path":3650,"stem":3651,"children":3652,"icon":3670},"Compress","\u002Fdocs\u002Fapi\u002Fcompress","docs\u002F5.api\u002F38.compress\u002F0.index",[3653,3654,3658,3662,3666],{"title":49,"path":3650,"stem":3651},{"title":3655,"path":3656,"stem":3657},"Compressing","\u002Fdocs\u002Fapi\u002Fcompress\u002Fdeflate","docs\u002F5.api\u002F38.compress\u002F2.types\u002Fdeflate",{"title":3659,"path":3660,"stem":3661},"Formats and levels","\u002Fdocs\u002Fapi\u002Fcompress\u002Fformat","docs\u002F5.api\u002F38.compress\u002F2.types\u002Fformat",{"title":3663,"path":3664,"stem":3665},"Decompressing","\u002Fdocs\u002Fapi\u002Fcompress\u002Finflate","docs\u002F5.api\u002F38.compress\u002F2.types\u002Finflate",{"title":3667,"path":3668,"stem":3669},"Whole buffers","\u002Fdocs\u002Fapi\u002Fcompress\u002Fbuffers","docs\u002F5.api\u002F38.compress\u002F3.functions\u002Fbuffers","i-lucide-file-archive",{"title":3672,"path":3673,"stem":3674,"children":3675,"icon":2628},"NanoId","\u002Fdocs\u002Fapi\u002Fnanoid","docs\u002F5.api\u002F39.nanoid\u002F0.index",[3676,3677,3680,3684,3688],{"title":49,"path":3673,"stem":3674},{"title":3672,"path":3678,"stem":3679},"\u002Fdocs\u002Fapi\u002Fnanoid\u002Fnano-id","docs\u002F5.api\u002F39.nanoid\u002F2.types\u002Fnano-id",{"title":3681,"path":3682,"stem":3683},"NanoIdError","\u002Fdocs\u002Fapi\u002Fnanoid\u002Fnano-id-error","docs\u002F5.api\u002F39.nanoid\u002F2.types\u002Fnano-id-error",{"title":3685,"path":3686,"stem":3687},"Generating","\u002Fdocs\u002Fapi\u002Fnanoid\u002Fgenerate","docs\u002F5.api\u002F39.nanoid\u002F3.functions\u002Fgenerate",{"title":3689,"path":3690,"stem":3691},"Alphabets","\u002Fdocs\u002Fapi\u002Fnanoid\u002Falphabet","docs\u002F5.api\u002F39.nanoid\u002F4.constants\u002Falphabet",{"title":3693,"path":3694,"stem":3695},"Download","\u002Fdownload","download",{"title":3697,"path":3698,"stem":3699},"Frequently Asked Questions","\u002Ffaq","faq",{"title":3701,"path":3702,"stem":3703},"Privacy Policy","\u002Fprivacy","privacy",{"title":3705,"path":3706,"stem":3707},"Security Policy","\u002Fsecurity","security",{"title":3709,"path":3710,"stem":3711},"Support","\u002Fsupport","support",{"title":3713,"path":3714,"stem":3715},"Terms of Use","\u002Fterms","terms",{"id":3717,"title":3718,"api":3719,"authors":3719,"body":3720,"category":3719,"date":3719,"description":6054,"extension":6055,"hideToc":29,"image":3719,"lesson":6056,"meta":6063,"navigation":6064,"path":1343,"seo":6065,"stem":1344,"__hash__":6066},"docs\u002Fdocs\u002F1.learn\u002F27.projects\u002F12.age.md","Age",null,{"type":3721,"value":3722,"toc":6042},"minimark",[3723,3727,3750,3753,3760,3765,3879,3882,3886,3893,3942,3948,3952,3957,4185,4194,4210,4216,4280,4284,4291,4336,4339,4343,4363,4448,4454,4622,4631,4635,4645,5854,5870,5874,5897,5905,5909,5950,5964,5968,6000,6004,6038],[3724,3725,3718],"h1",{"id":3726},"age",[3728,3729,3730],"note",{},[3731,3732,3733,3737,3738,3741,3742,3745,3746,3749],"p",{},[3734,3735,3736],"strong",{},"You'll need",": Parts 1–20 — this project is a checkpoint for Utilities, and leans on ",[3739,3740,2830],"a",{"href":1026},", ",[3739,3743,3744],{"href":459},"Fail"," and ",[3739,3747,3748],{"href":503},"Absence to error",".",[3731,3751,3752],{},"How old is someone, in completed years, months and days? It sounds like a subtraction and is not, because months have different lengths. What is one month after 31 January? When does someone born on 29 February have a birthday in a year without one?",[3731,3754,3755,3756,3759],{},"This program answers with the rule people actually use, and runs it on eleven pairs of dates chosen to hit every awkward case. It is a checkpoint for ",[3739,3757,3758],{"href":1011},"Part 20: Utilities",": the Time package does the calendar arithmetic, and the program's job is to ask it the right questions.",[3761,3762,3764],"h2",{"id":3763},"how-it-is-put-together","How it is put together",[3766,3767,3768,3784],"table",{},[3769,3770,3771],"thead",{},[3772,3773,3774,3778,3781],"tr",{},[3775,3776,3777],"th",{},"Piece",[3775,3779,3780],{},"Its job",[3775,3782,3783],{},"Lessons it uses",[3785,3786,3787,3803,3827,3843,3865],"tbody",{},[3772,3788,3789,3795,3798],{},[3790,3791,3792],"td",{},[3793,3794,3718],"code",{},[3790,3796,3797],{},"Years, months and days, as a struct",[3790,3799,3800],{},[3739,3801,3802],{"href":334},"Struct",[3772,3804,3805,3810,3820],{},[3790,3806,3807],{},[3793,3808,3809],{},"AgeError",[3790,3811,3812,3815,3816,3819],{},[3793,3813,3814],{},"BornLater"," or ",[3793,3817,3818],{},"OutOfRange"," — no details needed, so a plain enum",[3790,3821,3822,3741,3825],{},[3739,3823,3824],{"href":362},"Enum",[3739,3826,3744],{"href":459},[3772,3828,3829,3834,3837],{},[3790,3830,3831],{},[3793,3832,3833],{},"AgeOn",[3790,3835,3836],{},"The calculation",[3790,3838,3839,3741,3841],{},[3739,3840,2830],{"href":1026},[3739,3842,3748],{"href":503},[3772,3844,3845,3850,3856],{},[3790,3846,3847],{},[3793,3848,3849],{},"Show",[3790,3851,3852,3853,3855],{},"Parses two texts, calls ",[3793,3854,3833],{},", prints one row",[3790,3857,3858,3741,3860,3741,3863],{},[3739,3859,2830],{"href":1026},[3739,3861,3862],{"href":475},"Catch",[3739,3864,2359],{"href":720},[3772,3866,3867,3871,3874],{},[3790,3868,3869],{},[3793,3870,1553],{},[3790,3872,3873],{},"Eleven rows of test cases",[3790,3875,3876],{},[3739,3877,3878],{"href":260},"Function",[3731,3880,3881],{},"The dates are all written out in the source, so the output is the same on every run. A real program would ask the clock for today — one of the exercises below.",[3761,3883,3885],{"id":3884},"the-rule","The rule",[3731,3887,3888,3889,3892],{},"Count whole years, then whole months, then the days left over. A month is complete when its day comes round again — and when that day does not exist, the month is complete on its ",[3734,3890,3891],{},"last"," day instead:",[3766,3894,3895,3908],{},[3769,3896,3897],{},[3772,3898,3899,3902,3905],{},[3775,3900,3901],{},"Born",[3775,3903,3904],{},"One month later",[3775,3906,3907],{},"Why",[3785,3909,3910,3921,3932],{},[3772,3911,3912,3915,3918],{},[3790,3913,3914],{},"15 March",[3790,3916,3917],{},"15 April",[3790,3919,3920],{},"The day exists",[3772,3922,3923,3926,3929],{},[3790,3924,3925],{},"31 January",[3790,3927,3928],{},"28 February",[3790,3930,3931],{},"February has no 31st, so its last day",[3772,3933,3934,3937,3939],{},[3790,3935,3936],{},"29 February",[3790,3938,3928],{},[3790,3940,3941],{},"In a year that is not a leap year",[3731,3943,3944,3947],{},[3793,3945,3946],{},"PlusMonths"," from the Time package follows exactly that rule — it clamps to the end of the month — so the program never counts the days in a month by hand.",[3761,3949,3951],{"id":3950},"counting-months-then-correcting-by-one","Counting months, then correcting by one",[3731,3953,3954,3956],{},[3793,3955,3833],{}," first refuses a birth after the date asked about. Then it counts the calendar months between the two dates:",[3958,3959,3964],"pre",{"className":3960,"code":3961,"language":3962,"meta":3963,"style":3963},"language-rux shiki shiki-themes catppuccin-latte catppuccin-latte catppuccin-mocha","var months = ((on.year - birth.year) as int64) * 12 + (on.month as int64)\n    - (birth.month as int64);\nvar reached = birth.PlusMonths(months) ?? fail AgeError::OutOfRange;\nif on.DaysSince(reached) \u003C 0 {\n    months -= 1;\n    reached = birth.PlusMonths(months) ?? fail AgeError::OutOfRange;\n}\n","rux","",[3793,3965,3966,4046,4068,4106,4135,4149,4179],{"__ignoreMap":3963},[3967,3968,3971,3975,3979,3983,3987,3990,3992,3995,3998,4001,4003,4006,4009,4012,4016,4018,4021,4025,4028,4031,4033,4035,4038,4041,4043],"span",{"class":3969,"line":3970},"line",1,[3967,3972,3974],{"class":3973},"smXKV","var",[3967,3976,3978],{"class":3977},"sJT_S"," months ",[3967,3980,3982],{"class":3981},"sCFbw","=",[3967,3984,3986],{"class":3985},"sDi1i"," ((",[3967,3988,3989],{"class":3977},"on",[3967,3991,3749],{"class":3981},[3967,3993,3994],{"class":3977},"year ",[3967,3996,3997],{"class":3981},"-",[3967,3999,4000],{"class":3977}," birth",[3967,4002,3749],{"class":3981},[3967,4004,4005],{"class":3977},"year",[3967,4007,4008],{"class":3985},")",[3967,4010,4011],{"class":3981}," as",[3967,4013,4015],{"class":4014},"sqZDx"," int64",[3967,4017,4008],{"class":3985},[3967,4019,4020],{"class":3981}," *",[3967,4022,4024],{"class":4023},"snhBn"," 12",[3967,4026,4027],{"class":3981}," +",[3967,4029,4030],{"class":3985}," (",[3967,4032,3989],{"class":3977},[3967,4034,3749],{"class":3981},[3967,4036,4037],{"class":3977},"month ",[3967,4039,4040],{"class":3981},"as",[3967,4042,4015],{"class":4014},[3967,4044,4045],{"class":3985},")\n",[3967,4047,4049,4052,4054,4057,4059,4061,4063,4065],{"class":3969,"line":4048},2,[3967,4050,4051],{"class":3981},"    -",[3967,4053,4030],{"class":3985},[3967,4055,4056],{"class":3977},"birth",[3967,4058,3749],{"class":3981},[3967,4060,4037],{"class":3977},[3967,4062,4040],{"class":3981},[3967,4064,4015],{"class":4014},[3967,4066,4067],{"class":3985},");\n",[3967,4069,4071,4073,4076,4078,4080,4082,4084,4087,4090,4092,4095,4098,4101,4103],{"class":3969,"line":4070},3,[3967,4072,3974],{"class":3973},[3967,4074,4075],{"class":3977}," reached ",[3967,4077,3982],{"class":3981},[3967,4079,4000],{"class":3977},[3967,4081,3749],{"class":3981},[3967,4083,3946],{"class":3977},[3967,4085,4086],{"class":3985},"(",[3967,4088,4089],{"class":3977},"months",[3967,4091,4008],{"class":3985},[3967,4093,4094],{"class":3981}," ??",[3967,4096,4097],{"class":3977}," fail AgeError",[3967,4099,4100],{"class":3981},"::",[3967,4102,3818],{"class":3977},[3967,4104,4105],{"class":3985},";\n",[3967,4107,4109,4111,4114,4116,4119,4121,4124,4126,4129,4132],{"class":3969,"line":4108},4,[3967,4110,1506],{"class":3973},[3967,4112,4113],{"class":3977}," on",[3967,4115,3749],{"class":3981},[3967,4117,4118],{"class":3977},"DaysSince",[3967,4120,4086],{"class":3985},[3967,4122,4123],{"class":3977},"reached",[3967,4125,4008],{"class":3985},[3967,4127,4128],{"class":3981}," \u003C",[3967,4130,4131],{"class":4023}," 0",[3967,4133,4134],{"class":3985}," {\n",[3967,4136,4138,4141,4144,4147],{"class":3969,"line":4137},5,[3967,4139,4140],{"class":3977},"    months ",[3967,4142,4143],{"class":3981},"-=",[3967,4145,4146],{"class":4023}," 1",[3967,4148,4105],{"class":3985},[3967,4150,4152,4155,4157,4159,4161,4163,4165,4167,4169,4171,4173,4175,4177],{"class":3969,"line":4151},6,[3967,4153,4154],{"class":3977},"    reached ",[3967,4156,3982],{"class":3981},[3967,4158,4000],{"class":3977},[3967,4160,3749],{"class":3981},[3967,4162,3946],{"class":3977},[3967,4164,4086],{"class":3985},[3967,4166,4089],{"class":3977},[3967,4168,4008],{"class":3985},[3967,4170,4094],{"class":3981},[3967,4172,4097],{"class":3977},[3967,4174,4100],{"class":3981},[3967,4176,3818],{"class":3977},[3967,4178,4105],{"class":3985},[3967,4180,4182],{"class":3969,"line":4181},7,[3967,4183,4184],{"class":3985},"}\n",[3731,4186,4187,4188,4190,4191,4193],{},"That count is either right or one too many — too many when the day of the month has not come round yet. Born on 15 March 1990 and asked about 4 October 2026, the count says 439 months, but 15 October 2026 is still in the future, so it drops to 438 — 36 years and 6 months. ",[3793,4189,4123],{}," is then the last date, on or before ",[3793,4192,3989],{},", that is a whole number of months after the birth.",[3731,4195,4196,4198,4199,4202,4203,4206,4207,4209],{},[3793,4197,3946],{}," returns ",[3793,4200,4201],{},"Date?",": a date far enough out leaves the range the calendar supports. ",[3793,4204,4205],{},"?? fail"," turns that absence into the ",[3793,4208,3818],{}," error on the spot.",[3731,4211,4212,4213,4215],{},"The answer is then a division and a remainder, and the days left over are a plain ",[3793,4214,4118],{},":",[3958,4217,4219],{"className":3960,"code":4218,"language":3962,"meta":3963,"style":3963},"return Age { years: months \u002F 12, months: months % 12, days: on.DaysSince(reached) };\n",[3793,4220,4221],{"__ignoreMap":3963},[3967,4222,4223,4225,4228,4231,4234,4236,4238,4241,4243,4246,4249,4251,4253,4256,4258,4260,4263,4265,4267,4269,4271,4273,4275,4277],{"class":3969,"line":3970},[3967,4224,1518],{"class":3973},[3967,4226,4227],{"class":3977}," Age ",[3967,4229,4230],{"class":3985},"{",[3967,4232,4233],{"class":3977}," years",[3967,4235,4215],{"class":3985},[3967,4237,3978],{"class":3977},[3967,4239,4240],{"class":3981},"\u002F",[3967,4242,4024],{"class":4023},[3967,4244,4245],{"class":3985},",",[3967,4247,4248],{"class":3977}," months",[3967,4250,4215],{"class":3985},[3967,4252,3978],{"class":3977},[3967,4254,4255],{"class":3981},"%",[3967,4257,4024],{"class":4023},[3967,4259,4245],{"class":3985},[3967,4261,4262],{"class":3977}," days",[3967,4264,4215],{"class":3985},[3967,4266,4113],{"class":3977},[3967,4268,3749],{"class":3981},[3967,4270,4118],{"class":3977},[3967,4272,4086],{"class":3985},[3967,4274,4123],{"class":3977},[3967,4276,4008],{"class":3985},[3967,4278,4279],{"class":3985}," };\n",[3761,4281,4283],{"id":4282},"step-from-the-birth-not-from-last-month","Step from the birth, not from last month",[3731,4285,4286,4287,4290],{},"Notice that both calls are ",[3793,4288,4289],{},"birth.PlusMonths(months)"," — always counted from the birth date. Stepping one month at a time would let the clamping drift:",[3766,4292,4293,4303],{},[3769,4294,4295],{},[3772,4296,4297,4300],{},[3775,4298,4299],{},"From 31 January 2026",[3775,4301,4302],{},"Result",[3785,4304,4305,4314,4325],{},[3772,4306,4307,4312],{},[3790,4308,4309],{},[3793,4310,4311],{},"PlusMonths(1)",[3790,4313,3928],{},[3772,4315,4316,4322],{},[3790,4317,4318,4319,4321],{},"…then ",[3793,4320,4311],{}," again",[3790,4323,4324],{},"28 March",[3772,4326,4327,4333],{},[3790,4328,4329,4332],{},[3793,4330,4331],{},"PlusMonths(2)"," directly",[3790,4334,4335],{},"31 March",[3731,4337,4338],{},"Once a step has clamped to the 28th, every later step keeps the 28th. Counting from the birth each time keeps the original day of the month.",[3761,4340,4342],{"id":4341},"parsing-and-dates-that-do-not-exist","Parsing, and dates that do not exist",[3731,4344,4345,4347,4348,4351,4352,4355,4356,4359,4360,4362],{},[3793,4346,3849],{}," parses both texts with ",[3793,4349,4350],{},"ParseDate",", which returns ",[3793,4353,4354],{},"Date ! TimeParseError",". A text that is not a real date — such as 29 February 2023 — fails, and the ",[3793,4357,4358],{},"catch"," prints a row saying so and leaves ",[3793,4361,3849],{}," early:",[3958,4364,4366],{"className":3960,"code":4365,"language":3962,"meta":3963,"style":3963},"let birth = ParseDate(birthText) catch {\n    else => {\n        PrintLine(\"{}  {}  {} is not a date\", birthText, onText, birthText);\n        return;\n    }\n};\n",[3793,4367,4368,4394,4404,4431,4438,4443],{"__ignoreMap":3963},[3967,4369,4370,4373,4376,4378,4381,4383,4386,4388,4391],{"class":3969,"line":3970},[3967,4371,4372],{"class":3973},"let",[3967,4374,4375],{"class":3977}," birth ",[3967,4377,3982],{"class":3981},[3967,4379,4380],{"class":3977}," ParseDate",[3967,4382,4086],{"class":3985},[3967,4384,4385],{"class":3977},"birthText",[3967,4387,4008],{"class":3985},[3967,4389,4390],{"class":3977}," catch ",[3967,4392,4393],{"class":3985},"{\n",[3967,4395,4396,4399,4402],{"class":3969,"line":4048},[3967,4397,4398],{"class":3973},"    else",[3967,4400,4401],{"class":3981}," =>",[3967,4403,4134],{"class":3985},[3967,4405,4406,4409,4411,4415,4417,4420,4422,4425,4427,4429],{"class":3969,"line":4070},[3967,4407,4408],{"class":3977},"        PrintLine",[3967,4410,4086],{"class":3985},[3967,4412,4414],{"class":4413},"sXpww","\"{}  {}  {} is not a date\"",[3967,4416,4245],{"class":3985},[3967,4418,4419],{"class":3977}," birthText",[3967,4421,4245],{"class":3985},[3967,4423,4424],{"class":3977}," onText",[3967,4426,4245],{"class":3985},[3967,4428,4419],{"class":3977},[3967,4430,4067],{"class":3985},[3967,4432,4433,4436],{"class":3969,"line":4108},[3967,4434,4435],{"class":3973},"        return",[3967,4437,4105],{"class":3985},[3967,4439,4440],{"class":3969,"line":4137},[3967,4441,4442],{"class":3985},"    }\n",[3967,4444,4445],{"class":3969,"line":4151},[3967,4446,4447],{"class":3985},"};\n",[3731,4449,4450,4451,4453],{},"The outcome of ",[3793,4452,3833],{}," is matched with nested patterns, one arm per case of the enum:",[3958,4455,4457],{"className":3960,"code":4456,"language":3962,"meta":3963,"style":3963},"match AgeOn(birth, on) {\n    .Success(age) => PrintLine(\"{}  {}  {:5} {:7} {:5}\", birth, on,\n        age.years, age.months, age.days),\n    .Failure(AgeError::BornLater) => PrintLine(\"{}  {}  refused, born after that date\",\n        birth, on),\n    .Failure(AgeError::OutOfRange) => PrintLine(\"{}  {}  outside the calendar\", birth, on)\n}\n",[3793,4458,4459,4478,4513,4544,4572,4583,4618],{"__ignoreMap":3963},[3967,4460,4461,4463,4466,4468,4470,4472,4474,4476],{"class":3969,"line":3970},[3967,4462,1526],{"class":3973},[3967,4464,4465],{"class":3977}," AgeOn",[3967,4467,4086],{"class":3985},[3967,4469,4056],{"class":3977},[3967,4471,4245],{"class":3985},[3967,4473,4113],{"class":3977},[3967,4475,4008],{"class":3985},[3967,4477,4134],{"class":3985},[3967,4479,4480,4483,4486,4488,4490,4492,4494,4497,4499,4502,4504,4506,4508,4510],{"class":3969,"line":4048},[3967,4481,4482],{"class":3981},"    .",[3967,4484,4485],{"class":3977},"Success",[3967,4487,4086],{"class":3985},[3967,4489,3726],{"class":3977},[3967,4491,4008],{"class":3985},[3967,4493,4401],{"class":3981},[3967,4495,4496],{"class":3977}," PrintLine",[3967,4498,4086],{"class":3985},[3967,4500,4501],{"class":4413},"\"{}  {}  {:5} {:7} {:5}\"",[3967,4503,4245],{"class":3985},[3967,4505,4000],{"class":3977},[3967,4507,4245],{"class":3985},[3967,4509,4113],{"class":3977},[3967,4511,4512],{"class":3985},",\n",[3967,4514,4515,4518,4520,4523,4525,4528,4530,4532,4534,4536,4538,4541],{"class":3969,"line":4070},[3967,4516,4517],{"class":3977},"        age",[3967,4519,3749],{"class":3981},[3967,4521,4522],{"class":3977},"years",[3967,4524,4245],{"class":3985},[3967,4526,4527],{"class":3977}," age",[3967,4529,3749],{"class":3981},[3967,4531,4089],{"class":3977},[3967,4533,4245],{"class":3985},[3967,4535,4527],{"class":3977},[3967,4537,3749],{"class":3981},[3967,4539,4540],{"class":3977},"days",[3967,4542,4543],{"class":3985},"),\n",[3967,4545,4546,4548,4551,4553,4555,4557,4559,4561,4563,4565,4567,4570],{"class":3969,"line":4108},[3967,4547,4482],{"class":3981},[3967,4549,4550],{"class":3977},"Failure",[3967,4552,4086],{"class":3985},[3967,4554,3809],{"class":3977},[3967,4556,4100],{"class":3981},[3967,4558,3814],{"class":3977},[3967,4560,4008],{"class":3985},[3967,4562,4401],{"class":3981},[3967,4564,4496],{"class":3977},[3967,4566,4086],{"class":3985},[3967,4568,4569],{"class":4413},"\"{}  {}  refused, born after that date\"",[3967,4571,4512],{"class":3985},[3967,4573,4574,4577,4579,4581],{"class":3969,"line":4137},[3967,4575,4576],{"class":3977},"        birth",[3967,4578,4245],{"class":3985},[3967,4580,4113],{"class":3977},[3967,4582,4543],{"class":3985},[3967,4584,4585,4587,4589,4591,4593,4595,4597,4599,4601,4603,4605,4608,4610,4612,4614,4616],{"class":3969,"line":4151},[3967,4586,4482],{"class":3981},[3967,4588,4550],{"class":3977},[3967,4590,4086],{"class":3985},[3967,4592,3809],{"class":3977},[3967,4594,4100],{"class":3981},[3967,4596,3818],{"class":3977},[3967,4598,4008],{"class":3985},[3967,4600,4401],{"class":3981},[3967,4602,4496],{"class":3977},[3967,4604,4086],{"class":3985},[3967,4606,4607],{"class":4413},"\"{}  {}  outside the calendar\"",[3967,4609,4245],{"class":3985},[3967,4611,4000],{"class":3977},[3967,4613,4245],{"class":3985},[3967,4615,4113],{"class":3977},[3967,4617,4045],{"class":3985},[3967,4619,4620],{"class":3969,"line":4181},[3967,4621,4184],{"class":3985},[3731,4623,4624,3745,4627,4630],{},[3793,4625,4626],{},"{:5}",[3793,4628,4629],{},"{:7}"," pad the numbers to the widths of the header's columns.",[3761,4632,4634],{"id":4633},"the-program","The program",[3731,4636,4637,4638,4644],{},"The whole lesson is one package in the ",[3739,4639,4643],{"href":4640,"rel":4641},"https:\u002F\u002Fgithub.com\u002Frux-lang\u002FExamples\u002Ftree\u002Fmain\u002FProjects\u002FAge",[4642],"nofollow","Examples repository",". Its comments explain every step.",[3958,4646,4649],{"className":3960,"code":4647,"filename":4648,"language":3962,"meta":3963,"style":3963},"\u002F\u002F Working out how old someone is, in completed years, months and days. It sounds like\n\u002F\u002F subtraction and is not, because months have different lengths.\n\u002F\u002F\n\u002F\u002F The rule is the one people use: count whole years, then whole months, then the days left over.\n\u002F\u002F A month is complete when its day comes round again. When that day does not exist, the month\n\u002F\u002F is complete on its last day instead: one month after 31 January is 28 February, and someone\n\u002F\u002F born on 29 February has their birthday on 28 February in a year that is not a leap year.\n\u002F\u002F\n\u002F\u002F `PlusMonths` from the Time package follows exactly that rule, clamping to the end of the\n\u002F\u002F month, so the program never counts days in a month by hand. It finds the last date, on or\n\u002F\u002F before the second one, that is a whole number of months after the birth, and the days left\n\u002F\u002F over are a plain `DaysSince`.\n\u002F\u002F\n\u002F\u002F Every date is written out, so the output is the same on every run. A real program would ask\n\u002F\u002F the clock for today.\nimport Io::PrintLine;\nimport Time::{ Date, ParseDate };\n\nstruct Age {\n    years: int64;\n    months: int64;\n    days: int64;\n}\n\nenum AgeError {\n    BornLater,\n    OutOfRange\n}\n\n\u002F\u002F The age on `on` of someone born on `birth`, or why there is none.\nfunc AgeOn(birth: Date, on: Date) -> Age ! AgeError {\n    if on.DaysSince(birth) \u003C 0 {\n        fail AgeError::BornLater;\n    }\n\n    \u002F\u002F Counting the calendar months between the two gives the right answer, or one too many\n    \u002F\u002F when the day of the month has not come round yet. Stepping from `birth` rather than\n    \u002F\u002F from the previous month keeps the clamping from drifting: 31 January plus two months\n    \u002F\u002F is 31 March, not 28 March.\n    var months = ((on.year - birth.year) as int64) * 12 + (on.month as int64)\n        - (birth.month as int64);\n    var reached = birth.PlusMonths(months) ?? fail AgeError::OutOfRange;\n    if on.DaysSince(reached) \u003C 0 {\n        months -= 1;\n        reached = birth.PlusMonths(months) ?? fail AgeError::OutOfRange;\n    }\n    return Age { years: months \u002F 12, months: months % 12, days: on.DaysSince(reached) };\n}\n\nfunc Show(birthText: char8[..], onText: char8[..]) {\n    let birth = ParseDate(birthText) catch {\n        else => {\n            PrintLine(\"{}  {}  {} is not a date\", birthText, onText, birthText);\n            return;\n        }\n    };\n    let on = ParseDate(onText) catch {\n        else => {\n            PrintLine(\"{}  {}  {} is not a date\", birthText, onText, onText);\n            return;\n        }\n    };\n    match AgeOn(birth, on) {\n        .Success(age) => PrintLine(\"{}  {}  {:5} {:7} {:5}\", birth, on,\n            age.years, age.months, age.days),\n        .Failure(AgeError::BornLater) => PrintLine(\"{}  {}  refused, born after that date\",\n            birth, on),\n        .Failure(AgeError::OutOfRange) => PrintLine(\"{}  {}  outside the calendar\", birth, on)\n    }\n}\n\nfunc Main() -> int {\n    PrintLine(\"born        on          years  months  days\");\n\n    \u002F\u002F A birthday already past this year, one still to come, and the day itself.\n    Show(\"1990-03-15\", \"2026-10-04\");\n    Show(\"1990-12-25\", \"2026-10-04\");\n    Show(\"2000-10-04\", \"2026-10-04\");\n\n    \u002F\u002F The end of a month. 31 January reaches a whole month on 28 February, and the next on\n    \u002F\u002F 31 March, so 30 March is one month and 30 days.\n    Show(\"2026-01-31\", \"2026-02-28\");\n    Show(\"2026-01-31\", \"2026-03-30\");\n    Show(\"2026-01-31\", \"2026-03-31\");\n\n    \u002F\u002F A leap-day birthday falls on 28 February in an ordinary year, and on the 29th in a\n    \u002F\u002F leap year, which makes 28 February 2028 the day before it.\n    Show(\"2004-02-29\", \"2025-02-28\");\n    Show(\"2004-02-29\", \"2028-02-28\");\n    Show(\"2004-02-29\", \"2028-02-29\");\n\n    \u002F\u002F Dates the other way round, and a date that does not exist.\n    Show(\"2026-10-04\", \"1990-03-15\");\n    Show(\"2023-02-29\", \"2026-10-04\");\n    return 0;\n}\n","Src\u002FMain.rux",[3793,4650,4651,4657,4662,4667,4672,4677,4682,4687,4692,4698,4704,4710,4716,4721,4727,4733,4748,4770,4777,4788,4800,4812,4824,4829,4834,4845,4853,4859,4864,4869,4875,4914,4938,4950,4955,4960,4966,4972,4978,4984,5038,5058,5089,5112,5124,5154,5159,5211,5216,5221,5255,5277,5287,5311,5319,5325,5331,5354,5363,5386,5393,5398,5403,5423,5455,5483,5510,5522,5557,5562,5567,5572,5590,5603,5608,5614,5632,5648,5664,5669,5675,5681,5698,5714,5730,5735,5741,5747,5764,5780,5796,5801,5807,5824,5840,5849],{"__ignoreMap":3963},[3967,4652,4653],{"class":3969,"line":3970},[3967,4654,4656],{"class":4655},"sY9YT","\u002F\u002F Working out how old someone is, in completed years, months and days. It sounds like\n",[3967,4658,4659],{"class":3969,"line":4048},[3967,4660,4661],{"class":4655},"\u002F\u002F subtraction and is not, because months have different lengths.\n",[3967,4663,4664],{"class":3969,"line":4070},[3967,4665,4666],{"class":4655},"\u002F\u002F\n",[3967,4668,4669],{"class":3969,"line":4108},[3967,4670,4671],{"class":4655},"\u002F\u002F The rule is the one people use: count whole years, then whole months, then the days left over.\n",[3967,4673,4674],{"class":3969,"line":4137},[3967,4675,4676],{"class":4655},"\u002F\u002F A month is complete when its day comes round again. When that day does not exist, the month\n",[3967,4678,4679],{"class":3969,"line":4151},[3967,4680,4681],{"class":4655},"\u002F\u002F is complete on its last day instead: one month after 31 January is 28 February, and someone\n",[3967,4683,4684],{"class":3969,"line":4181},[3967,4685,4686],{"class":4655},"\u002F\u002F born on 29 February has their birthday on 28 February in a year that is not a leap year.\n",[3967,4688,4690],{"class":3969,"line":4689},8,[3967,4691,4666],{"class":4655},[3967,4693,4695],{"class":3969,"line":4694},9,[3967,4696,4697],{"class":4655},"\u002F\u002F `PlusMonths` from the Time package follows exactly that rule, clamping to the end of the\n",[3967,4699,4701],{"class":3969,"line":4700},10,[3967,4702,4703],{"class":4655},"\u002F\u002F month, so the program never counts days in a month by hand. It finds the last date, on or\n",[3967,4705,4707],{"class":3969,"line":4706},11,[3967,4708,4709],{"class":4655},"\u002F\u002F before the second one, that is a whole number of months after the birth, and the days left\n",[3967,4711,4713],{"class":3969,"line":4712},12,[3967,4714,4715],{"class":4655},"\u002F\u002F over are a plain `DaysSince`.\n",[3967,4717,4719],{"class":3969,"line":4718},13,[3967,4720,4666],{"class":4655},[3967,4722,4724],{"class":3969,"line":4723},14,[3967,4725,4726],{"class":4655},"\u002F\u002F Every date is written out, so the output is the same on every run. A real program would ask\n",[3967,4728,4730],{"class":3969,"line":4729},15,[3967,4731,4732],{"class":4655},"\u002F\u002F the clock for today.\n",[3967,4734,4736,4739,4742,4744,4746],{"class":3969,"line":4735},16,[3967,4737,4738],{"class":3973},"import",[3967,4740,4741],{"class":3977}," Io",[3967,4743,4100],{"class":3981},[3967,4745,2731],{"class":3977},[3967,4747,4105],{"class":3985},[3967,4749,4751,4753,4756,4758,4760,4763,4765,4768],{"class":3969,"line":4750},17,[3967,4752,4738],{"class":3973},[3967,4754,4755],{"class":3977}," Time",[3967,4757,4100],{"class":3981},[3967,4759,4230],{"class":3985},[3967,4761,4762],{"class":3977}," Date",[3967,4764,4245],{"class":3985},[3967,4766,4767],{"class":3977}," ParseDate ",[3967,4769,4447],{"class":3985},[3967,4771,4773],{"class":3969,"line":4772},18,[3967,4774,4776],{"emptyLinePlaceholder":4775},true,"\n",[3967,4778,4780,4783,4786],{"class":3969,"line":4779},19,[3967,4781,4782],{"class":3973},"struct",[3967,4784,4785],{"class":4014}," Age",[3967,4787,4134],{"class":3985},[3967,4789,4791,4794,4796,4798],{"class":3969,"line":4790},20,[3967,4792,4793],{"class":3977},"    years",[3967,4795,4215],{"class":3985},[3967,4797,4015],{"class":4014},[3967,4799,4105],{"class":3985},[3967,4801,4803,4806,4808,4810],{"class":3969,"line":4802},21,[3967,4804,4805],{"class":3977},"    months",[3967,4807,4215],{"class":3985},[3967,4809,4015],{"class":4014},[3967,4811,4105],{"class":3985},[3967,4813,4815,4818,4820,4822],{"class":3969,"line":4814},22,[3967,4816,4817],{"class":3977},"    days",[3967,4819,4215],{"class":3985},[3967,4821,4015],{"class":4014},[3967,4823,4105],{"class":3985},[3967,4825,4827],{"class":3969,"line":4826},23,[3967,4828,4184],{"class":3985},[3967,4830,4832],{"class":3969,"line":4831},24,[3967,4833,4776],{"emptyLinePlaceholder":4775},[3967,4835,4837,4840,4843],{"class":3969,"line":4836},25,[3967,4838,4839],{"class":3973},"enum",[3967,4841,4842],{"class":4014}," AgeError",[3967,4844,4134],{"class":3985},[3967,4846,4848,4851],{"class":3969,"line":4847},26,[3967,4849,4850],{"class":3977},"    BornLater",[3967,4852,4512],{"class":3985},[3967,4854,4856],{"class":3969,"line":4855},27,[3967,4857,4858],{"class":3977},"    OutOfRange\n",[3967,4860,4862],{"class":3969,"line":4861},28,[3967,4863,4184],{"class":3985},[3967,4865,4867],{"class":3969,"line":4866},29,[3967,4868,4776],{"emptyLinePlaceholder":4775},[3967,4870,4872],{"class":3969,"line":4871},30,[3967,4873,4874],{"class":4655},"\u002F\u002F The age on `on` of someone born on `birth`, or why there is none.\n",[3967,4876,4878,4881,4884,4886,4889,4892,4894,4896,4898,4900,4902,4904,4907,4909,4912],{"class":3969,"line":4877},31,[3967,4879,4880],{"class":3973},"func",[3967,4882,4465],{"class":4883},"sptzg",[3967,4885,4086],{"class":3985},[3967,4887,4056],{"class":4888},"sYR1E",[3967,4890,4891],{"class":3985},": ",[3967,4893,2830],{"class":4014},[3967,4895,4245],{"class":3985},[3967,4897,4113],{"class":4888},[3967,4899,4891],{"class":3985},[3967,4901,2830],{"class":4014},[3967,4903,4008],{"class":3985},[3967,4905,4906],{"class":3985}," ->",[3967,4908,4785],{"class":3973},[3967,4910,4911],{"class":3977}," ! AgeError ",[3967,4913,4393],{"class":3985},[3967,4915,4917,4920,4922,4924,4926,4928,4930,4932,4934,4936],{"class":3969,"line":4916},32,[3967,4918,4919],{"class":3973},"    if",[3967,4921,4113],{"class":3977},[3967,4923,3749],{"class":3981},[3967,4925,4118],{"class":3977},[3967,4927,4086],{"class":3985},[3967,4929,4056],{"class":3977},[3967,4931,4008],{"class":3985},[3967,4933,4128],{"class":3981},[3967,4935,4131],{"class":4023},[3967,4937,4134],{"class":3985},[3967,4939,4941,4944,4946,4948],{"class":3969,"line":4940},33,[3967,4942,4943],{"class":3977},"        fail AgeError",[3967,4945,4100],{"class":3981},[3967,4947,3814],{"class":3977},[3967,4949,4105],{"class":3985},[3967,4951,4953],{"class":3969,"line":4952},34,[3967,4954,4442],{"class":3985},[3967,4956,4958],{"class":3969,"line":4957},35,[3967,4959,4776],{"emptyLinePlaceholder":4775},[3967,4961,4963],{"class":3969,"line":4962},36,[3967,4964,4965],{"class":4655},"    \u002F\u002F Counting the calendar months between the two gives the right answer, or one too many\n",[3967,4967,4969],{"class":3969,"line":4968},37,[3967,4970,4971],{"class":4655},"    \u002F\u002F when the day of the month has not come round yet. Stepping from `birth` rather than\n",[3967,4973,4975],{"class":3969,"line":4974},38,[3967,4976,4977],{"class":4655},"    \u002F\u002F from the previous month keeps the clamping from drifting: 31 January plus two months\n",[3967,4979,4981],{"class":3969,"line":4980},39,[3967,4982,4983],{"class":4655},"    \u002F\u002F is 31 March, not 28 March.\n",[3967,4985,4987,4990,4992,4994,4996,4998,5000,5002,5004,5006,5008,5010,5012,5014,5016,5018,5020,5022,5024,5026,5028,5030,5032,5034,5036],{"class":3969,"line":4986},40,[3967,4988,4989],{"class":3973},"    var",[3967,4991,3978],{"class":3977},[3967,4993,3982],{"class":3981},[3967,4995,3986],{"class":3985},[3967,4997,3989],{"class":3977},[3967,4999,3749],{"class":3981},[3967,5001,3994],{"class":3977},[3967,5003,3997],{"class":3981},[3967,5005,4000],{"class":3977},[3967,5007,3749],{"class":3981},[3967,5009,4005],{"class":3977},[3967,5011,4008],{"class":3985},[3967,5013,4011],{"class":3981},[3967,5015,4015],{"class":4014},[3967,5017,4008],{"class":3985},[3967,5019,4020],{"class":3981},[3967,5021,4024],{"class":4023},[3967,5023,4027],{"class":3981},[3967,5025,4030],{"class":3985},[3967,5027,3989],{"class":3977},[3967,5029,3749],{"class":3981},[3967,5031,4037],{"class":3977},[3967,5033,4040],{"class":3981},[3967,5035,4015],{"class":4014},[3967,5037,4045],{"class":3985},[3967,5039,5041,5044,5046,5048,5050,5052,5054,5056],{"class":3969,"line":5040},41,[3967,5042,5043],{"class":3981},"        -",[3967,5045,4030],{"class":3985},[3967,5047,4056],{"class":3977},[3967,5049,3749],{"class":3981},[3967,5051,4037],{"class":3977},[3967,5053,4040],{"class":3981},[3967,5055,4015],{"class":4014},[3967,5057,4067],{"class":3985},[3967,5059,5061,5063,5065,5067,5069,5071,5073,5075,5077,5079,5081,5083,5085,5087],{"class":3969,"line":5060},42,[3967,5062,4989],{"class":3973},[3967,5064,4075],{"class":3977},[3967,5066,3982],{"class":3981},[3967,5068,4000],{"class":3977},[3967,5070,3749],{"class":3981},[3967,5072,3946],{"class":3977},[3967,5074,4086],{"class":3985},[3967,5076,4089],{"class":3977},[3967,5078,4008],{"class":3985},[3967,5080,4094],{"class":3981},[3967,5082,4097],{"class":3977},[3967,5084,4100],{"class":3981},[3967,5086,3818],{"class":3977},[3967,5088,4105],{"class":3985},[3967,5090,5092,5094,5096,5098,5100,5102,5104,5106,5108,5110],{"class":3969,"line":5091},43,[3967,5093,4919],{"class":3973},[3967,5095,4113],{"class":3977},[3967,5097,3749],{"class":3981},[3967,5099,4118],{"class":3977},[3967,5101,4086],{"class":3985},[3967,5103,4123],{"class":3977},[3967,5105,4008],{"class":3985},[3967,5107,4128],{"class":3981},[3967,5109,4131],{"class":4023},[3967,5111,4134],{"class":3985},[3967,5113,5115,5118,5120,5122],{"class":3969,"line":5114},44,[3967,5116,5117],{"class":3977},"        months ",[3967,5119,4143],{"class":3981},[3967,5121,4146],{"class":4023},[3967,5123,4105],{"class":3985},[3967,5125,5127,5130,5132,5134,5136,5138,5140,5142,5144,5146,5148,5150,5152],{"class":3969,"line":5126},45,[3967,5128,5129],{"class":3977},"        reached ",[3967,5131,3982],{"class":3981},[3967,5133,4000],{"class":3977},[3967,5135,3749],{"class":3981},[3967,5137,3946],{"class":3977},[3967,5139,4086],{"class":3985},[3967,5141,4089],{"class":3977},[3967,5143,4008],{"class":3985},[3967,5145,4094],{"class":3981},[3967,5147,4097],{"class":3977},[3967,5149,4100],{"class":3981},[3967,5151,3818],{"class":3977},[3967,5153,4105],{"class":3985},[3967,5155,5157],{"class":3969,"line":5156},46,[3967,5158,4442],{"class":3985},[3967,5160,5162,5165,5167,5169,5171,5173,5175,5177,5179,5181,5183,5185,5187,5189,5191,5193,5195,5197,5199,5201,5203,5205,5207,5209],{"class":3969,"line":5161},47,[3967,5163,5164],{"class":3973},"    return",[3967,5166,4227],{"class":3977},[3967,5168,4230],{"class":3985},[3967,5170,4233],{"class":3977},[3967,5172,4215],{"class":3985},[3967,5174,3978],{"class":3977},[3967,5176,4240],{"class":3981},[3967,5178,4024],{"class":4023},[3967,5180,4245],{"class":3985},[3967,5182,4248],{"class":3977},[3967,5184,4215],{"class":3985},[3967,5186,3978],{"class":3977},[3967,5188,4255],{"class":3981},[3967,5190,4024],{"class":4023},[3967,5192,4245],{"class":3985},[3967,5194,4262],{"class":3977},[3967,5196,4215],{"class":3985},[3967,5198,4113],{"class":3977},[3967,5200,3749],{"class":3981},[3967,5202,4118],{"class":3977},[3967,5204,4086],{"class":3985},[3967,5206,4123],{"class":3977},[3967,5208,4008],{"class":3985},[3967,5210,4279],{"class":3985},[3967,5212,5214],{"class":3969,"line":5213},48,[3967,5215,4184],{"class":3985},[3967,5217,5219],{"class":3969,"line":5218},49,[3967,5220,4776],{"emptyLinePlaceholder":4775},[3967,5222,5224,5226,5229,5231,5233,5235,5238,5241,5243,5245,5247,5249,5251,5253],{"class":3969,"line":5223},50,[3967,5225,4880],{"class":3973},[3967,5227,5228],{"class":4883}," Show",[3967,5230,4086],{"class":3985},[3967,5232,4385],{"class":4888},[3967,5234,4891],{"class":3985},[3967,5236,5237],{"class":4014},"char8",[3967,5239,5240],{"class":3977},"[..]",[3967,5242,4245],{"class":3985},[3967,5244,4424],{"class":4888},[3967,5246,4891],{"class":3985},[3967,5248,5237],{"class":4014},[3967,5250,5240],{"class":3977},[3967,5252,4008],{"class":3985},[3967,5254,4134],{"class":3985},[3967,5256,5258,5261,5263,5265,5267,5269,5271,5273,5275],{"class":3969,"line":5257},51,[3967,5259,5260],{"class":3973},"    let",[3967,5262,4375],{"class":3977},[3967,5264,3982],{"class":3981},[3967,5266,4380],{"class":3977},[3967,5268,4086],{"class":3985},[3967,5270,4385],{"class":3977},[3967,5272,4008],{"class":3985},[3967,5274,4390],{"class":3977},[3967,5276,4393],{"class":3985},[3967,5278,5280,5283,5285],{"class":3969,"line":5279},52,[3967,5281,5282],{"class":3973},"        else",[3967,5284,4401],{"class":3981},[3967,5286,4134],{"class":3985},[3967,5288,5290,5293,5295,5297,5299,5301,5303,5305,5307,5309],{"class":3969,"line":5289},53,[3967,5291,5292],{"class":3977},"            PrintLine",[3967,5294,4086],{"class":3985},[3967,5296,4414],{"class":4413},[3967,5298,4245],{"class":3985},[3967,5300,4419],{"class":3977},[3967,5302,4245],{"class":3985},[3967,5304,4424],{"class":3977},[3967,5306,4245],{"class":3985},[3967,5308,4419],{"class":3977},[3967,5310,4067],{"class":3985},[3967,5312,5314,5317],{"class":3969,"line":5313},54,[3967,5315,5316],{"class":3973},"            return",[3967,5318,4105],{"class":3985},[3967,5320,5322],{"class":3969,"line":5321},55,[3967,5323,5324],{"class":3985},"        }\n",[3967,5326,5328],{"class":3969,"line":5327},56,[3967,5329,5330],{"class":3985},"    };\n",[3967,5332,5334,5336,5339,5341,5343,5345,5348,5350,5352],{"class":3969,"line":5333},57,[3967,5335,5260],{"class":3973},[3967,5337,5338],{"class":3977}," on ",[3967,5340,3982],{"class":3981},[3967,5342,4380],{"class":3977},[3967,5344,4086],{"class":3985},[3967,5346,5347],{"class":3977},"onText",[3967,5349,4008],{"class":3985},[3967,5351,4390],{"class":3977},[3967,5353,4393],{"class":3985},[3967,5355,5357,5359,5361],{"class":3969,"line":5356},58,[3967,5358,5282],{"class":3973},[3967,5360,4401],{"class":3981},[3967,5362,4134],{"class":3985},[3967,5364,5366,5368,5370,5372,5374,5376,5378,5380,5382,5384],{"class":3969,"line":5365},59,[3967,5367,5292],{"class":3977},[3967,5369,4086],{"class":3985},[3967,5371,4414],{"class":4413},[3967,5373,4245],{"class":3985},[3967,5375,4419],{"class":3977},[3967,5377,4245],{"class":3985},[3967,5379,4424],{"class":3977},[3967,5381,4245],{"class":3985},[3967,5383,4424],{"class":3977},[3967,5385,4067],{"class":3985},[3967,5387,5389,5391],{"class":3969,"line":5388},60,[3967,5390,5316],{"class":3973},[3967,5392,4105],{"class":3985},[3967,5394,5396],{"class":3969,"line":5395},61,[3967,5397,5324],{"class":3985},[3967,5399,5401],{"class":3969,"line":5400},62,[3967,5402,5330],{"class":3985},[3967,5404,5406,5409,5411,5413,5415,5417,5419,5421],{"class":3969,"line":5405},63,[3967,5407,5408],{"class":3973},"    match",[3967,5410,4465],{"class":3977},[3967,5412,4086],{"class":3985},[3967,5414,4056],{"class":3977},[3967,5416,4245],{"class":3985},[3967,5418,4113],{"class":3977},[3967,5420,4008],{"class":3985},[3967,5422,4134],{"class":3985},[3967,5424,5426,5429,5431,5433,5435,5437,5439,5441,5443,5445,5447,5449,5451,5453],{"class":3969,"line":5425},64,[3967,5427,5428],{"class":3981},"        .",[3967,5430,4485],{"class":3977},[3967,5432,4086],{"class":3985},[3967,5434,3726],{"class":3977},[3967,5436,4008],{"class":3985},[3967,5438,4401],{"class":3981},[3967,5440,4496],{"class":3977},[3967,5442,4086],{"class":3985},[3967,5444,4501],{"class":4413},[3967,5446,4245],{"class":3985},[3967,5448,4000],{"class":3977},[3967,5450,4245],{"class":3985},[3967,5452,4113],{"class":3977},[3967,5454,4512],{"class":3985},[3967,5456,5458,5461,5463,5465,5467,5469,5471,5473,5475,5477,5479,5481],{"class":3969,"line":5457},65,[3967,5459,5460],{"class":3977},"            age",[3967,5462,3749],{"class":3981},[3967,5464,4522],{"class":3977},[3967,5466,4245],{"class":3985},[3967,5468,4527],{"class":3977},[3967,5470,3749],{"class":3981},[3967,5472,4089],{"class":3977},[3967,5474,4245],{"class":3985},[3967,5476,4527],{"class":3977},[3967,5478,3749],{"class":3981},[3967,5480,4540],{"class":3977},[3967,5482,4543],{"class":3985},[3967,5484,5486,5488,5490,5492,5494,5496,5498,5500,5502,5504,5506,5508],{"class":3969,"line":5485},66,[3967,5487,5428],{"class":3981},[3967,5489,4550],{"class":3977},[3967,5491,4086],{"class":3985},[3967,5493,3809],{"class":3977},[3967,5495,4100],{"class":3981},[3967,5497,3814],{"class":3977},[3967,5499,4008],{"class":3985},[3967,5501,4401],{"class":3981},[3967,5503,4496],{"class":3977},[3967,5505,4086],{"class":3985},[3967,5507,4569],{"class":4413},[3967,5509,4512],{"class":3985},[3967,5511,5513,5516,5518,5520],{"class":3969,"line":5512},67,[3967,5514,5515],{"class":3977},"            birth",[3967,5517,4245],{"class":3985},[3967,5519,4113],{"class":3977},[3967,5521,4543],{"class":3985},[3967,5523,5525,5527,5529,5531,5533,5535,5537,5539,5541,5543,5545,5547,5549,5551,5553,5555],{"class":3969,"line":5524},68,[3967,5526,5428],{"class":3981},[3967,5528,4550],{"class":3977},[3967,5530,4086],{"class":3985},[3967,5532,3809],{"class":3977},[3967,5534,4100],{"class":3981},[3967,5536,3818],{"class":3977},[3967,5538,4008],{"class":3985},[3967,5540,4401],{"class":3981},[3967,5542,4496],{"class":3977},[3967,5544,4086],{"class":3985},[3967,5546,4607],{"class":4413},[3967,5548,4245],{"class":3985},[3967,5550,4000],{"class":3977},[3967,5552,4245],{"class":3985},[3967,5554,4113],{"class":3977},[3967,5556,4045],{"class":3985},[3967,5558,5560],{"class":3969,"line":5559},69,[3967,5561,4442],{"class":3985},[3967,5563,5565],{"class":3969,"line":5564},70,[3967,5566,4184],{"class":3985},[3967,5568,5570],{"class":3969,"line":5569},71,[3967,5571,4776],{"emptyLinePlaceholder":4775},[3967,5573,5575,5577,5580,5583,5585,5588],{"class":3969,"line":5574},72,[3967,5576,4880],{"class":3973},[3967,5578,5579],{"class":4883}," Main",[3967,5581,5582],{"class":3985},"()",[3967,5584,4906],{"class":3985},[3967,5586,5587],{"class":3973}," int",[3967,5589,4134],{"class":3985},[3967,5591,5593,5596,5598,5601],{"class":3969,"line":5592},73,[3967,5594,5595],{"class":3977},"    PrintLine",[3967,5597,4086],{"class":3985},[3967,5599,5600],{"class":4413},"\"born        on          years  months  days\"",[3967,5602,4067],{"class":3985},[3967,5604,5606],{"class":3969,"line":5605},74,[3967,5607,4776],{"emptyLinePlaceholder":4775},[3967,5609,5611],{"class":3969,"line":5610},75,[3967,5612,5613],{"class":4655},"    \u002F\u002F A birthday already past this year, one still to come, and the day itself.\n",[3967,5615,5617,5620,5622,5625,5627,5630],{"class":3969,"line":5616},76,[3967,5618,5619],{"class":3977},"    Show",[3967,5621,4086],{"class":3985},[3967,5623,5624],{"class":4413},"\"1990-03-15\"",[3967,5626,4245],{"class":3985},[3967,5628,5629],{"class":4413}," \"2026-10-04\"",[3967,5631,4067],{"class":3985},[3967,5633,5635,5637,5639,5642,5644,5646],{"class":3969,"line":5634},77,[3967,5636,5619],{"class":3977},[3967,5638,4086],{"class":3985},[3967,5640,5641],{"class":4413},"\"1990-12-25\"",[3967,5643,4245],{"class":3985},[3967,5645,5629],{"class":4413},[3967,5647,4067],{"class":3985},[3967,5649,5651,5653,5655,5658,5660,5662],{"class":3969,"line":5650},78,[3967,5652,5619],{"class":3977},[3967,5654,4086],{"class":3985},[3967,5656,5657],{"class":4413},"\"2000-10-04\"",[3967,5659,4245],{"class":3985},[3967,5661,5629],{"class":4413},[3967,5663,4067],{"class":3985},[3967,5665,5667],{"class":3969,"line":5666},79,[3967,5668,4776],{"emptyLinePlaceholder":4775},[3967,5670,5672],{"class":3969,"line":5671},80,[3967,5673,5674],{"class":4655},"    \u002F\u002F The end of a month. 31 January reaches a whole month on 28 February, and the next on\n",[3967,5676,5678],{"class":3969,"line":5677},81,[3967,5679,5680],{"class":4655},"    \u002F\u002F 31 March, so 30 March is one month and 30 days.\n",[3967,5682,5684,5686,5688,5691,5693,5696],{"class":3969,"line":5683},82,[3967,5685,5619],{"class":3977},[3967,5687,4086],{"class":3985},[3967,5689,5690],{"class":4413},"\"2026-01-31\"",[3967,5692,4245],{"class":3985},[3967,5694,5695],{"class":4413}," \"2026-02-28\"",[3967,5697,4067],{"class":3985},[3967,5699,5701,5703,5705,5707,5709,5712],{"class":3969,"line":5700},83,[3967,5702,5619],{"class":3977},[3967,5704,4086],{"class":3985},[3967,5706,5690],{"class":4413},[3967,5708,4245],{"class":3985},[3967,5710,5711],{"class":4413}," \"2026-03-30\"",[3967,5713,4067],{"class":3985},[3967,5715,5717,5719,5721,5723,5725,5728],{"class":3969,"line":5716},84,[3967,5718,5619],{"class":3977},[3967,5720,4086],{"class":3985},[3967,5722,5690],{"class":4413},[3967,5724,4245],{"class":3985},[3967,5726,5727],{"class":4413}," \"2026-03-31\"",[3967,5729,4067],{"class":3985},[3967,5731,5733],{"class":3969,"line":5732},85,[3967,5734,4776],{"emptyLinePlaceholder":4775},[3967,5736,5738],{"class":3969,"line":5737},86,[3967,5739,5740],{"class":4655},"    \u002F\u002F A leap-day birthday falls on 28 February in an ordinary year, and on the 29th in a\n",[3967,5742,5744],{"class":3969,"line":5743},87,[3967,5745,5746],{"class":4655},"    \u002F\u002F leap year, which makes 28 February 2028 the day before it.\n",[3967,5748,5750,5752,5754,5757,5759,5762],{"class":3969,"line":5749},88,[3967,5751,5619],{"class":3977},[3967,5753,4086],{"class":3985},[3967,5755,5756],{"class":4413},"\"2004-02-29\"",[3967,5758,4245],{"class":3985},[3967,5760,5761],{"class":4413}," \"2025-02-28\"",[3967,5763,4067],{"class":3985},[3967,5765,5767,5769,5771,5773,5775,5778],{"class":3969,"line":5766},89,[3967,5768,5619],{"class":3977},[3967,5770,4086],{"class":3985},[3967,5772,5756],{"class":4413},[3967,5774,4245],{"class":3985},[3967,5776,5777],{"class":4413}," \"2028-02-28\"",[3967,5779,4067],{"class":3985},[3967,5781,5783,5785,5787,5789,5791,5794],{"class":3969,"line":5782},90,[3967,5784,5619],{"class":3977},[3967,5786,4086],{"class":3985},[3967,5788,5756],{"class":4413},[3967,5790,4245],{"class":3985},[3967,5792,5793],{"class":4413}," \"2028-02-29\"",[3967,5795,4067],{"class":3985},[3967,5797,5799],{"class":3969,"line":5798},91,[3967,5800,4776],{"emptyLinePlaceholder":4775},[3967,5802,5804],{"class":3969,"line":5803},92,[3967,5805,5806],{"class":4655},"    \u002F\u002F Dates the other way round, and a date that does not exist.\n",[3967,5808,5810,5812,5814,5817,5819,5822],{"class":3969,"line":5809},93,[3967,5811,5619],{"class":3977},[3967,5813,4086],{"class":3985},[3967,5815,5816],{"class":4413},"\"2026-10-04\"",[3967,5818,4245],{"class":3985},[3967,5820,5821],{"class":4413}," \"1990-03-15\"",[3967,5823,4067],{"class":3985},[3967,5825,5827,5829,5831,5834,5836,5838],{"class":3969,"line":5826},94,[3967,5828,5619],{"class":3977},[3967,5830,4086],{"class":3985},[3967,5832,5833],{"class":4413},"\"2023-02-29\"",[3967,5835,4245],{"class":3985},[3967,5837,5629],{"class":4413},[3967,5839,4067],{"class":3985},[3967,5841,5843,5845,5847],{"class":3969,"line":5842},95,[3967,5844,5164],{"class":3973},[3967,5846,4131],{"class":4023},[3967,5848,4105],{"class":3985},[3967,5850,5852],{"class":3969,"line":5851},96,[3967,5853,4184],{"class":3985},[3731,5855,5856,5857,5859,5860,5863,5864,5866,5867,3749],{},"Besides ",[3793,5858,2669],{},", its ",[3793,5861,5862],{},"Rux.toml"," lists ",[3793,5865,2820],{}," under ",[3793,5868,5869],{},"[Dependencies]",[3761,5871,5873],{"id":5872},"run-it","Run it",[3958,5875,5879],{"className":5876,"code":5877,"language":5878,"meta":3963,"style":3963},"language-sh shiki shiki-themes catppuccin-latte catppuccin-latte catppuccin-mocha","cd Examples\u002FProjects\u002FAge\nrux run\n","sh",[3793,5880,5881,5890],{"__ignoreMap":3963},[3967,5882,5883,5887],{"class":3969,"line":3970},[3967,5884,5886],{"class":5885},"s0rF6","cd",[3967,5888,5889],{"class":4413}," Examples\u002FProjects\u002FAge\n",[3967,5891,5892,5894],{"class":3969,"line":4048},[3967,5893,3962],{"class":4883},[3967,5895,5896],{"class":4413}," run\n",[3958,5898,5903],{"className":5899,"code":5901,"language":5902},[5900],"language-text","born        on          years  months  days\n1990-03-15  2026-10-04     36       6    19\n1990-12-25  2026-10-04     35       9     9\n2000-10-04  2026-10-04     26       0     0\n2026-01-31  2026-02-28      0       1     0\n2026-01-31  2026-03-30      0       1    30\n2026-01-31  2026-03-31      0       2     0\n2004-02-29  2025-02-28     21       0     0\n2004-02-29  2028-02-28     23      11    30\n2004-02-29  2028-02-29     24       0     0\n2026-10-04  1990-03-15  refused, born after that date\n2023-02-29  2026-10-04  2023-02-29 is not a date\n","text",[3793,5904,5901],{"__ignoreMap":3963},[3761,5906,5908],{"id":5907},"common-mistakes","Common mistakes",[5910,5911,5912,5938,5944],"mistake",{},[3731,5913,5914,5922,5925,5927,5928,5931,5932,5934,5935,5937],{},[3734,5915,5916,5917,5919,5920,3749],{},"Using a ",[3793,5918,4201],{}," as a ",[3793,5921,2830],{},[5923,5924],"br",{},[3793,5926,3946],{}," may have no answer, so ",[3793,5929,5930],{},"var reached = birth.PlusMonths(months);"," makes ",[3793,5933,4123],{}," a ",[3793,5936,4201],{},", and the next line fails:",[3958,5939,5942],{"className":5940,"code":5941,"language":5902,"meta":3963},[5900],"error: argument 1 to 'DaysSince' has type 'Date?', but parameter 'earlier' requires 'Date'\n",[3793,5943,5941],{"__ignoreMap":3963},[3731,5945,5946,5947,3749],{},"Decide what absence means — here ",[3793,5948,5949],{},"?? fail AgeError::OutOfRange",[5910,5951,5952],{},[3731,5953,5954,5957,5959,5960,5963],{},[3734,5955,5956],{},"Skipping the correction step.",[5923,5958],{},"\nWithout the ",[3793,5961,5962],{},"if on.DaysSince(reached) \u003C 0"," block the program still compiles, but every birthday not yet reached this year comes out with negative days: 15 March 1990 on 4 October 2026 gives 36 years, 7 months and −11 days.",[3761,5965,5967],{"id":5966},"try-it-yourself","Try it yourself",[5969,5970,5971,5982,5987,5990],"ol",{},[5972,5973,5974,5975,5978,5979,3749],"li",{},"Use today's date instead of a fixed one. ",[3793,5976,5977],{},"DateTime::FromTimestamp(Timestamp::Now(), UtcOffset::Utc()).date"," from the Time package is today in UTC — see ",[3739,5980,5981],{"href":1030},"Date and time",[5972,5983,5984,5985,3749],{},"Also print the age in total days, with one ",[3793,5986,4118],{},[5972,5988,5989],{},"Print how many days remain until the next birthday. (Careful with 29 February.)",[5972,5991,5992,5993,5996,5997,5999],{},"Read the birth date from the input instead of from the source, using ",[3739,5994,5995],{"href":736},"Input",", and keep asking until ",[3793,5998,4350],{}," accepts it.",[3761,6001,6003],{"id":6002},"learn-more","Learn more",[6005,6006,6007,6018,6024,6032],"ul",{},[5972,6008,6009,6011,6012,3741,6014,6017],{},[3739,6010,2830],{"href":1026}," — ",[3793,6013,4350],{},[3793,6015,6016],{},"PlusDays"," and friends",[5972,6019,6020,6011,6022],{},[3739,6021,3748],{"href":503},[3793,6023,4205],{},[5972,6025,6026,6028,6029,6031],{},[3739,6027,3824],{"href":362}," — why ",[3793,6030,3809],{}," needs no data",[5972,6033,6034,6035],{},"Next project: ",[3739,6036,6037],{"href":1347},"Password",[6039,6040,6041],"style",{},"html pre.shiki code .smXKV, html code.shiki .smXKV{--shiki-light:#8839EF;--shiki-default:#8839EF;--shiki-dark:#CBA6F7}html pre.shiki code .sJT_S, html code.shiki .sJT_S{--shiki-light:#4C4F69;--shiki-default:#4C4F69;--shiki-dark:#CDD6F4}html pre.shiki code .sCFbw, html code.shiki .sCFbw{--shiki-light:#179299;--shiki-default:#179299;--shiki-dark:#94E2D5}html pre.shiki code .sDi1i, html code.shiki .sDi1i{--shiki-light:#7C7F93;--shiki-default:#7C7F93;--shiki-dark:#9399B2}html pre.shiki code .sqZDx, html code.shiki .sqZDx{--shiki-light:#DF8E1D;--shiki-light-font-style:italic;--shiki-default:#DF8E1D;--shiki-default-font-style:italic;--shiki-dark:#F9E2AF;--shiki-dark-font-style:italic}html pre.shiki code .snhBn, html code.shiki .snhBn{--shiki-light:#FE640B;--shiki-default:#FE640B;--shiki-dark:#FAB387}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sXpww, html code.shiki .sXpww{--shiki-light:#40A02B;--shiki-default:#40A02B;--shiki-dark:#A6E3A1}html pre.shiki code .sY9YT, html code.shiki .sY9YT{--shiki-light:#7C7F93;--shiki-light-font-style:italic;--shiki-default:#7C7F93;--shiki-default-font-style:italic;--shiki-dark:#9399B2;--shiki-dark-font-style:italic}html pre.shiki code .sptzg, html code.shiki .sptzg{--shiki-light:#1E66F5;--shiki-light-font-style:italic;--shiki-default:#1E66F5;--shiki-default-font-style:italic;--shiki-dark:#89B4FA;--shiki-dark-font-style:italic}html pre.shiki code .sYR1E, html code.shiki .sYR1E{--shiki-light:#E64553;--shiki-light-font-style:italic;--shiki-default:#E64553;--shiki-default-font-style:italic;--shiki-dark:#EBA0AC;--shiki-dark-font-style:italic}html pre.shiki code .s0rF6, html code.shiki .s0rF6{--shiki-light:#D20F39;--shiki-light-font-style:italic;--shiki-default:#D20F39;--shiki-default-font-style:italic;--shiki-dark:#F38BA8;--shiki-dark-font-style:italic}",{"title":3963,"searchDepth":4048,"depth":4048,"links":6043},[6044,6045,6046,6047,6048,6049,6050,6051,6052,6053],{"id":3763,"depth":4048,"text":3764},{"id":3884,"depth":4048,"text":3885},{"id":3950,"depth":4048,"text":3951},{"id":4282,"depth":4048,"text":4283},{"id":4341,"depth":4048,"text":4342},{"id":4633,"depth":4048,"text":4634},{"id":5872,"depth":4048,"text":5873},{"id":5907,"depth":4048,"text":5908},{"id":5966,"depth":4048,"text":5967},{"id":6002,"depth":4048,"text":6003},"Work out an age in completed years, months and days, where a month that is missing its day ends on its last day.","md",{"number":6057,"source":6058,"requires":6059},"27.12","Projects\u002FAge",[6060,6061,6062],"date","fail","absence-to-error",{},{"title":1342},{"title":3718,"description":6054},"8i-Pv5qzxOj0IstCF64zDVEqMsuYPhSNJbOOhHBfJQ8",[6068,6070],{"title":1338,"path":1339,"stem":1340,"description":6069,"children":-1},"A number guessing game: find a number from 1 to 100 in seven guesses, with a hint after each one.",{"title":1346,"path":1347,"stem":1348,"description":6071,"children":-1},"Make a 16-character password from 57 easy-to-read characters, drawing every one from the system's entropy with rejection sampling so that no character is favoured.",1792235696531]