Skip to content

Instantly share code, notes, and snippets.

@martin-eden
Last active April 28, 2017 21:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save martin-eden/8b5d20fc445c637e4834450917789926 to your computer and use it in GitHub Desktop.
Save martin-eden/8b5d20fc445c637e4834450917789926 to your computer and use it in GitHub Desktop.
Graph representation of Dirk's Laurie Lua dictionary
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<graphml xmlns="http://graphml.graphdrawing.org/xmlns" xmlns:java="http://www.yworks.com/xml/yfiles-common/1.0/java" xmlns:sys="http://www.yworks.com/xml/yfiles-common/markup/primitives/2.0" xmlns:x="http://www.yworks.com/xml/yfiles-common/markup/2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:y="http://www.yworks.com/xml/graphml" xmlns:yed="http://www.yworks.com/xml/yed/3" xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns http://www.yworks.com/xml/schema/graphml/1.1/ygraphml.xsd">
<!--Created by yEd 3.15.0.2-->
<key attr.name="Description" attr.type="string" for="graph" id="d0"/>
<key for="port" id="d1" yfiles.type="portgraphics"/>
<key for="port" id="d2" yfiles.type="portgeometry"/>
<key for="port" id="d3" yfiles.type="portuserdata"/>
<key attr.name="url" attr.type="string" for="node" id="d4"/>
<key attr.name="description" attr.type="string" for="node" id="d5"/>
<key for="node" id="d6" yfiles.type="nodegraphics"/>
<key for="graphml" id="d7" yfiles.type="resources"/>
<key attr.name="url" attr.type="string" for="edge" id="d8"/>
<key attr.name="description" attr.type="string" for="edge" id="d9"/>
<key for="edge" id="d10" yfiles.type="edgegraphics"/>
<graph edgedefault="directed" id="G">
<data key="d0"/>
<node id="n0" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="125.2109375" width="569.533203125" x="3431.0458824434536" y="2280.531216491101"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="569.533203125" x="0.0" y="0.0">function</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="711.0" y="469.5"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="65.201171875" x="-7.6005859375" y="0.0">Folder 1</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n0:">
<node id="n0::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="73.75" width="539.533203125" x="3446.0458824434536" y="2316.992153991101"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="59.875" modelName="custom" textColor="#000000" visible="true" width="529.533203125" x="5.0" y="6.9375"> 1. A self-contained part of a program that performs a particular task.
2. One of the eight types of Lua. Lua is unusual in that a function is a first-class value.
See Declaration, Parameter, Argument, Scope, Closure.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n1" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="176.671875" width="450.177734375" x="2027.9906804965249" y="3466.157320981416"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="450.177734375" x="0.0" y="0.0">first-class value</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="711.0" y="740.93359375"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="65.201171875" x="-7.6005859375" y="0.0">Folder 2</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n1:">
<node id="n1::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="125.2109375" width="420.177734375" x="2042.9906804965249" y="3502.618258481416"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="115.75" modelName="custom" textColor="#000000" visible="true" width="410.177734375" x="5.0" y="4.73046875">A value that can be:
* assigned to a name
* used as a key as well as a value in a table
* used in expressions
* given as an argument to a function
There are minor exceptions: nil and NaN may not be used as a key.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n2" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="116.4609375" width="569.533203125" x="2672.365103372329" y="3371.531913300718"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="569.533203125" x="0.0" y="0.0">value</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="65.201171875" x="-7.6005859375" y="0.0">Folder 3</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n2:">
<node id="n2::n0">
<data key="d4"/>
<data key="d6">
<y:ShapeNode>
<y:Geometry height="65.0" width="539.533203125" x="2687.365103372329" y="3407.992850800718"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="45.90625" modelName="custom" textColor="#000000" visible="true" width="514.685546875" x="12.423828125" y="9.546875">A block of memory organized as one of Lua's eight types.
Values can be mutable or immutable.
All values in Lua are first-class values, unlike some other commonly used languages.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n3" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="133.2109375" width="450.177734375" x="1126.49871890965" y="2793.0444888724196"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="450.177734375" x="0.0" y="0.0">name</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="65.201171875" x="-7.6005859375" y="0.0">Folder 4</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n3:">
<node id="n3::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="81.75" width="420.177734375" x="1141.49871890965" y="2829.5054263724196"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="73.84375" modelName="custom" textColor="#000000" visible="true" width="406.544921875" x="6.81640625" y="3.953125">A word in a Lua program that can be associated with a value.
x = 1.23 -- 'x' is a name, 1.23 is a constant number value
Lua syntax demands that a name satisfy the rules for an identifier.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n4" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="462.60546875" x="0.0" y="2954.27016985507"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="462.60546875" x="0.0" y="0.0">identifier</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="65.201171875" x="-7.6005859375" y="0.0">Folder 5</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n4:">
<node id="n4::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="432.60546875" x="15.0" y="2990.73110735507"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="422.60546875" x="5.0" y="6.015625">A synonym for name. The term also has a special meaning in the API.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n5" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="89.4609375" width="360.8046875" x="2580.9913429893713" y="4379.508234854497"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="360.8046875" x="0.0" y="0.0">key</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="65.201171875" x="-7.6005859375" y="0.0">Folder 6</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n5:">
<node id="n5::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="38.0" width="330.8046875" x="2595.9913429893713" y="4415.969172354497"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="31.9375" modelName="custom" textColor="#000000" visible="true" width="320.8046875" x="5.0" y="3.03125">The first element of a key-value pair in a table.
Any value except nil and NaN may be used as a key.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n6" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="214.921875" width="497.84375" x="3204.66328481002" y="3926.7687145674317"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="497.84375" x="0.0" y="0.0">table</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="3204.66328481002" y="3926.7687145674317"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="65.201171875" x="-7.6005859375" y="0.0">Folder 7</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n6:">
<node id="n6::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="163.4609375" width="467.84375" x="3219.66328481002" y="3963.2296520674317"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="143.6875" modelName="custom" textColor="#000000" visible="true" width="457.84375" x="5.0" y="9.88671875">1. A collection of (key,value) pairs, called entries.
One of the eight types of Lua.
The keys in a table are distinct.
If the value is nil, the entry is not actually stored, and the key is lost.
See also array, sequence.
a.r = nil -- delete the entry with key "r"
2. "table" is a standard library containing functions that involve sequences.
Those functions cannot be called using object-oriented syntax.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n7" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="170.2109375" width="718.173828125" x="542.6632311963804" y="3837.7899918054172"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="718.173828125" x="0.0" y="0.0">expression</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="65.201171875" x="-7.6005859375" y="0.0">Folder 8</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n7:">
<node id="n7::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="118.75" width="688.173828125" x="557.6632311963804" y="3874.2509293054172"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="101.78125" modelName="custom" textColor="#000000" visible="true" width="678.173828125" x="5.0" y="8.484375">An expression is a piece of Lua code, shorter than a statement, that specifies how a value should be calculated.
(2+2)^5 -- arithmetic expression
age &lt;= 65 -- boolean expression
'--' .. " this is" -- string expression
(gsub('Number # wins",'#','7')) -- function call expression (only the
-- first value is used, and you need the parentheses for that)<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n8" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="187.87187499999982" width="518.05859375" x="1823.1199744098994" y="3045.660082645314"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="518.05859375" x="0.0" y="0.0">argument</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="65.201171875" x="-7.6005859375" y="0.0">Folder 9</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n8:">
<node id="n8::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="136.41093750000005" width="488.05859375" x="1838.1199744098994" y="3082.121020145314"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="115.75" modelName="custom" textColor="#000000" visible="true" width="478.05859375" x="5.0" y="10.330468749999909">The actual value that a parameter has when a function is called.
We say that the argument is passed to the function.
x = fct (1,3,'pqr') -- 1, 3 and 'pqr' are arguments
The number of arguments may differ from the number of parameters.
If there are too many, the extra arguments are ignored;
if there are too few, the missing arguments are assumed to have the value nil.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n9" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="161.01553528597788" width="475.8828125" x="3125.234471172087" y="3144.693537119634"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="475.8828125" x="0.0" y="0.0">nil</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 10</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n9:">
<node id="n9::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="109.55459778597788" width="445.8828125" x="3140.234471172087" y="3181.154474619634"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="101.78125" modelName="custom" textColor="#000000" visible="true" width="435.8828125" x="5.0" y="3.8866738929891653">One of the eight types of Lua.
There is only one value of that type, also called nil.
Its purpose is to act as a placeholder where a value is needed,
but no proper value is available.
tbl = {1,4,nil,nil,10} -- tbl[5] is 10
fct = load(code,nil,nil,data) -- the data table must be the 4th argument<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n10" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="310.98052421586726" width="459.447265625" x="960.9673053566512" y="4280.109227008743"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="459.447265625" x="0.0" y="0.0">NaN</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 11</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n10:">
<node id="n10::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="259.51958671586715" width="429.447265625" x="975.9673053566512" y="4316.570164508743"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="241.46875" modelName="custom" textColor="#000000" visible="true" width="419.447265625" x="5.0" y="9.025418357933631">Acronym for "Not A Number".
An exceptional value of type number (also written 'NAN' and 'nan'),
which arises as the result of an undefinable arithmetic operation.
NaN is not a Lua keyword, but appears in output (in some
implementations, even the nonsensical '-nan' may be printed). If you
need the notation NaN, assign such a value to the name.
NaN is not a legal key in a table.
NaN = 0/0
NaN + 1 -- NaN. All arithmetic operations involving NaN have
-- result NaN.
NaN &lt;= NaN -- false. All comparison operations involving NaN have
-- result false except the following.
NaN ~= NaN -- true. The only Lua value with this property.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n11" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="140.921875" width="441.04296875" x="2368.037467157006" y="2977.922842894437"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="441.04296875" x="0.0" y="0.0">parameter</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 12</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n11:">
<node id="n11::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="89.4609375" width="411.04296875" x="2383.037467157006" y="3014.383780394437"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="73.84375" modelName="custom" textColor="#000000" visible="true" width="401.04296875" x="5.0" y="7.80859375">A local name used in the definition of a function for the value that
will later be passed as an argument.
function fct (a,b,c) -- a,b,c are parameters
fct(1,2,3) -- 1,2,3 arearguments<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n12" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="170.2109375" width="458.48046875" x="1886.9516690561395" y="1784.5872320190501"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="458.48046875" x="0.0" y="0.0">declaration</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 13</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n12:">
<node id="n12::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="118.75" width="428.48046875" x="1901.9516690561395" y="1821.0481695190501"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="101.78125" modelName="custom" textColor="#000000" visible="true" width="418.48046875" x="5.0" y="8.484375">A statement that specifies that one or more names have local scope
and optionally initializes them.
local x, y = 1 -- x gets the value 1, y gets the value nil.
Names that have global scope are declared implicitly, i.e. they count
as declared, with value nil, the moment you use them.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n13" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="316.8984375" width="467.796875" x="1399.75860986091" y="1548.909895718345"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="467.796875" x="0.0" y="0.0">scope</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 14</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n13:">
<node id="n13::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="265.4375" width="437.796875" x="1414.75860986091" y="1585.370833218345"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="255.4375" modelName="custom" textColor="#000000" visible="true" width="427.796875" x="5.0" y="5.0">The part of a program inside which a local variable is visible,
i.e. recognized by the compiler.
The scope starts when the variable is declared and goes to just before
an unmatched "end", or up to and including an unmatched "until".
The end can be matched by a previous begin, if, while or function.
local a,b -- a and b are now visible
begin
local a -- the previous variable called `a` is now shadowed
c = a + b -- the scope of the most recent `a` ends here
end -- this `end` is matched by the previous begin
-- for the most recent `a`, it is unmatched.
d = a+b -- the original `a` is visible again
repeat
local i
until i&gt;10 -- the scope of i ends here <y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n14" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="266.896484375" x="3005.4042711849834" y="893.6295862680854"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="266.896484375" x="0.0" y="0.0">closure</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 15</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n14:">
<node id="n14::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="236.896484375" x="3020.4042711849834" y="930.0905237680854"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="226.896484375" x="5.0" y="6.015625">A function bundled with its upvalues.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n15" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="432.60546875" x="2687.7191846649584" y="29.98458114213645"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="432.60546875" x="0.0" y="0.0">upvalue</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 16</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n15:">
<node id="n15::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="402.60546875" x="2702.7191846649584" y="66.44551864213645"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="392.60546875" x="5.0" y="6.015625">A local variable defined outside but referred to inside a function.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n16" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="247.0546875" width="469.384765625" x="10053.0" y="-0.796875"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="469.384765625" x="0.0" y="0.0">zero</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 17</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n16:">
<node id="n16::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="195.59375" width="439.384765625" x="10068.0" y="35.6640625"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="185.59375" modelName="custom" textColor="#000000" visible="true" width="429.384765625" x="5.0" y="5.0">Zero is a unique number, having three different representations that
are all equal.
0 -- integer zero
0. -- floating-point zero
-0. -- negative zero
They can be distinguished by programming tricks, but only the integer
zero can be a table key. Either of the others will be silently coerced
to an integer.
c = {[-0.]=true}
next(c) --&gt; 0 true<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n17" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="135.3046875" width="464.41015625" x="8280.773946344729" y="2849.724060348177"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="464.41015625" x="0.0" y="0.0">whitespace</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 18</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n17:">
<node id="n17::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="83.84375" width="434.41015625" x="8295.773946344729" y="2886.184997848177"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="73.84375" modelName="custom" textColor="#000000" visible="true" width="424.41015625" x="5.0" y="5.0">A character such as a blank, tab, line feed or carriage return that
may be present in a text file but is not visible.
In Lua any sequence of whitespace characters outside comments and
strings is treated as being equivalent to one blank.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n18" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="109.203125" x="557.7545217693078" y="1556.155758188026"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="109.203125" x="0.0" y="0.0">visible</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 19</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n18:">
<node id="n18::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="79.203125" x="572.7545217693078" y="1592.616695688026"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="69.203125" x="5.0" y="6.015625">See scope.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n19" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="149.2734375" width="473.28125" x="5842.589573938567" y="3723.422964080204"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="473.28125" x="0.0" y="0.0">virtual machine</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 20</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n19:">
<node id="n19::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="97.8125" width="443.28125" x="5857.589573938567" y="3759.883901580204"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="87.8125" modelName="custom" textColor="#000000" visible="true" width="433.28125" x="5.0" y="5.0">A program (or part of one) running on a computer known as the "host",
that can execute instructions for a different machine by representing
the components of that machine as a data structure on the host.
Lua code is compiled for a virtual machine that has never been built
as hardware, with a design that changes with every major release.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n20" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="149.2734375" width="447.95703125" x="4080.589464054552" y="4160.157590459989"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="447.95703125" x="0.0" y="0.0">data structure</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 21</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n20:">
<node id="n20::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="97.8125" width="417.95703125" x="4095.589464054552" y="4196.618527959989"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="87.8125" modelName="custom" textColor="#000000" visible="true" width="407.95703125" x="5.0" y="5.0">A collection of Values such that the collection can be referred to as
a whole, but the values in it can also be referred to individually.
In Lua, the only data structure is a table, but it is also possible to
code one's own data structure in C and make it visible to Lua as a
userdata.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n21" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="233.0859375" width="450.3359375" x="4105.734359662136" y="3136.216981990725"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="450.3359375" x="0.0" y="0.0">userdata</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 22</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n21:">
<node id="n21::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="181.625" width="420.3359375" x="4120.734359662136" y="3172.677919490725"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="171.625" modelName="custom" textColor="#000000" visible="true" width="410.3359375" x="5.0" y="5.0">A block of memory that can only be accessed via its own methods.
One of the eight types of Lua.
The definition of a userdata and the basic methods for accessing it
need to be written in the API. A userdata can be "full" (i.e. it can
be manipulated from Lua) or "light" (i.e. all Lua can do with it is to
determine whether two values are raw equal). These are not true
subtypes since they are treated as one type inside Lua and as two
types inside the API.
The topic is too advanced to explain any further in this Glossary.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n22" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="276.939453125" x="3136.1084988086295" y="2433.3012248125815"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="276.939453125" x="0.0" y="0.0">access</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 23</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n22:">
<node id="n22::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="246.939453125" x="3151.1084988086295" y="2469.7621623125815"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="236.939453125" x="5.0" y="6.015625">To read or write (a variable, table etc).<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n23" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="358.8046875" width="465.857421875" x="3618.3055864692287" y="2766.5498224453404"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="465.857421875" x="0.0" y="0.0">method</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 24</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n23:">
<node id="n23::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="307.34375" width="435.857421875" x="3633.3055864692287" y="2803.0107599453404"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="297.34375" modelName="custom" textColor="#000000" visible="true" width="425.857421875" x="5.0" y="5.0">A function in a class whose first parameter is an object of that class.
A special notation, known as an object-oriented call, may be used to
call a method.
class.fct(obj,x,y) -- normal call to class.fct
obj:fct(x,y) -- object-oriented call to the function 'fct'
-- of the class to which 'obj' belongs
If obj belongs to class, the two calls are equivalent.
A similar notation may also be used to define a method. The following
two definitions are equivalent.
function class:fct(x,y)
-- code comes here
end
class.fct = function(self,x,y)
-- code comes here
end<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n24" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="483.869140625" x="3721.453045311013" y="4052.1267104628278"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="483.869140625" x="0.0" y="0.0">class</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 25</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n24:">
<node id="n24::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="453.869140625" x="3736.453045311013" y="4088.5876479628278"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="443.869140625" x="5.0" y="6.015625">A data structure of related values, especially a constructor and methods.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n25" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="107.3671875" width="425.2109375" x="3308.888273958888" y="3538.3836481603394"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="425.2109375" x="0.0" y="0.0">constructor</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 26</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n25:">
<node id="n25::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="55.90625" width="395.2109375" x="3323.888273958888" y="3574.8445856603394"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="45.90625" modelName="custom" textColor="#000000" visible="true" width="385.2109375" x="5.0" y="5.0">1. A table literal.
2. A function in a class that is not itself a method, but returns a
new object of the class.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n26" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="149.2734375" width="464.615234375" x="4427.26713302626" y="3980.870763825187"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="464.615234375" x="0.0" y="0.0">literal</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 27</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n26:">
<node id="n26::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="97.8125" width="434.615234375" x="4442.26713302626" y="4017.331701325187"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="87.8125" modelName="custom" textColor="#000000" visible="true" width="424.615234375" x="5.0" y="5.0">An expression that defines a constant of type string, number or table.
1.3475e4 -- floating-point literal
12346 -- integer literal
"the quick brown fox" -- string literal
{'Jock','Bill',name='Friends'} -- table literal<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n27" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="242.45703125" x="5223.588213877054" y="3996.3227151403335"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="242.45703125" x="0.0" y="0.0">constant</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 28</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n27:">
<node id="n27::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="212.45703125" x="5238.588213877054" y="4032.7836526403335"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="202.45703125" x="5.0" y="6.015625">An anonymous immutable value.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n28" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="163.2421875" width="452.5859375" x="4498.653137214176" y="3442.884246536938"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="452.5859375" x="0.0" y="0.0">mutable</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 29</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n28:">
<node id="n28::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="111.78125" width="422.5859375" x="4513.653137214176" y="3479.345184036938"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="101.78125" modelName="custom" textColor="#000000" visible="true" width="412.5859375" x="5.0" y="5.0">Capable of being changed during the running of a program.
Values of type nil, boolean, number and string are immutable.
Values of type coroutine, table and userdata are mutable.
Values of type function are immutable except via the debug library.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n29" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="135.3046875" width="380.234375" x="5785.243538983625" y="4677.850019105346"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="380.234375" x="0.0" y="0.0">boolean</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 30</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n29:">
<node id="n29::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="83.84375" width="350.234375" x="5800.243538983625" y="4714.310956605346"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="73.84375" modelName="custom" textColor="#000000" visible="true" width="340.234375" x="5.0" y="5.0">One of the eight types of Lua.
A boolean value can only be "true" or "false".
The result of a comparison operation is always boolean.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n30" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="274.9921875" width="463.173828125" x="6279.333299821134" y="5717.935878599619"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="463.173828125" x="0.0" y="0.0">compare</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 31</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n30:">
<node id="n30::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="223.53125" width="433.1738281250002" x="6294.333299821134" y="5754.396816099619"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="213.53125" modelName="custom" textColor="#000000" visible="true" width="423.173828125" x="5.0" y="5.0">To determine whether a specified relation between two values exists.
Any two values can be compared for equality or inequality.
Two strings or two numbers can be compared for order.
Any other comparison is only possible with the aid of a metamethod.
Comparison operations have a higher priority than logical operations
and parentheses are seldom needed.
The result of a comparison operation is a boolean.
abc ~= nil -- True if the value of abc (of whatever type) is not nil.
0&lt;x and x&lt;=10 -- True if x is in the range 1 to 10.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n31" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="205.1484375" width="465.93359375" x="7133.93528899995" y="6516.282811952558"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="465.93359375" x="0.0" y="0.0">metamethod</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 32</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n31:">
<node id="n31::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="153.6875" width="435.93359375" x="7148.93528899995" y="6552.743749452558"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="143.6875" modelName="custom" textColor="#000000" visible="true" width="425.93359375" x="5.0" y="5.0">A user-supplied function that is called to perform an operation,
bypassing the default action, usually because the operation would
otherwise be undefined, but also when a raw operation is to be
supplanted by a customized one.
Metamethods are kept in a metatable.
Metamethods can be used (abused?) to customize Lua almost beyond
recognition. The subject is too advanced for further explanation in
this Glossary.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n32" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="163.2421875" width="465.39453125" x="6539.321415793056" y="5152.52970034166"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="465.39453125" x="0.0" y="0.0">operation</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 33</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n32:">
<node id="n32::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="111.78125" width="435.39453125" x="6554.321415793056" y="5188.99063784166"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="101.78125" modelName="custom" textColor="#000000" visible="true" width="425.39453125" x="5.0" y="5.0">A basic computing task like addition, multiplication, concatenation
etc., involving one or two values, called "operands", and expressed in
Lua by putting an "operator" in front of a single value, or between the
two values.
n = #tbl -- '#' is the length operator
s = name .. id -- '..' is the concatenation operator<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n33" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="337.07421875" x="7859.364731951246" y="7501.360305865193"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="337.07421875" x="0.0" y="0.0">raw</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 34</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n33:">
<node id="n33::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="307.07421875" x="7874.364731951246" y="7537.821243365193"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="297.07421875" x="5.0" y="6.015625">As originally defined, i.e. ignoring metamethods.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n34" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="107.3671875" width="357.83984375" x="6819.197474050794" y="6127.810927748174"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="357.83984375" x="0.0" y="0.0">priority</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 35</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n34:">
<node id="n34::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="55.90625" width="327.83984375" x="6834.197474050794" y="6164.271865248174"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="45.90625" modelName="custom" textColor="#000000" visible="true" width="317.83984375" x="5.0" y="5.0">The position of an operator in the precedence table.
Operators with higher priority are performed first.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n35" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="245.48046875" x="7242.536455336667" y="6002.970868277833"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="245.48046875" x="0.0" y="0.0">precedence</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 36</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n35:">
<node id="n35::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="215.48046875" x="7257.536455336667" y="6039.431805777833"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="205.48046875" x="5.0" y="6.015625">A pecking order of Lua operators.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n36" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="316.8984375" width="472.56640625" x="7033.338019132825" y="5438.756569101828"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="472.56640625" x="0.0" y="0.0">logical</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 37</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n36:">
<node id="n36::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="265.4375" width="442.5664062499998" x="7048.338019132825" y="5475.217506601828"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="255.4375" modelName="custom" textColor="#000000" visible="true" width="432.56640625" x="5.0" y="5.0">The operations "and", "or" and "not" are known as "logical operations".
They operate on all values, not only on booleans.
The result of "not" is boolean, but the result of the other operations
is to select one of the operands.
Their action is determined by the truth of the first value.
a and b -- if a is false, then a (and don't evaluate b); else b
a or b -- if a is true, then a (and don't evaluate b); else b
The point about evaluation is important. It can be used to avoid
illegal operations.
v = a.k -- an error if a is nil
v = a and a.k -- nil if a is nil
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n37" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="135.3046875" width="416.943359375" x="8137.425465180648" y="6245.746266351303"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="416.943359375" x="0.0" y="0.0">truth</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 38</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n37:">
<node id="n37::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="83.84375" width="386.943359375" x="8152.425465180648" y="6282.207203851303"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="73.84375" modelName="custom" textColor="#000000" visible="true" width="376.943359375" x="5.0" y="5.0">The property whether a value counts as true or false in an "if"
statement or a logical.
"nil" and "false" count as "false",
all other values (including 0 and NaN) count as "true".<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n38" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="135.3046875" width="470.978515625" x="5432.738528739195" y="5050.446644729633"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="470.978515625" x="0.0" y="0.0">parenthesis</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 39</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n38:">
<node id="n38::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="83.84375" width="440.978515625" x="5447.738528739195" y="5086.907582229633"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="73.84375" modelName="custom" textColor="#000000" visible="true" width="430.978515625" x="5.0" y="5.0">A pair of delimiters with several uses.
1. To delimit a list of parameters or arguments.
2. To specify precedence of operations in a complicated expression.
3. To adjust the number of return values in a function to 1. See vararg.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n39" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="316.8984375" width="458.744140625" x="4016.0411849301454" y="3614.3474452160517"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="458.744140625" x="0.0" y="0.0">vararg</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 40</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n39:">
<node id="n39::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="265.4375" width="428.744140625" x="4031.0411849301454" y="3650.8083827160517"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="255.4375" modelName="custom" textColor="#000000" visible="true" width="418.744140625" x="5.0" y="5.0">A tuple of unspecified length, denoted by three dots.
Mainly used in the parameter list of a function, where it must appear
last.
Inside such a function, it is also available for use wherever a tuple
could be used.
function fct(z,...) -- typical vararg parameter list
local x,y = ... -- assign first two elements of the vararg
local p,q = select(4,...) -- assign elements 4 and 5 of the vararg
local t = table.pack(...) -- create an array containing the vararg
local u = {...} -- the same, but u.n is not set
local s = 10+... -- add 10 to first element of vararg
print(...) -- print everything in the vararg
print((...)) -- print only the first element
return z,20,... -- returns a new vararg
end<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n40" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="205.1484375" width="447.248046875" x="2474.077086895639" y="3664.033159508268"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="447.248046875" x="0.0" y="0.0">tuple</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 41</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n40:">
<node id="n40::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="153.6875" width="417.248046875" x="2489.077086895639" y="3700.494097008268"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="143.6875" modelName="custom" textColor="#000000" visible="true" width="407.248046875" x="5.0" y="5.0">The bare contents of an array, without delimiters.
{1,2,nil,4} -- an array
1,2,nil,4 -- a tuple
May appear in as a parameter list, an argument list, a return list,
the right-hand side of an assignment, or inside a table constructor.
A tuple is not a first-class value: it is several values, not thought
of as comprising a whole.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n41" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="174.06640625" x="1189.1427138785002" y="1873.2999597928138"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="174.06640625" x="0.0" y="0.0">local</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 42</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n41:">
<node id="n41::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="144.06640625" x="1204.1427138785002" y="1909.7608972928138"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="134.06640625" x="5.0" y="6.015625">Having limited scope.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n42" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="133.759765625" x="1547.6323099825968" y="3289.722066515893"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="133.759765625" x="0.0" y="0.0">pass to</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 43</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n42:">
<node id="n42::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="103.759765625" x="1562.6323099825968" y="3326.183004015893"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="93.759765625" x="5.0" y="6.015625">See Argument.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n43" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="191.1796875" width="431.111328125" x="4099.925908884368" y="4610.618897695265"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="431.111328125" x="0.0" y="0.0">number</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 44</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n43:">
<node id="n43::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="139.71875" width="401.111328125" x="4114.925908884368" y="4647.079835195265"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="129.71875" modelName="custom" textColor="#000000" visible="true" width="391.111328125" x="5.0" y="5.0">One of the eight types of Lua.
The possible values can be integers, floating-point numbers, Inf,
-Inf, and NaN.
n = 1 -- integer
x = 1.0 -- floating-point
See integer, floating-point, subtype.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n44" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="121.3359375" width="497.568359375" x="3904.2194840519514" y="5354.653436623499"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="497.568359375" x="0.0" y="0.0">integer</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 45</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n44:">
<node id="n44::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="69.875" width="467.568359375" x="3919.2194840519514" y="5391.114374123499"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="59.875" modelName="custom" textColor="#000000" visible="true" width="457.568359375" x="5.0" y="5.0">A subtype of number that can represent integers up to about 9e18 exactly.
The three extra digits come at the expense of not being able to
represent anything except integers.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n45" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="135.3046875" width="469.6015625" x="3309.830053294252" y="4807.233646232293"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="469.6015625" x="0.0" y="0.0">floating-point</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 46</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n45:">
<node id="n45::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="83.84375" width="439.6015625" x="3324.830053294252" y="4843.694583732293"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="73.84375" modelName="custom" textColor="#000000" visible="true" width="429.6015625" x="5.0" y="5.0">A subtype of number that represents a number as a "mantissa" (i.e. a
number between 0.5 and 1) multiplied by a positive or negative power
of 2.
Integers up to about 9e15 can be represented exactly.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n46" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="177.2109375" width="453.83984375" x="3597.4492468883254" y="4465.852552485965"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="453.83984375" x="0.0" y="0.0">subtype</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 47</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n46:">
<node id="n46::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="125.75" width="423.83984375" x="3612.4492468883254" y="4502.313489985965"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="115.75" modelName="custom" textColor="#000000" visible="true" width="413.83984375" x="5.0" y="5.0">A further classification of values of a specific type.
The type number has subtypes integer and float. See also userdata.
type(1) --&gt; number
type(1.0) --&gt; number
math.type(1) --&gt; integer
math.type(1.0) --&gt; float<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n47" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="288.9609375" width="452.451171875" x="5152.894363943276" y="2806.235923328688"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="452.451171875" x="0.0" y="0.0">string</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 48</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n47:">
<node id="n47::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="237.5" width="422.451171875" x="5167.894363943276" y="2842.696860828688"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="227.5" modelName="custom" textColor="#000000" visible="true" width="412.451171875" x="5.0" y="5.0">
1. A sequence of bytes.
One of the eight types of Lua. Strings can be delimited in an infinite
number of ways.
2. "string" is a standard library containing functions that involve
strings.
Most of those functions can be called using object-oriented syntax.
data = "Laurie, Dirk"
pattern = "([^,]+),%s*(.*)"
surname, name = string.match(data, pattern) -- these two calls
surname, name = data:match(pattern) -- are equivalent
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n48" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="149.2734375" width="462.125" x="5259.840268476386" y="1587.3623181558542"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="462.125" x="0.0" y="0.0">delimit</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 49</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n48:">
<node id="n48::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="97.8125" width="432.125" x="5274.840268476386" y="1623.8232556558542"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="87.8125" modelName="custom" textColor="#000000" visible="true" width="422.125" x="5.0" y="5.0">To put markers called "delimiters" in front and after something to
show where it starts and stops.
There is therefore always a pair of delimiters. They can be as simple
as a pair of quotes, and as complicated as function and end, or a pair
of "[==[", "]==]" with any number of equal signs.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n49" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="163.2421875" width="469.021484375" x="3828.2078993389587" y="1859.2482481650404"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="469.021484375" x="0.0" y="0.0">library</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 50</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n49:">
<node id="n49::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="111.78125" width="439.021484375" x="3843.2078993389587" y="1895.7091856650404"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="101.78125" modelName="custom" textColor="#000000" visible="true" width="429.021484375" x="5.0" y="5.0">A table of functions that serve a common purpose.
Libraries extend the power of Lua. Apart from the global library, a
number of standard libraries are automatically loaded when Lua starts
up.
Custom libraries can also be returned by a module.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n50" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="302.9296875" width="455.66796875" x="1769.7471007944114" y="1133.6813688567709"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="455.66796875" x="0.0" y="0.0">global</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 51</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n50:">
<node id="n50::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="251.46875" width="425.66796875" x="1784.7471007944114" y="1170.1423063567709"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="241.46875" modelName="custom" textColor="#000000" visible="true" width="415.66796875" x="5.0" y="5.0">Strictly: having unlimited scope. In practice the term refers to
perhaps the most idiosyncratic feature of Lua.
When a name is not in any local scope, not even as an upvalue, Lua
looks for a key of that name in a table called _ENV which is
guaranteed always to be in scope.
The entry in _ENV with the given name is the global variable of that
name.
string -- these two notations are
_ENV.string -- equivalent
There is nothing pervasive about global variables. All their values
may be switched at the drop of a hat by simply assigning a different
table to _ENV. If that table is empty, all global variables are
instantly reset to nil.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n51" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="625.68359375" x="893.4443290358831" y="177.4802397407293"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="625.68359375" x="0.0" y="0.0">_ENV</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 52</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n51:">
<node id="n51::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="595.68359375" x="908.4443290358831" y="213.9411772407293"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="585.68359375" x="5.0" y="6.015625">An abbreviation for "environment". The table in which currently visible global variables are kept.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n52" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="177.2109375" width="466.185546875" x="3819.1708084554193" y="702.2353338428948"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="466.185546875" x="0.0" y="0.0">load</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 53</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n52:">
<node id="n52::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="125.75" width="436.185546875" x="3834.1708084554193" y="738.6962713428948"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="115.75" modelName="custom" textColor="#000000" visible="true" width="426.185546875" x="5.0" y="5.0">To make a function, or a table of functions, available to Lua.
There are several ways to do this. All are considered too advanced for
further explanation in this Glossary.
fct = load "return 'Hello, World'" -- load a string
fct = loadfile "myfunc.lua" -- load a file
fct = require "mylib" -- load a library<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n53" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="504.353515625" x="4305.871618641533" y="872.9829374854489"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="504.353515625" x="0.0" y="0.0">module</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 54</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n53:">
<node id="n53::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="474.353515625" x="4320.871618641533" y="909.4438749854489"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="464.353515625" x="5.0" y="6.015625">A function that loads a library. The subject is too advanced for this Glossary.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n54" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="543.939453125" x="3651.1773478002724" y="3388.851839452196"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="543.939453125" x="0.0" y="0.0">object</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 55</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n54:">
<node id="n54::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="513.939453125" x="3666.1773478002724" y="3425.312776952196"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="503.939453125" x="5.0" y="6.015625">A value of type table or userdata that is associated with a class table. See method.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n55" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="107.3671875" width="303.576171875" x="5034.005466827992" y="4358.494179431691"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="303.576171875" x="0.0" y="0.0">coroutine</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 56</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n55:">
<node id="n55::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="55.90625" width="273.576171875" x="5049.005466827992" y="4394.955116931691"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="45.90625" modelName="custom" textColor="#000000" visible="true" width="263.576171875" x="5.0" y="5.0">One of the eight types of Lua.
The subject is too advance to discuss here.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n56" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="135.3046875" width="460.126953125" x="5155.0394876797" y="2318.172878330857"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="460.126953125" x="0.0" y="0.0">debug</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 57</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n56:">
<node id="n56::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="83.84375" width="430.126953125" x="5170.0394876797" y="2354.633815830857"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="73.84375" modelName="custom" textColor="#000000" visible="true" width="420.126953125" x="5.0" y="5.0">One of the standard libraries of Lua.
It contains functions necessary to look into details of implementation
not normally visible, and functions that can change values that
normally are immutable.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n57" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="149.2734375" width="464.919921875" x="6246.383285388023" y="2220.557748067258"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="464.919921875" x="0.0" y="0.0">implementation</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 58</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n57:">
<node id="n57::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="97.8125" width="434.919921875" x="6261.383285388023" y="2257.018685567258"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="87.8125" modelName="custom" textColor="#000000" visible="true" width="424.919921875" x="5.0" y="5.0">The way the details of Lua are handled on a specific computer.
You are not supposed to know what they are, and if you do know, you
are not allowed to rely on that knowledge. So I will not even try to
explain implementation details like endianness, word size, array part,
hash part, etc.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n58" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="219.1171875" width="452.0234375" x="4682.425290392683" y="2396.9524322891884"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="452.0234375" x="0.0" y="0.0">API</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 59</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n58:">
<node id="n58::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="167.65625" width="422.0234375" x="4697.425290392683" y="2433.4133697891884"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="157.65625" modelName="custom" textColor="#000000" visible="true" width="412.0234375" x="5.0" y="5.0">Acronym for Application Program Interface.
The functions, types and data structures to be used when writing C
code that interacts with Lua.
Understanding the API requires a knowledge of C. It is therefore not
covered in this Glossary.
APIs for other languages (C++, Pascal etc) also exist, but the
official documentation (which fills half the Lua manual) is for the C
API.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n59" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="135.3046875" width="465.11328125" x="4692.718493737455" y="3759.435867498749"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="465.11328125" x="0.0" y="0.0">type</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 60</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n59:">
<node id="n59::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="83.84375" width="435.11328125" x="4707.718493737455" y="3795.896804998749"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="73.84375" modelName="custom" textColor="#000000" visible="true" width="425.11328125" x="5.0" y="5.0">A classification of values as one of nil, boolean, number, string,
function, table, coroutine or userdata.
The type of a value determines how it is stored in the computer, what
operations on it are allowed, and how it is represented when printed.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n60" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="135.3046875" width="462.541015625" x="6509.662992721896" y="1858.8798899354879"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="462.541015625" x="0.0" y="0.0">language</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 61</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n60:">
<node id="n60::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="83.84375" width="432.541015625" x="6524.662992721896" y="1895.3408274354879"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="73.84375" modelName="custom" textColor="#000000" visible="true" width="422.541015625" x="5.0" y="5.0">(short for programming language): A specification for composing text
(that can be understood by both humans and computers.
Examples: Ada, APL, Basic, C, Fortran, Go, Guile, Java, Lisp, Lua,
Pascal, Python, Ruby, Scheme.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n61" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="219.1171875" width="470.041015625" x="6952.368146477005" y="4185.86888029944"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="470.041015625" x="0.0" y="0.0">release</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 62</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n61:">
<node id="n61::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="167.65625" width="440.041015625" x="6967.368146477005" y="4222.32981779944"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="157.65625" modelName="custom" textColor="#000000" visible="true" width="430.041015625" x="5.0" y="5.0">A version of a software package that is officially made available by
its developers.
Lua releases have three-part numbers, e.g. Lua 5.3.4.
These are called minor releases; if the third part is dropped, it is
called a major release, e.g. Lua 5.3.
Each minor release is considered to be merely a bugfix of the previous
one: no features are added or changed, and the virtual machine is the
same.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n62" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="107.3671875" width="257.17578125" x="1403.7187366376238" y="2323.586088327953"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="257.17578125" x="0.0" y="0.0">variable</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 63</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n62:">
<node id="n62::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="55.90625" width="227.17578125" x="1418.7187366376238" y="2360.047025827953"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="45.90625" modelName="custom" textColor="#000000" visible="true" width="217.17578125" x="5.0" y="5.0">A name associated with a value.
See dummy, local, global, initialize.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n63" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="361.431640625" x="451.8002117563592" y="2313.4774501033826"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="361.431640625" x="0.0" y="0.0">dummy</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 64</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n63:">
<node id="n63::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="331.431640625" x="466.8002117563592" y="2349.9383876033826"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="321.431640625" x="5.0" y="6.015625">Something supplied pro forma but not actually used.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n64" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="107.3671875" width="430.8125" x="1847.775663334458" y="2646.1614810894753"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="430.8125" x="0.0" y="0.0">initialize</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 65</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n64:">
<node id="n64::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="55.90625" width="400.8125" x="1862.775663334458" y="2682.6224185894753"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="45.90625" modelName="custom" textColor="#000000" visible="true" width="390.8125" x="5.0" y="5.0">To assign a value to a name simultaneously with its declaration.
Uninitialized names are treated as having value nil.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n65" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="299.275390625" x="7696.186928241223" y="5542.567332664421"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="299.275390625" x="0.0" y="0.0">unary</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 66</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n65:">
<node id="n65::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="269.275390625" x="7711.186928241223" y="5579.028270164421"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="259.275390625" x="5.0" y="6.015625">(of an operation) Involving only one value.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n66" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="121.3359375" width="405.494140625" x="7266.077846460161" y="2929.8980319633774"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="405.494140625" x="0.0" y="0.0">text</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 67</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n66:">
<node id="n66::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="69.875" width="375.494140625" x="7281.077846460161" y="2966.3589694633774"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="59.875" modelName="custom" textColor="#000000" visible="true" width="365.494140625" x="5.0" y="5.0">A string or file that is designed to be readable by a human.
Text files typically contain only characters that have an
understandable appearance on the screen, and whitespace.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n67" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="135.3046875" width="435.623046875" x="7999.024418211113" y="3523.8101771210095"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="435.623046875" x="0.0" y="0.0">file</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 68</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n67:">
<node id="n67::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="83.84375" width="405.623046875" x="8014.024418211113" y="3560.2711146210095"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="73.84375" modelName="custom" textColor="#000000" visible="true" width="395.623046875" x="5.0" y="5.0">Data stored outside one's program, usually on a disk, under the
control of the operating system.
A file may contain text, in which case it is a text file. Otherwise it
is a binary file.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n68" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="121.3359375" width="425.205078125" x="7489.330085486938" y="4044.946583912879"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="425.205078125" x="0.0" y="0.0">binary</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 69</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n68:">
<node id="n68::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="69.875" width="395.205078125" x="7504.330085486938" y="4081.407521412879"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="59.875" modelName="custom" textColor="#000000" visible="true" width="385.205078125" x="5.0" y="5.0">1. Made up only of 0s and 1s, as all digital computers are when
considered at the lowest level.
2. (When talking about files) Not text.
3. (When talking about operations) Involving two values.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n69" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="316.8984375" width="474.01953125" x="2785.5434706029046" y="4857.754346196627"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="474.01953125" x="0.0" y="0.0">array</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 70</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n69:">
<node id="n69::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="265.4375" width="444.01953125" x="2800.5434706029046" y="4894.215283696627"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="255.4375" modelName="custom" textColor="#000000" visible="true" width="434.01953125" x="5.0" y="5.0">A data structure whose values (in this context called elements) are
numbered consecutively. The number of an element is its key.
A -- refers to the whole array
A[1] -- refers to a single element with key 1
Arrays in which other keys than numbers are used are called
associative arrays.
The elements of associative arrays are sometimes referred to as items.
A['name'] -- refers to a single item with key 'name'
A.name -- a synonym for A['name']
The notation A.name is only available when name is an identifier.
Both kinds of array are special cases of a table. A sequence is an
even more special case of an array.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n70" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="93.3984375" width="459.04296875" x="2216.161223322717" y="5903.183339313811"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="459.04296875" x="0.0" y="0.0">element</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 71</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n70:">
<node id="n70::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="41.9375" width="429.04296875" x="2231.161223322717" y="5939.644276813811"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="31.9375" modelName="custom" textColor="#000000" visible="true" width="419.04296875" x="5.0" y="5.0">One of the values in an array or a sequence, or (more loosely) in any
collection of values.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n71" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="149.2734375" width="384.037109375" x="2324.943944328621" y="5240.8096309423745"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="384.037109375" x="0.0" y="0.0">sequence</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 72</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n71:">
<node id="n71::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="97.8125" width="354.037109375" x="2339.943944328621" y="5277.2705684423745"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="87.8125" modelName="custom" textColor="#000000" visible="true" width="344.037109375" x="5.0" y="5.0">1. (Loosely) some items coming one after the other.
2. An escape sequence.
3. A table with exactly one border.
{1,2,3,4} -- a sequence: border at index 4
{1,2,nil,4} -- not a sequence: borders at index 2 and 4
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n72" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="219.1171875" width="447.86328125" x="1553.1147129740857" y="6061.516126290939"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="447.86328125" x="0.0" y="0.0">escape</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 73</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n72:">
<node id="n72::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="167.65625" width="417.86328124999994" x="1568.1147129740857" y="6097.977063790939"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="157.65625" modelName="custom" textColor="#000000" visible="true" width="407.86328125" x="5.0" y="5.0">A technique to encode a character that has a special meaning or is
hard to type by an "escape sequence" consisting of several other
characters.
"\xcafe" -- Hexadecimal encoding of an integer
"\u{cafe} -- The Unicode character with hexadecimal encoding
-- CAFE, displayed on your screen as 쫾
"%%" -- The way to represent a percent sign in a pattern.
Humans find it hard to write escape sequences correctly, but Lua
offers an option %q to string.format that will do it for you.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n73" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="135.3046875" width="441.576171875" x="2128.410924913289" y="4701.019752610686"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="441.576171875" x="0.0" y="0.0">border</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 74</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n73:">
<node id="n73::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="83.84375" width="411.576171875" x="2143.410924913289" y="4737.480690110686"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="73.84375" modelName="custom" textColor="#000000" visible="true" width="401.576171875" x="5.0" y="5.0">Any natural index in a table where a non-nil value is followed by a
nil value.
When the value at index 1 is nil, 0 is a border regardless of the
value at index 0.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n74" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="135.3046875" width="498.27734375" x="2941.2908020865434" y="3724.2092570296663"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="498.27734375" x="0.0" y="0.0">index</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 75</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n74:">
<node id="n74::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="83.84375" width="468.27734375" x="2956.2908020865434" y="3760.6701945296663"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="73.84375" modelName="custom" textColor="#000000" visible="true" width="458.27734375" x="5.0" y="5.0">1. The position of a specific byte in a string.
2. An integer-valued key. A "natural index" is a positive integer-valued key.
If a floating-point number that happens to equal an exact integer is
used as an index, it will be coerced to integer.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n75" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="93.3984375" width="410.22265625" x="2798.41451918643" y="2671.0647921434247"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="410.22265625" x="0.0" y="0.0">byte</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 76</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n75:">
<node id="n75::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="41.9375" width="380.22265625" x="2813.41451918643" y="2707.5257296434247"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="31.9375" modelName="custom" textColor="#000000" visible="true" width="370.22265625" x="5.0" y="5.0">The smallest individually accessible unit on most computers,
consisting of 8 binary digits.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n76" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="219.1171875" width="479.615234375" x="2299.0241032401173" y="2529.9172292916446"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="479.615234375" x="0.0" y="0.0">coercion</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 77</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n76:">
<node id="n76::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="167.65625" width="449.615234375" x="2314.0241032401173" y="2566.3781667916446"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="157.65625" modelName="custom" textColor="#000000" visible="true" width="439.615234375" x="5.0" y="5.0">To automatically convert a value to another type or subtype so that an
operation involving it will work.
'number' .. 3 -- the number will be coerced to a string
'3' + 10 -- the string will be coerced to a number
3.1415 * 10 -- the integer will be coerced to float
tbl = {[3.0]=true} -- the float will be coerced to integer
Coercion, especially string-to-number coercion, is considered
undesirable by many, and Lua 5.3 can be compiled with options set that
will make either or both of the first two examples illegal.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n77" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="191.1796875" width="445.888671875" x="8255.98695097198" y="496.336376782092"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="445.888671875" x="0.0" y="0.0">statement</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 78</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n77:">
<node id="n77::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="139.71875" width="415.888671875" x="8270.98695097198" y="532.797314282092"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="129.71875" modelName="custom" textColor="#000000" visible="true" width="405.888671875" x="5.0" y="5.0">A part of a chunk that cannot be split any further into smaller
chunks. (This definition is a loose one: for a precise definition, one
needs to study the syntax of Lua).
Lua is unusual in that the statement separator ';' is almost entirely
optional.
a = b; func(1,2,4) -- two statements, separated by a semicolon
a = b func(1,2,4) -- still two statements<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n78" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="121.3359375" width="392.8671875" x="8903.0" y="685.0625"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="392.8671875" x="0.0" y="0.0">shell</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 79</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n78:">
<node id="n78::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="69.875" width="362.8671875" x="8918.0" y="721.5234375"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="59.875" modelName="custom" textColor="#000000" visible="true" width="352.8671875" x="5.0" y="5.0">A program that executes operating system commands.
If it does so by responding to what a user types in, it is an
"interactive shell" or "command window".
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n79" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="121.3359375" width="443.421875" x="713.8141667208765" y="1975.6319679145017"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="443.421875" x="0.0" y="0.0">shadow</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 80</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n79:">
<node id="n79::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="69.875" width="413.421875" x="728.8141667208765" y="2012.0929054145017"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="59.875" modelName="custom" textColor="#000000" visible="true" width="403.421875" x="5.0" y="5.0">To make a variable that is currently visible invisible by declaring a
local variable of the same name.
See scope.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n80" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="107.3671875" width="423.939453125" x="1654.403561431278" y="4000.4749927837547"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="423.939453125" x="0.0" y="0.0">sentinel</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 81</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n80:">
<node id="n80::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="55.90625" width="393.939453125" x="1669.403561431278" y="4036.9359302837547"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="45.90625" modelName="custom" textColor="#000000" visible="true" width="383.939453125" x="5.0" y="5.0">A special value in a list that cannot be mistaken for a genuine
element of the list. Used to indicate that the list stopped at the
previous element.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n81" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="107.3671875" width="284.10546875" x="8903.0" y="533.2431971034182"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="284.10546875" x="0.0" y="0.0">REPL</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 82</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n81:">
<node id="n81::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="55.90625" width="254.10546875" x="8918.0" y="569.7041346034182"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="45.90625" modelName="custom" textColor="#000000" visible="true" width="244.10546875" x="5.0" y="5.0">Acronym for Read-Evaluate-Print Loop.
Basically what the Lua interpreter does.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n82" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="121.3359375" width="447.72265625" x="9559.681874264259" y="-0.9375"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="447.72265625" x="0.0" y="0.0">interpret</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 83</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n82:">
<node id="n82::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="69.875" width="417.72265625" x="9574.681874264259" y="35.5234375"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="59.875" modelName="custom" textColor="#000000" visible="true" width="407.72265625" x="5.0" y="5.0">To compile code and execute it in one go, especially inside a REPL.
An interpreter is a program that does this. The interpreter is the
program "lua" bundled with the Lua distribution.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n83" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="177.2109375" width="410.263671875" x="10053.0" y="290.125"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="410.263671875" x="0.0" y="0.0">prompt</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 84</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n83:">
<node id="n83::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="125.75" width="380.263671875" x="10068.0" y="326.5859375"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="115.75" modelName="custom" textColor="#000000" visible="true" width="370.263671875" x="5.0" y="5.0">1. To give a hint that a terminal user should type something.
2. A character string used for that purpose.
A short message or symbol
&gt; -- the usual Lua prompt
&gt;&gt; -- the prompt when wat you typed was not enough
name? -- a typical prompt issued by an appplication
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n84" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="93.3984375" width="388.84765625" x="7468.23757060631" y="2130.801673280588"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="388.84765625" x="0.0" y="0.0">program</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 85</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n84:">
<node id="n84::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="41.9375" width="358.84765625" x="7483.23757060631" y="2167.262610780588"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="31.9375" modelName="custom" textColor="#000000" visible="true" width="348.84765625" x="5.0" y="5.0">1. A set of instructions to be performed by a computer.
2. To write such instructions in a programming language.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n85" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="93.3984375" width="463.888671875" x="2775.9496174053274" y="1342.393401884805"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="463.888671875" x="0.0" y="0.0">procedure</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 86</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n85:">
<node id="n85::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="41.9375" width="433.888671875" x="2790.9496174053274" y="1378.854339384805"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="31.9375" modelName="custom" textColor="#000000" visible="true" width="423.888671875" x="5.0" y="5.0">A synonym for function, especially when the function is one that does
not return any values.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n86" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="163.2421875" width="466.203125" x="5957.515307839662" y="1920.086501853475"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="466.203125" x="0.0" y="0.0">pattern</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 87</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n86:">
<node id="n86::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="111.78125" width="436.203125" x="5972.515307839662" y="1956.547439353475"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="101.78125" modelName="custom" textColor="#000000" visible="true" width="426.203125" x="5.0" y="5.0">A string that describes properties and substrings that another string
might have.
Most patterns are instantly recognizable by the many percent signs in
them.
The string library contains several functions that exploit patterns.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n87" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="121.3359375" width="474.623046875" x="10053.0" y="511.0625"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="474.623046875" x="0.0" y="0.0">pair</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 88</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n87:">
<node id="n87::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="69.875" width="444.623046875" x="10068.0" y="547.5234375"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="59.875" modelName="custom" textColor="#000000" visible="true" width="434.623046875" x="5.0" y="5.0">Two related values, especially a key in a table and its associated value.
for k,v in pairs(tbl) do -- start of a loop that iterates over all
-- key-value pairs k,v in 'tbl'<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n88" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="344.8359375" width="466.40234375" x="3253.6285104535636" y="5195.076918436236"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="466.40234375" x="0.0" y="0.0">inf</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 89</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n88:">
<node id="n88::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="293.375" width="436.40234375" x="3268.6285104535636" y="5231.537855936236"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="283.375" modelName="custom" textColor="#000000" visible="true" width="426.40234375" x="5.0" y="5.0">Short for "Infinity".
An exceptional value of type number (also written 'INF' and 'inf'),
which arises the result of overflow, division by zero etc. If you need
the notation Inf, assign such a value to the name. Inf is not a Lua
keyword, but appears in output, as does -inf.
Inf and -Inf are a legal keys in a table.
Inf can freely be used in expressions, and behaves the way one would
think it should.
Inf = 1/0
0-Inf -- -inf
Inf + 1 -- inf
Inf-Inf -- -nan
1/Inf -- 0.0
1/(-Inf) -- -0.0
Inf &lt; Inf -- false
math.type(Inf) -- float<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n89" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="121.3359375" width="437.5859375" x="717.8761922876547" y="523.9477191733677"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="437.5859375" x="0.0" y="0.0">_G</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 90</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n89:">
<node id="n89::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="69.875" width="407.5859375" x="732.8761922876547" y="560.4086566733677"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="59.875" modelName="custom" textColor="#000000" visible="true" width="397.5859375" x="5.0" y="5.0">On startup, _G is a global variable equal to _ENV.
There are no rules for _G. The name might be an abbreviation for
"global", but Lua does not actually use it for any purpose.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n90" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="233.0859375" width="437.99609375" x="7954.367262161519" y="-0.8125"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="437.99609375" x="0.0" y="0.0">definition</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 91</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n90:">
<node id="n90::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="181.625" width="407.99609375" x="7969.367262161519" y="35.6484375"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="171.625" modelName="custom" textColor="#000000" visible="true" width="397.99609375" x="5.0" y="5.0">A chunk that fully specifies what a function does.
The definition starts with the keyword "function" and stops at the
matching keyword "end".
function fct(x,y)
if x&lt;y then
return y-x
else
return x-y
end -- definition does not stop here, this 'end' matches 'if'
end -- definition stops here <y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n91" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="107.3671875" width="424.302734375" x="7291.519758354705" y="960.3870024276657"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="424.302734375" x="0.0" y="0.0">chunk</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 92</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n91:">
<node id="n91::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="55.90625" width="394.302734375" x="7306.519758354705" y="996.8479399276657"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="45.90625" modelName="custom" textColor="#000000" visible="true" width="384.302734375" x="5.0" y="5.0">A block of Lua code that can be compiled successfully by itself.
It consists of one or more statements.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n92" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="81.4609375" width="291.78125" x="7390.222297554006" y="1803.962117819894"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="291.78125" x="0.0" y="0.0">code</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 93</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n92:">
<node id="n92::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="30.0" width="261.78125" x="7405.222297554006" y="1840.423055319894"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="251.78125" x="5.0" y="6.015625">Text written in a programming language.<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n93" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="163.2421875" width="460.138671875" x="5745.31225170174" y="1588.8454666234866"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="460.138671875" x="0.0" y="0.0">compile</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 94</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n93:">
<node id="n93::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="111.78125" width="430.138671875" x="5760.31225170174" y="1625.3064041234866"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="101.78125" modelName="custom" textColor="#000000" visible="true" width="420.138671875" x="5.0" y="5.0">To convert code written in a programming language such as Lua to a
form that is computer-friendly rather than human-friendly.
In the case of Lua, the latter form is known as bytecode.
A compiler is a program that (or a function inside a program) that
compiles code.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n94" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="121.3359375" width="475.44921875" x="6379.1257836275545" y="2627.5400132470204"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="475.44921875" x="0.0" y="0.0">bytecode</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 95</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n94:">
<node id="n94::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="69.875" width="445.44921875" x="6394.1257836275545" y="2664.0009507470204"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="59.875" modelName="custom" textColor="#000000" visible="true" width="435.44921875" x="5.0" y="5.0">An implementation-dependent represention of a Lua program or part of
one as instructions to be executed by a virtual machine.
Though representable in Lua as a string, it is not legible.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n95" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="191.1796875" width="482.375" x="3350.404267563885" y="1025.390732758824"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="482.375" x="0.0" y="0.0">call</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 96</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n95:">
<node id="n95::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="139.71875" width="452.375" x="3365.404267563885" y="1061.851670258824"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="129.71875" modelName="custom" textColor="#000000" visible="true" width="442.375" x="5.0" y="5.0">When the name of a function is encountered in a Lua program, there are
two possibilities: the function itself may be meant, or the
instructions making up the function are to be executed. In the latter
case, we say that the function is called.
a = fct -- the function is not called, but assigned as a value
a = fct() -- the function is called
a = fct{1} -- when there is ony one arguent, and that argument itself
a = fct"abc" -- is already delimited, parentheses are not needed <y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<node id="n96" yfiles.foldertype="group">
<data key="d4"/>
<data key="d5"/>
<data key="d6">
<y:ProxyAutoBoundsNode>
<y:Realizers active="0">
<y:GroupNode>
<y:Geometry height="93.3984375" width="472.771484375" x="8383.810719951478" y="1843.5580869151381"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="472.771484375" x="0.0" y="0.0">application</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="false" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:NodeBounds considerNodeLabelSize="true"/>
<y:Insets bottom="15" bottomF="15.0" left="15" leftF="15.0" right="15" rightF="15.0" top="15" topF="15.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
<y:GroupNode>
<y:Geometry height="50.0" width="50.0" x="0.0" y="60.0"/>
<y:Fill color="#F5F5F5" transparent="false"/>
<y:BorderStyle color="#000000" type="dashed" width="1.0"/>
<y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" modelName="internal" modelPosition="t" textColor="#000000" visible="true" width="74.74462890625" x="-12.372314453125" y="0.0">Folder 97</y:NodeLabel>
<y:Shape type="roundrectangle"/>
<y:State closed="true" closedHeight="50.0" closedWidth="50.0" innerGraphDisplayEnabled="false"/>
<y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
<y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
</y:GroupNode>
</y:Realizers>
</y:ProxyAutoBoundsNode>
</data>
<graph edgedefault="directed" id="n96:">
<node id="n96::n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="41.9375" width="442.771484375" x="8398.810719951478" y="1880.0190244151381"/>
<y:Fill color="#FFFFFF" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="left" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="31.9375" modelName="custom" textColor="#000000" visible="true" width="432.771484375" x="5.0" y="5.0">A program designed for use by people that know next to nothing about
computers. Familiarly shortened to "app" by such users.
<y:LabelModel>
<y:SmartNodeLabelModel distance="4.0"/>
</y:LabelModel>
<y:ModelParameter>
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
</y:ModelParameter>
</y:NodeLabel>
<y:Shape type="roundrectangle"/>
</y:ShapeNode>
</data>
</node>
</graph>
</node>
<edge id="e0" source="n0" target="n1">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="3.189118049980607" sy="3.8509123676485615" tx="3.189118049976969" ty="3.8509123676485615"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e1" source="n1" target="n2">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e2" source="n1" target="n3">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e3" source="n3" target="n4">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.5997292026077048" sy="4.96390218311717" tx="0.5997292026077048" ty="4.96390218311717"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e4" source="n4" target="n3">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-3.637978807091713E-12" sy="-5.036360322541441" tx="0.0" ty="-5.036360322534165"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e5" source="n1" target="n5">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e6" source="n1" target="n6">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e7" source="n1" target="n7">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e8" source="n1" target="n8">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e9" source="n1" target="n0">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-7.83915791394611" sy="0.0" tx="-7.839157913957024" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e10" source="n1" target="n9">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e11" source="n1" target="n10">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e12" source="n0" target="n8">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e13" source="n0" target="n11">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="2.651924114608846" sy="4.238785025259858" tx="2.651924114608846" ty="4.238785025259858"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e14" source="n0" target="n12">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e15" source="n0" target="n13">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e16" source="n0" target="n14">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-4.626995191807509" sy="1.8949711066416057" tx="-4.626995191807509" ty="1.8949711066416057"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e17" source="n14" target="n0">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="5.403074557820219" sy="0.0" tx="5.403074557820219" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e18" source="n14" target="n15">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e19" source="n18" target="n13">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e20" source="n19" target="n20">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e21" source="n20" target="n2">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e22" source="n20" target="n6">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e23" source="n20" target="n21">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e24" source="n21" target="n22">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e25" source="n21" target="n23">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e26" source="n23" target="n0">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e27" source="n23" target="n24">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="4.976263961420045" sy="-0.48661790580808884" tx="4.976263961420045" ty="-0.48661790580808884"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e28" source="n24" target="n20">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e29" source="n24" target="n25">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-3.7491135131858755" sy="3.3081940489100816" tx="-3.7491135131858755" ty="3.3081940489100816"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e30" source="n25" target="n26">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e31" source="n26" target="n27">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e32" source="n27" target="n28">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e33" source="n28" target="n2">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e34" source="n28" target="n9">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e35" source="n29" target="n30">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="4.503184750756191" sy="-2.1728615005449683" tx="4.503184750756191" ty="-2.1728615005449683"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e36" source="n28" target="n29">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e37" source="n30" target="n31">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e38" source="n31" target="n33">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e39" source="n31" target="n32">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e40" source="n30" target="n34">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e41" source="n34" target="n32">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e42" source="n34" target="n35">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e43" source="n35" target="n32">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e44" source="n30" target="n36">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e45" source="n36" target="n32">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e46" source="n36" target="n29">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e47" source="n36" target="n37">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="2.769953633440309" sy="-4.162614186854626" tx="2.769953633440309" ty="-4.162614186854626"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e48" source="n37" target="n36">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-9.02542183312471" sy="0.0" tx="0.0" ty="6.005841252110258"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e49" source="n30" target="n38">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e50" source="n38" target="n32">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e51" source="n38" target="n39">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e52" source="n39" target="n40">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e53" source="n40" target="n11">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e54" source="n41" target="n13">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e55" source="n11" target="n3">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e56" source="n11" target="n0">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-9.427117413466476" sy="0.0" tx="-9.427117413462838" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e57" source="n11" target="n2">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e58" source="n11" target="n42">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e59" source="n42" target="n8">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e60" source="n40" target="n8">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e61" source="n40" target="n25">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e62" source="n40" target="n1">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e63" source="n39" target="n11">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e64" source="n39" target="n0">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e65" source="n30" target="n29">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-5.551626545144245" sy="0.0" tx="-5.551626545151521" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e66" source="n29" target="n32">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e67" source="n28" target="n43">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e68" source="n43" target="n44">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="4.8737021080742124" sy="1.1167039723040943" tx="4.8737021080742124" ty="1.1167039723040943"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e69" source="n44" target="n43">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-5.129570795594191" sy="0.0" tx="-5.129570795594191" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e70" source="n43" target="n45">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="1.0688088130918914" sy="4.884429109020857" tx="1.0688088130918914" ty="4.884429109020857"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e71" source="n45" target="n43">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="-5.11830542361713" tx="0.0" ty="-5.118305423620768"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e72" source="n43" target="n46">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-1.476108185488556" sy="4.777143981995323" tx="-1.476108185488556" ty="4.777143981995323"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e73" source="n46" target="n2">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e74" source="n46" target="n43">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="-5.233252356261801" tx="0.0" ty="-5.233252356261801"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e75" source="n46" target="n44">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e76" source="n46" target="n45">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e77" source="n46" target="n21">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-5.365221764775924" sy="0.0" tx="-5.3652217647832" ty="3.637978807091713E-12"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e78" source="n28" target="n47">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e79" source="n47" target="n48">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e80" source="n47" target="n49">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e81" source="n49" target="n6">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e82" source="n49" target="n0">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e83" source="n49" target="n50">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e84" source="n50" target="n13">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e85" source="n50" target="n51">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e86" source="n49" target="n52">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e87" source="n49" target="n53">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e88" source="n53" target="n52">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e89" source="n47" target="n23">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e90" source="n23" target="n54">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="4.945625441570883" sy="-0.7353835677240568" tx="4.945625441570883" ty="-0.7353835677240568"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e91" source="n54" target="n23">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-5.054972378180537" sy="0.0" tx="-5.054972378180537" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e92" source="n54" target="n6">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e93" source="n54" target="n21">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e94" source="n54" target="n24">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e95" source="n28" target="n55">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e96" source="n28" target="n6">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e97" source="n28" target="n21">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e98" source="n28" target="n0">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e99" source="n28" target="n56">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-4.325613566041284" sy="-2.5078012834528636" tx="-4.325613566041284" ty="-2.5078012834528636"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e100" source="n56" target="n49">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e101" source="n56" target="n57">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e102" source="n56" target="n28">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="5.7795269083362655" sy="0.0" tx="5.779526908343541" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e103" source="n26" target="n47">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e104" source="n26" target="n43">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e105" source="n26" target="n6">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e106" source="n25" target="n0">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e107" source="n25" target="n24">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="6.6682430158762145" sy="0.0" tx="6.6682430158762145" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e108" source="n25" target="n23">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e109" source="n25" target="n54">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e110" source="n24" target="n23">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-5.023849255943787" sy="0.0" tx="-5.023849255951063" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e111" source="n23" target="n11">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e112" source="n21" target="n46">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="4.659639637662622" sy="1.8132177053885243" tx="4.659639637662622" ty="1.8132177053885243"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e113" source="n21" target="n58">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e114" source="n58" target="n0">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e115" source="n58" target="n59">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e116" source="n59" target="n2">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e117" source="n59" target="n9">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e118" source="n59" target="n29">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e119" source="n59" target="n43">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e120" source="n59" target="n47">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e121" source="n59" target="n0">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e122" source="n59" target="n6">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e123" source="n59" target="n55">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e124" source="n59" target="n21">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e125" source="n59" target="n32">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e126" source="n58" target="n60">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e127" source="n19" target="n61">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="2.047360223798023" sy="-4.561613323596248" tx="2.047360223798023" ty="-4.561613323596248"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e128" source="n61" target="n19">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="5.4805171386833536" tx="-12.210845804940618" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e129" source="n62" target="n3">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e130" source="n62" target="n2">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e131" source="n62" target="n63">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e132" source="n62" target="n41">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e133" source="n62" target="n50">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e134" source="n62" target="n64">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e135" source="n64" target="n2">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e136" source="n64" target="n3">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e137" source="n64" target="n12">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-5.010183516864345" sy="-3.637978807091713E-12" tx="-5.010183516864345" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e138" source="n64" target="n9">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e139" source="n65" target="n32">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e140" source="n66" target="n47">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e141" source="n66" target="n67">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="3.1313736091033206" sy="-3.898012226793071" tx="3.1313736091033206" ty="-3.898012226793071"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e142" source="n67" target="n66">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-7.983716771253967" sy="0.0" tx="-7.983716771246691" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e143" source="n67" target="n68">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="3.532951767294435" sy="3.5381141601101262" tx="3.532951767294435" ty="3.5381141601101262"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e144" source="n68" target="n67">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-7.076235863576585" sy="0.0" tx="-7.076235863576585" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e145" source="n68" target="n66">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e146" source="n68" target="n32">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e147" source="n66" target="n17">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e148" source="n6" target="n5">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e149" source="n6" target="n2">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e150" source="n6" target="n9">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e151" source="n69" target="n20">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e152" source="n69" target="n70">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="4.253610187734012" sy="2.6280792169964116" tx="4.253610187734012" ty="2.6280792169964116"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e153" source="n70" target="n69">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-5.877360382510233" sy="0.0" tx="-5.877360382502957" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e154" source="n70" target="n71">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e155" source="n71" target="n72">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e156" source="n71" target="n73">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e157" source="n73" target="n74">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e158" source="n74" target="n75">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e159" source="n75" target="n22">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e160" source="n74" target="n47">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e161" source="n74" target="n5">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e162" source="n74" target="n45">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e163" source="n74" target="n76">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e164" source="n69" target="n71">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e165" source="n69" target="n6">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-5.460476542095421" sy="0.0" tx="-5.460476542093602" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e166" source="n6" target="n71">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e167" source="n6" target="n69">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="4.578354985555507" sy="2.009643158930885" tx="4.578354985555052" ty="2.0096431589299755"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e168" source="n6" target="n23">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e169" source="n79" target="n62">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e170" source="n79" target="n18">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e171" source="n79" target="n13">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e172" source="n79" target="n41">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e173" source="n79" target="n3">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e174" source="n80" target="n2">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e175" source="n82" target="n81">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="8.605533120209884" sy="0.0" tx="8.605533120209927" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e176" source="n81" target="n82">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="-2.90510763839697" sy="-4.069440945551065" tx="-2.9051076383969985" ty="-4.069440945551037"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e177" source="n84" target="n60">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e178" source="n85" target="n0">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e179" source="n86" target="n47">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e180" source="n88" target="n43">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e181" source="n88" target="n5">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e182" source="n89" target="n50">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e183" source="n89" target="n51">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e184" source="n90" target="n91">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e185" source="n91" target="n92">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e186" source="n92" target="n60">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e187" source="n92" target="n66">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e188" source="n91" target="n93">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e189" source="n93" target="n60">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e190" source="n93" target="n0">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e191" source="n93" target="n94">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e192" source="n94" target="n57">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e193" source="n94" target="n84">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e194" source="n94" target="n19">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e195" source="n94" target="n47">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e196" source="n91" target="n77">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e197" source="n12" target="n41">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e198" source="n12" target="n13">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e199" source="n12" target="n64">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="4.989837181783514" sy="0.3186297213032958" tx="4.989837181783514" ty="0.3186297213032958"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e200" source="n12" target="n50">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e201" source="n95" target="n0">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
<edge id="e202" source="n96" target="n84">
<data key="d10">
<y:PolyLineEdge>
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
<y:LineStyle color="#000000" type="line" width="1.0"/>
<y:Arrows source="none" target="standard"/>
<y:BendStyle smoothed="false"/>
</y:PolyLineEdge>
</data>
</edge>
</graph>
<data key="d7">
<y:Resources/>
</data>
</graphml>
Display the source blob
Display the rendered blob
Raw
<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill-opacity="1" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" width="10558" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" height="7614" font-family="'Dialog'" font-style="normal" stroke-linejoin="miter" font-size="12px" stroke-dashoffset="0" image-rendering="auto">
<!--Generated by ySVG 2.5-->
<defs id="genericDefs"/>
<g>
<defs id="defs1">
<clipPath clipPathUnits="userSpaceOnUse" id="clipPath1">
<path d="M0 0 L10558 0 L10558 7614 L0 7614 L0 0 Z"/>
</clipPath>
<clipPath clipPathUnits="userSpaceOnUse" id="clipPath2">
<path d="M-15 -16 L10543 -16 L10543 7598 L-15 7598 L-15 -16 Z"/>
</clipPath>
</defs>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="translate(15,16)" stroke="white">
<rect x="-15" width="10558" height="7614" y="-16" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3431.0459" y="2280.5312" clip-path="url(#clipPath2)" width="569.5332" rx="4" ry="4" height="125.2109" stroke="none"/>
<rect x="3431.0459" y="2280.5312" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="569.5332" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3937.3047" xml:space="preserve" y="2296.4546" clip-path="url(#clipPath2)" stroke="none">function</text>
<rect x="3431.0459" y="2280.5312" clip-path="url(#clipPath2)" fill="none" width="569.5332" stroke-dasharray="6,2" rx="4" ry="4" height="125.2109"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3446.0459" y="2316.9922" clip-path="url(#clipPath2)" width="539.5332" rx="4" ry="4" height="73.75" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3453.0459" xml:space="preserve" y="2337.0684" clip-path="url(#clipPath2)" stroke="none"> 1. A self-contained part of a program that performs a particular task.</text>
<text x="3453.0459" xml:space="preserve" y="2351.0371" clip-path="url(#clipPath2)" stroke="none"> 2. One of the eight types of Lua. Lua is unusual in that a function is a first-class value.</text>
<text x="3453.0459" xml:space="preserve" y="2365.0059" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3453.0459" xml:space="preserve" y="2378.9746" clip-path="url(#clipPath2)" stroke="none">See Declaration, Parameter, Argument, Scope, Closure.</text>
<rect x="3446.0459" y="2316.9922" clip-path="url(#clipPath2)" fill="none" width="539.5332" rx="4" ry="4" height="73.75"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="2027.9907" y="3466.1573" clip-path="url(#clipPath2)" width="450.1777" rx="4" ry="4" height="176.6719" stroke="none"/>
<rect x="2027.9907" y="3466.1573" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="450.1777" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="2358.4683" xml:space="preserve" y="3482.0806" clip-path="url(#clipPath2)" stroke="none">first-class value</text>
<rect x="2027.9907" y="3466.1573" clip-path="url(#clipPath2)" fill="none" width="450.1777" stroke-dasharray="6,2" rx="4" ry="4" height="176.6719"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="2042.9907" y="3502.6183" clip-path="url(#clipPath2)" width="420.1777" rx="4" ry="4" height="125.2109" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="2049.9907" xml:space="preserve" y="3520.4873" clip-path="url(#clipPath2)" stroke="none">A value that can be:</text>
<text x="2049.9907" xml:space="preserve" y="3534.4561" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2049.9907" xml:space="preserve" y="3548.4248" clip-path="url(#clipPath2)" stroke="none"> * assigned to a name</text>
<text x="2049.9907" xml:space="preserve" y="3562.3936" clip-path="url(#clipPath2)" stroke="none"> * used as a key as well as a value in a table</text>
<text x="2049.9907" xml:space="preserve" y="3576.3623" clip-path="url(#clipPath2)" stroke="none"> * used in expressions</text>
<text x="2049.9907" xml:space="preserve" y="3590.3311" clip-path="url(#clipPath2)" stroke="none"> * given as an argument to a function</text>
<text x="2049.9907" xml:space="preserve" y="3604.2998" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2049.9907" xml:space="preserve" y="3618.2686" clip-path="url(#clipPath2)" stroke="none">There are minor exceptions: nil and NaN may not be used as a key.</text>
<rect x="2042.9907" y="3502.6183" clip-path="url(#clipPath2)" fill="none" width="420.1777" rx="4" ry="4" height="125.2109"/>
<path fill="none" d="M3648.0479 2405.7478 L2373.7324 3461.0669" clip-path="url(#clipPath2)"/>
<path d="M2367.571 3466.1694 L2380.0024 3462.3665 L2374.5027 3460.429 L2373.624 3454.6646 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2351.9055 3466.1589 L3626.2241 2410.8369" clip-path="url(#clipPath2)"/>
<path d="M3632.3855 2405.7344 L3619.9541 2409.5374 L3625.4539 2411.4749 L3626.3325 2417.2393 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="2672.3651" y="3371.5319" clip-path="url(#clipPath2)" width="569.5332" rx="4" ry="4" height="116.4609" stroke="none"/>
<rect x="2672.3651" y="3371.5319" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="569.5332" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3198.9265" xml:space="preserve" y="3387.4553" clip-path="url(#clipPath2)" stroke="none">value</text>
<rect x="2672.3651" y="3371.5319" clip-path="url(#clipPath2)" fill="none" width="569.5332" stroke-dasharray="6,2" rx="4" ry="4" height="116.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="2687.3651" y="3407.9929" clip-path="url(#clipPath2)" width="539.5332" rx="4" ry="4" height="65" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="2701.7888" xml:space="preserve" y="3430.6785" clip-path="url(#clipPath2)" stroke="none">A block of memory organized as one of Lua's eight types.</text>
<text x="2701.7888" xml:space="preserve" y="3444.6472" clip-path="url(#clipPath2)" stroke="none">Values can be mutable or immutable.</text>
<text x="2701.7888" xml:space="preserve" y="3458.616" clip-path="url(#clipPath2)" stroke="none">All values in Lua are first-class values, unlike some other commonly used languages.</text>
<rect x="2687.3651" y="3407.9929" clip-path="url(#clipPath2)" fill="none" width="539.5332" rx="4" ry="4" height="65"/>
<path fill="none" d="M2478.2095 3514.6089 L2664.5144 3481.6028" clip-path="url(#clipPath2)"/>
<path d="M2672.3918 3480.2073 L2659.7036 3477.3772 L2663.5298 3481.7773 L2661.448 3487.2239 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="1126.4987" y="2793.0445" clip-path="url(#clipPath2)" width="450.1777" rx="4" ry="4" height="133.2109" stroke="none"/>
<rect x="1126.4987" y="2793.0445" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="450.1777" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="1532.1375" xml:space="preserve" y="2808.9678" clip-path="url(#clipPath2)" stroke="none">name</text>
<rect x="1126.4987" y="2793.0445" clip-path="url(#clipPath2)" fill="none" width="450.1777" stroke-dasharray="6,2" rx="4" ry="4" height="133.2109"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="1141.4987" y="2829.5054" clip-path="url(#clipPath2)" width="420.1777" rx="4" ry="4" height="81.75" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="1150.3152" xml:space="preserve" y="2846.5972" clip-path="url(#clipPath2)" stroke="none">A word in a Lua program that can be associated with a value.</text>
<text x="1150.3152" xml:space="preserve" y="2860.5659" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1150.3152" xml:space="preserve" y="2874.5347" clip-path="url(#clipPath2)" stroke="none">x = 1.23 -- 'x' is a name, 1.23 is a constant number value</text>
<text x="1150.3152" xml:space="preserve" y="2888.5034" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1150.3152" xml:space="preserve" y="2902.4722" clip-path="url(#clipPath2)" stroke="none">Lua syntax demands that a name satisfy the rules for an identifier.</text>
<rect x="1141.4987" y="2829.5054" clip-path="url(#clipPath2)" fill="none" width="420.1777" rx="4" ry="4" height="81.75"/>
<path fill="none" d="M2138.4949 3466.1748 L1444.3521 2931.1501" clip-path="url(#clipPath2)"/>
<path d="M1438.0157 2926.2664 L1444.4678 2937.5522 L1445.144 2931.7605 L1450.5725 2929.6318 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="0" y="2954.2702" clip-path="url(#clipPath2)" width="462.6055" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="0" y="2954.2702" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="462.6055" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="393.2886" xml:space="preserve" y="2970.1936" clip-path="url(#clipPath2)" stroke="none">identifier</text>
<rect x="0" y="2954.2702" clip-path="url(#clipPath2)" fill="none" width="462.6055" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="15" y="2990.7311" clip-path="url(#clipPath2)" width="432.6055" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="22" xml:space="preserve" y="3009.8855" clip-path="url(#clipPath2)" stroke="none">A synonym for name. The term also has a special meaning in the API.</text>
<rect x="15" y="2990.7311" clip-path="url(#clipPath2)" fill="none" width="432.6055" rx="4" ry="4" height="30"/>
<path fill="none" d="M1126.5098 2891.8799 L470.5676 2971.1294" clip-path="url(#clipPath2)"/>
<path d="M462.6253 2972.0891 L475.1385 2975.6135 L471.5603 2971.0095 L473.9388 2965.6855 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M462.5871 2962.021 L1118.5465 2882.7693" clip-path="url(#clipPath2)"/>
<path d="M1126.4888 2881.8096 L1113.9756 2878.2852 L1117.5537 2882.8892 L1115.1753 2888.2131 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="2580.9913" y="4379.5082" clip-path="url(#clipPath2)" width="360.8047" rx="4" ry="4" height="89.4609" stroke="none"/>
<rect x="2580.9913" y="4379.5082" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="360.8047" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="2913.0042" xml:space="preserve" y="4395.4316" clip-path="url(#clipPath2)" stroke="none">key</text>
<rect x="2580.9913" y="4379.5082" clip-path="url(#clipPath2)" fill="none" width="360.8047" stroke-dasharray="6,2" rx="4" ry="4" height="89.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="2595.9913" y="4415.9692" clip-path="url(#clipPath2)" width="330.8047" rx="4" ry="4" height="38" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="2602.9915" xml:space="preserve" y="4432.1392" clip-path="url(#clipPath2)" stroke="none">The first element of a key-value pair in a table.</text>
<text x="2602.9915" xml:space="preserve" y="4446.1079" clip-path="url(#clipPath2)" stroke="none">Any value except nil and NaN may be used as a key.</text>
<rect x="2595.9913" y="4415.9692" clip-path="url(#clipPath2)" fill="none" width="330.8047" rx="4" ry="4" height="38"/>
<path fill="none" d="M2304.7207 3642.8533 L2731.2261 4372.6206" clip-path="url(#clipPath2)"/>
<path d="M2735.2627 4379.5273 L2733.5244 4366.644 L2730.7214 4371.7573 L2724.8909 4371.6899 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3204.6633" y="3926.7687" clip-path="url(#clipPath2)" width="497.8438" rx="4" ry="4" height="214.9219" stroke="none"/>
<rect x="3204.6633" y="3926.7687" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="497.8438" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3662.5164" xml:space="preserve" y="3942.6921" clip-path="url(#clipPath2)" stroke="none">table</text>
<rect x="3204.6633" y="3926.7687" clip-path="url(#clipPath2)" fill="none" width="497.8438" stroke-dasharray="6,2" rx="4" ry="4" height="214.9219"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3219.6633" y="3963.2297" clip-path="url(#clipPath2)" width="467.8438" rx="4" ry="4" height="163.4609" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3226.6633" xml:space="preserve" y="3986.2551" clip-path="url(#clipPath2)" stroke="none">1. A collection of (key,value) pairs, called entries.</text>
<text x="3226.6633" xml:space="preserve" y="4000.2239" clip-path="url(#clipPath2)" stroke="none">One of the eight types of Lua.</text>
<text x="3226.6633" xml:space="preserve" y="4014.1926" clip-path="url(#clipPath2)" stroke="none">The keys in a table are distinct.</text>
<text x="3226.6633" xml:space="preserve" y="4028.1614" clip-path="url(#clipPath2)" stroke="none">If the value is nil, the entry is not actually stored, and the key is lost.</text>
<text x="3226.6633" xml:space="preserve" y="4042.1301" clip-path="url(#clipPath2)" stroke="none">See also array, sequence.</text>
<text x="3226.6633" xml:space="preserve" y="4056.0989" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3226.6633" xml:space="preserve" y="4070.0676" clip-path="url(#clipPath2)" stroke="none"> a.r = nil -- delete the entry with key "r"</text>
<text x="3226.6633" xml:space="preserve" y="4084.0364" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3226.6633" xml:space="preserve" y="4098.0049" clip-path="url(#clipPath2)" stroke="none">2. "table" is a standard library containing functions that involve sequences.</text>
<text x="3226.6633" xml:space="preserve" y="4111.9736" clip-path="url(#clipPath2)" stroke="none">Those functions cannot be called using object-oriented syntax.</text>
<rect x="3219.6633" y="3963.2297" clip-path="url(#clipPath2)" fill="none" width="467.8438" rx="4" ry="4" height="163.4609"/>
<path fill="none" d="M2474.1077 3642.8188 L3197.2517 3931.7957" clip-path="url(#clipPath2)"/>
<path d="M3204.6804 3934.7644 L3195.3928 3925.6682 L3196.323 3931.4246 L3191.6819 3934.9543 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3262.8354 4141.7061 L2847.7236 4375.5967" clip-path="url(#clipPath2)"/>
<path d="M2840.7539 4379.5239 L2853.6631 4377.9893 L2848.5947 4375.106 L2848.7539 4369.2769 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3365.3181 3926.7581 L3010.0186 3494.156" clip-path="url(#clipPath2)"/>
<path d="M3004.9412 3487.9736 L3008.6931 3500.4204 L3010.6531 3494.9287 L3016.4211 3494.0737 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="542.6632" y="3837.79" clip-path="url(#clipPath2)" width="718.1738" rx="4" ry="4" height="170.2109" stroke="none"/>
<rect x="542.6632" y="3837.79" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="718.1738" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="1177.3331" xml:space="preserve" y="3853.7134" clip-path="url(#clipPath2)" stroke="none">expression</text>
<rect x="542.6632" y="3837.79" clip-path="url(#clipPath2)" fill="none" width="718.1738" stroke-dasharray="6,2" rx="4" ry="4" height="170.2109"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="557.6632" y="3874.2509" clip-path="url(#clipPath2)" width="688.1738" rx="4" ry="4" height="118.75" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="564.6632" xml:space="preserve" y="3895.874" clip-path="url(#clipPath2)" stroke="none">An expression is a piece of Lua code, shorter than a statement, that specifies how a value should be calculated.</text>
<text x="564.6632" xml:space="preserve" y="3909.8428" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="564.6632" xml:space="preserve" y="3923.8115" clip-path="url(#clipPath2)" stroke="none">(2+2)^5 -- arithmetic expression</text>
<text x="564.6632" xml:space="preserve" y="3937.7803" clip-path="url(#clipPath2)" stroke="none">age &lt;= 65 -- boolean expression</text>
<text x="564.6632" xml:space="preserve" y="3951.749" clip-path="url(#clipPath2)" stroke="none">'--' .. " this is" -- string expression</text>
<text x="564.6632" xml:space="preserve" y="3965.7178" clip-path="url(#clipPath2)" stroke="none">(gsub('Number # wins",'#','7')) -- function call expression (only the</text>
<text x="564.6632" xml:space="preserve" y="3979.6865" clip-path="url(#clipPath2)" stroke="none">-- first value is used, and you need the parentheses for that)</text>
<rect x="557.6632" y="3874.2509" clip-path="url(#clipPath2)" fill="none" width="688.1738" rx="4" ry="4" height="118.75"/>
<path fill="none" d="M2027.9542 3615.8674 L1221.6423 3835.6858" clip-path="url(#clipPath2)"/>
<path d="M1213.9241 3837.79 L1226.8167 3839.4575 L1222.6072 3835.4229 L1224.1864 3829.8098 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="1823.12" y="3045.6601" clip-path="url(#clipPath2)" width="518.0586" rx="4" ry="4" height="187.8719" stroke="none"/>
<rect x="1823.12" y="3045.6601" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="518.0586" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="2265.5627" xml:space="preserve" y="3061.5835" clip-path="url(#clipPath2)" stroke="none">argument</text>
<rect x="1823.12" y="3045.6601" clip-path="url(#clipPath2)" fill="none" width="518.0586" stroke-dasharray="6,2" rx="4" ry="4" height="187.8719"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="1838.12" y="3082.121" clip-path="url(#clipPath2)" width="488.0586" rx="4" ry="4" height="136.4109" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="1845.12" xml:space="preserve" y="3105.5901" clip-path="url(#clipPath2)" stroke="none">The actual value that a parameter has when a function is called.</text>
<text x="1845.12" xml:space="preserve" y="3119.5588" clip-path="url(#clipPath2)" stroke="none">We say that the argument is passed to the function.</text>
<text x="1845.12" xml:space="preserve" y="3133.5276" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1845.12" xml:space="preserve" y="3147.4963" clip-path="url(#clipPath2)" stroke="none">x = fct (1,3,'pqr') -- 1, 3 and 'pqr' are arguments</text>
<text x="1845.12" xml:space="preserve" y="3161.4651" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1845.12" xml:space="preserve" y="3175.4338" clip-path="url(#clipPath2)" stroke="none">The number of arguments may differ from the number of parameters.</text>
<text x="1845.12" xml:space="preserve" y="3189.4026" clip-path="url(#clipPath2)" stroke="none">If there are too many, the extra arguments are ignored; </text>
<text x="1845.12" xml:space="preserve" y="3203.3713" clip-path="url(#clipPath2)" stroke="none">if there are too few, the missing arguments are assumed to have the value nil.</text>
<rect x="1838.12" y="3082.121" clip-path="url(#clipPath2)" fill="none" width="488.0586" rx="4" ry="4" height="136.4109"/>
<path fill="none" d="M2216.6797 3466.1401 L2123.9038 3240.946" clip-path="url(#clipPath2)"/>
<path d="M2120.8562 3233.5493 L2120.8047 3246.5493 L2124.2847 3241.8706 L2130.0505 3242.7397 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3587.4097 2405.7368 L2282.0225 3042.1519" clip-path="url(#clipPath2)"/>
<path d="M2274.8315 3045.6577 L2287.8091 3044.8933 L2282.9214 3041.7136 L2283.4268 3035.9045 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3125.2345" y="3144.6935" clip-path="url(#clipPath2)" width="475.8828" rx="4" ry="4" height="161.0155" stroke="none"/>
<rect x="3125.2345" y="3144.6935" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="475.8828" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3581.2754" xml:space="preserve" y="3160.6169" clip-path="url(#clipPath2)" stroke="none">nil</text>
<rect x="3125.2345" y="3144.6935" clip-path="url(#clipPath2)" fill="none" width="475.8828" stroke-dasharray="6,2" rx="4" ry="4" height="161.0155"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3140.2345" y="3181.1545" clip-path="url(#clipPath2)" width="445.8828" rx="4" ry="4" height="109.5546" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3147.2344" xml:space="preserve" y="3198.1799" clip-path="url(#clipPath2)" stroke="none">One of the eight types of Lua.</text>
<text x="3147.2344" xml:space="preserve" y="3212.1487" clip-path="url(#clipPath2)" stroke="none">There is only one value of that type, also called nil.</text>
<text x="3147.2344" xml:space="preserve" y="3226.1174" clip-path="url(#clipPath2)" stroke="none">Its purpose is to act as a placeholder where a value is needed,</text>
<text x="3147.2344" xml:space="preserve" y="3240.0862" clip-path="url(#clipPath2)" stroke="none">but no proper value is available.</text>
<text x="3147.2344" xml:space="preserve" y="3254.0549" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3147.2344" xml:space="preserve" y="3268.0237" clip-path="url(#clipPath2)" stroke="none">tbl = {1,4,nil,nil,10} -- tbl[5] is 10</text>
<text x="3147.2344" xml:space="preserve" y="3281.9924" clip-path="url(#clipPath2)" stroke="none">fct = load(code,nil,nil,data) -- the data table must be the 4th argument</text>
<rect x="3140.2345" y="3181.1545" clip-path="url(#clipPath2)" fill="none" width="445.8828" rx="4" ry="4" height="109.5546"/>
<path fill="none" d="M2478.1953 3487.7163 L3117.5435 3298.0642" clip-path="url(#clipPath2)"/>
<path d="M3125.2131 3295.7891 L3112.2866 3294.4082 L3116.5847 3298.3486 L3115.1306 3303.9954 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3441.5723 3926.7312 L3373.0647 3313.6924" clip-path="url(#clipPath2)"/>
<path d="M3372.1763 3305.7419 L3368.5398 3318.2229 L3373.1758 3314.6863 L3378.478 3317.1125 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="960.9673" y="4280.1092" clip-path="url(#clipPath2)" width="459.4473" rx="4" ry="4" height="310.9805" stroke="none"/>
<rect x="960.9673" y="4280.1092" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="459.4473" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="1386.7812" xml:space="preserve" y="4296.0327" clip-path="url(#clipPath2)" stroke="none">NaN</text>
<rect x="960.9673" y="4280.1092" clip-path="url(#clipPath2)" fill="none" width="459.4473" stroke-dasharray="6,2" rx="4" ry="4" height="310.9805"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="975.9673" y="4316.5702" clip-path="url(#clipPath2)" width="429.4473" rx="4" ry="4" height="259.5196" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="982.9673" xml:space="preserve" y="4338.7344" clip-path="url(#clipPath2)" stroke="none">Acronym for "Not A Number".</text>
<text x="982.9673" xml:space="preserve" y="4352.7031" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="982.9673" xml:space="preserve" y="4366.6719" clip-path="url(#clipPath2)" stroke="none">An exceptional value of type number (also written 'NAN' and 'nan'),</text>
<text x="982.9673" xml:space="preserve" y="4380.6406" clip-path="url(#clipPath2)" stroke="none">which arises as the result of an undefinable arithmetic operation. </text>
<text x="982.9673" xml:space="preserve" y="4394.6094" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="982.9673" xml:space="preserve" y="4408.5781" clip-path="url(#clipPath2)" stroke="none">NaN is not a Lua keyword, but appears in output (in some</text>
<text x="982.9673" xml:space="preserve" y="4422.5469" clip-path="url(#clipPath2)" stroke="none">implementations, even the nonsensical '-nan' may be printed). If you</text>
<text x="982.9673" xml:space="preserve" y="4436.5156" clip-path="url(#clipPath2)" stroke="none">need the notation NaN, assign such a value to the name.</text>
<text x="982.9673" xml:space="preserve" y="4450.4844" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="982.9673" xml:space="preserve" y="4464.4531" clip-path="url(#clipPath2)" stroke="none">NaN is not a legal key in a table.</text>
<text x="982.9673" xml:space="preserve" y="4478.4219" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="982.9673" xml:space="preserve" y="4492.3906" clip-path="url(#clipPath2)" stroke="none">NaN = 0/0</text>
<text x="982.9673" xml:space="preserve" y="4506.3594" clip-path="url(#clipPath2)" stroke="none">NaN + 1 -- NaN. All arithmetic operations involving NaN have</text>
<text x="982.9673" xml:space="preserve" y="4520.3281" clip-path="url(#clipPath2)" stroke="none"> -- result NaN.</text>
<text x="982.9673" xml:space="preserve" y="4534.2969" clip-path="url(#clipPath2)" stroke="none">NaN &lt;= NaN -- false. All comparison operations involving NaN have</text>
<text x="982.9673" xml:space="preserve" y="4548.2656" clip-path="url(#clipPath2)" stroke="none"> -- result false except the following.</text>
<text x="982.9673" xml:space="preserve" y="4562.2344" clip-path="url(#clipPath2)" stroke="none">NaN ~= NaN -- true. The only Lua value with this property.</text>
<rect x="975.9673" y="4316.5702" clip-path="url(#clipPath2)" fill="none" width="429.4473" rx="4" ry="4" height="259.5196"/>
<path fill="none" d="M2146.575 3642.8245 L1384.3324 4275.0005" clip-path="url(#clipPath2)"/>
<path d="M1378.1746 4280.1074 L1390.6031 4276.2954 L1385.1021 4274.3618 L1384.2194 4268.5981 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="2368.0375" y="2977.9228" clip-path="url(#clipPath2)" width="441.043" rx="4" ry="4" height="140.9219" stroke="none"/>
<rect x="2368.0375" y="2977.9228" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="441.043" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="2727.8909" xml:space="preserve" y="2993.8462" clip-path="url(#clipPath2)" stroke="none">parameter</text>
<rect x="2368.0375" y="2977.9228" clip-path="url(#clipPath2)" fill="none" width="441.043" stroke-dasharray="6,2" rx="4" ry="4" height="140.9219"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="2383.0375" y="3014.3838" clip-path="url(#clipPath2)" width="411.043" rx="4" ry="4" height="89.4609" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="2390.0374" xml:space="preserve" y="3035.3311" clip-path="url(#clipPath2)" stroke="none">A local name used in the definition of a function for the value that</text>
<text x="2390.0374" xml:space="preserve" y="3049.2998" clip-path="url(#clipPath2)" stroke="none">will later be passed as an argument.</text>
<text x="2390.0374" xml:space="preserve" y="3063.2686" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2390.0374" xml:space="preserve" y="3077.2373" clip-path="url(#clipPath2)" stroke="none"> function fct (a,b,c) -- a,b,c are parameters</text>
<text x="2390.0374" xml:space="preserve" y="3091.2061" clip-path="url(#clipPath2)" stroke="none"> fct(1,2,3) -- 1,2,3 arearguments</text>
<rect x="2383.0375" y="3014.3838" clip-path="url(#clipPath2)" fill="none" width="411.043" rx="4" ry="4" height="89.4609"/>
<path fill="none" d="M3625.2031 2405.7229 L2717.3652 2973.6963" clip-path="url(#clipPath2)"/>
<path d="M2710.583 2977.9392 L2723.408 2975.8135 L2718.2129 2973.1658 L2718.1042 2967.3359 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2368.0649 3014.7415 L1584.6113 2895.2041" clip-path="url(#clipPath2)"/>
<path d="M1576.7029 2893.9976 L1587.8115 2900.7502 L1585.6 2895.355 L1589.3197 2890.8645 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2691.7266 2977.9409 L3599.5557 2409.9729" clip-path="url(#clipPath2)"/>
<path d="M3606.3376 2405.7297 L3593.5127 2407.8557 L3598.708 2410.5034 L3598.8167 2416.3333 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2656.6541 3118.8447 L2895.2876 3365.7695" clip-path="url(#clipPath2)"/>
<path d="M2900.8472 3371.5222 L2896.1033 3359.4187 L2894.5928 3365.0505 L2888.9126 3366.3679 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="1886.9517" y="1784.5872" clip-path="url(#clipPath2)" width="458.4805" rx="4" ry="4" height="170.2109" stroke="none"/>
<rect x="1886.9517" y="1784.5872" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="458.4805" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="2258.9839" xml:space="preserve" y="1800.5106" clip-path="url(#clipPath2)" stroke="none">declaration</text>
<rect x="1886.9517" y="1784.5872" clip-path="url(#clipPath2)" fill="none" width="458.4805" stroke-dasharray="6,2" rx="4" ry="4" height="170.2109"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="1901.9517" y="1821.0482" clip-path="url(#clipPath2)" width="428.4805" rx="4" ry="4" height="118.75" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="1908.9517" xml:space="preserve" y="1842.6713" clip-path="url(#clipPath2)" stroke="none">A statement that specifies that one or more names have local scope</text>
<text x="1908.9517" xml:space="preserve" y="1856.64" clip-path="url(#clipPath2)" stroke="none">and optionally initializes them.</text>
<text x="1908.9517" xml:space="preserve" y="1870.6088" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1908.9517" xml:space="preserve" y="1884.5775" clip-path="url(#clipPath2)" stroke="none"> local x, y = 1 -- x gets the value 1, y gets the value nil.</text>
<text x="1908.9517" xml:space="preserve" y="1898.5463" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1908.9517" xml:space="preserve" y="1912.515" clip-path="url(#clipPath2)" stroke="none">Names that have global scope are declared implicitly, i.e. they count</text>
<text x="1908.9517" xml:space="preserve" y="1926.4838" clip-path="url(#clipPath2)" stroke="none">as declared, with value nil, the moment you use them.</text>
<rect x="1901.9517" y="1821.0482" clip-path="url(#clipPath2)" fill="none" width="428.4805" rx="4" ry="4" height="118.75"/>
<path fill="none" d="M3504.2659 2280.5247 L2353.0764 1939.8041" clip-path="url(#clipPath2)"/>
<path d="M2345.4053 1937.5337 L2355.4929 1945.7338 L2354.0352 1940.0879 L2358.3308 1936.1449 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="1399.7586" y="1548.9099" clip-path="url(#clipPath2)" width="467.7969" rx="4" ry="4" height="316.8984" stroke="none"/>
<rect x="1399.7586" y="1548.9099" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="467.7969" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="1821.5663" xml:space="preserve" y="1564.8333" clip-path="url(#clipPath2)" stroke="none">scope</text>
<rect x="1399.7586" y="1548.9099" clip-path="url(#clipPath2)" fill="none" width="467.7969" stroke-dasharray="6,2" rx="4" ry="4" height="316.8984"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="1414.7586" y="1585.3708" clip-path="url(#clipPath2)" width="437.7969" rx="4" ry="4" height="265.4375" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="1421.7587" xml:space="preserve" y="1603.5095" clip-path="url(#clipPath2)" stroke="none">The part of a program inside which a local variable is visible, </text>
<text x="1421.7587" xml:space="preserve" y="1617.4783" clip-path="url(#clipPath2)" stroke="none">i.e. recognized by the compiler.</text>
<text x="1421.7587" xml:space="preserve" y="1631.447" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1421.7587" xml:space="preserve" y="1645.4158" clip-path="url(#clipPath2)" stroke="none">The scope starts when the variable is declared and goes to just before</text>
<text x="1421.7587" xml:space="preserve" y="1659.3845" clip-path="url(#clipPath2)" stroke="none">an unmatched "end", or up to and including an unmatched "until". </text>
<text x="1421.7587" xml:space="preserve" y="1673.3533" clip-path="url(#clipPath2)" stroke="none">The end can be matched by a previous begin, if, while or function.</text>
<text x="1421.7587" xml:space="preserve" y="1687.322" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1421.7587" xml:space="preserve" y="1701.2908" clip-path="url(#clipPath2)" stroke="none"> local a,b -- a and b are now visible</text>
<text x="1421.7587" xml:space="preserve" y="1715.2595" clip-path="url(#clipPath2)" stroke="none"> begin</text>
<text x="1421.7587" xml:space="preserve" y="1729.2283" clip-path="url(#clipPath2)" stroke="none"> local a -- the previous variable called `a` is now shadowed</text>
<text x="1421.7587" xml:space="preserve" y="1743.197" clip-path="url(#clipPath2)" stroke="none"> c = a + b -- the scope of the most recent `a` ends here</text>
<text x="1421.7587" xml:space="preserve" y="1757.1658" clip-path="url(#clipPath2)" stroke="none"> end -- this `end` is matched by the previous begin</text>
<text x="1421.7587" xml:space="preserve" y="1771.1345" clip-path="url(#clipPath2)" stroke="none"> -- for the most recent `a`, it is unmatched.</text>
<text x="1421.7587" xml:space="preserve" y="1785.1033" clip-path="url(#clipPath2)" stroke="none"> d = a+b -- the original `a` is visible again</text>
<text x="1421.7587" xml:space="preserve" y="1799.072" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1421.7587" xml:space="preserve" y="1813.0408" clip-path="url(#clipPath2)" stroke="none"> repeat</text>
<text x="1421.7587" xml:space="preserve" y="1827.0095" clip-path="url(#clipPath2)" stroke="none"> local i</text>
<text x="1421.7587" xml:space="preserve" y="1840.9783" clip-path="url(#clipPath2)" stroke="none"> until i&gt;10 -- the scope of i ends here </text>
<rect x="1414.7586" y="1585.3708" clip-path="url(#clipPath2)" fill="none" width="437.7969" rx="4" ry="4" height="265.4375"/>
<path fill="none" d="M3510.7932 2280.5349 L1875.2343 1781.1237" clip-path="url(#clipPath2)"/>
<path d="M1867.583 1778.7875 L1877.5999 1787.0739 L1876.1907 1781.4156 L1880.52 1777.5098 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M1886.9702 1792.5782 L1875.1646 1788.6067" clip-path="url(#clipPath2)"/>
<path d="M1867.5822 1786.0558 L1877.3615 1794.6211 L1876.1124 1788.9255 L1880.55 1785.1431 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3005.4043" y="893.6296" clip-path="url(#clipPath2)" width="266.8965" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="3005.4043" y="893.6296" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="266.8965" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3215.9917" xml:space="preserve" y="909.5529" clip-path="url(#clipPath2)" stroke="none">closure</text>
<rect x="3005.4043" y="893.6296" clip-path="url(#clipPath2)" fill="none" width="266.8965" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3020.4043" y="930.0905" clip-path="url(#clipPath2)" width="236.8965" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3027.4043" xml:space="preserve" y="949.2448" clip-path="url(#clipPath2)" stroke="none">A function bundled with its upvalues.</text>
<rect x="3020.4043" y="930.0905" clip-path="url(#clipPath2)" fill="none" width="236.8965" rx="4" ry="4" height="30"/>
<path fill="none" d="M3684.7568 2280.5 L3153.168 982.5071" clip-path="url(#clipPath2)"/>
<path d="M3150.136 975.1039 L3150.0569 988.1036 L3153.5469 983.4324 L3159.311 984.3137 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3160.9299 975.0739 L3692.553 2273.1504" clip-path="url(#clipPath2)"/>
<path d="M3695.5847 2280.5537 L3695.6641 2267.554 L3692.1738 2272.2251 L3686.4099 2271.3438 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="2687.7192" y="29.9846" clip-path="url(#clipPath2)" width="432.6055" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="2687.7192" y="29.9846" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="432.6055" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3058.3247" xml:space="preserve" y="45.9079" clip-path="url(#clipPath2)" stroke="none">upvalue</text>
<rect x="2687.7192" y="29.9846" clip-path="url(#clipPath2)" fill="none" width="432.6055" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="2702.7192" y="66.4455" clip-path="url(#clipPath2)" width="402.6055" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="2709.7192" xml:space="preserve" y="85.5998" clip-path="url(#clipPath2)" stroke="none">A local variable defined outside but referred to inside a function.</text>
<rect x="2702.7192" y="66.4455" clip-path="url(#clipPath2)" fill="none" width="402.6055" rx="4" ry="4" height="30"/>
<path fill="none" d="M3127.7803 893.6395 L2917.1899 119.144" clip-path="url(#clipPath2)"/>
<path d="M2915.0911 111.4243 L2913.4146 124.3157 L2917.4524 120.109 L2923.0642 121.6921 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="10053" y="-0.7969" clip-path="url(#clipPath2)" width="469.3848" rx="4" ry="4" height="247.0547" stroke="none"/>
<rect x="10053" y="-0.7969" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="469.3848" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="10487.9385" xml:space="preserve" y="15.1265" clip-path="url(#clipPath2)" stroke="none">zero</text>
<rect x="10053" y="-0.7969" clip-path="url(#clipPath2)" fill="none" width="469.3848" stroke-dasharray="6,2" rx="4" ry="4" height="247.0547"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="10068" y="35.6641" clip-path="url(#clipPath2)" width="439.3848" rx="4" ry="4" height="195.5938" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="10075" xml:space="preserve" y="53.8027" clip-path="url(#clipPath2)" stroke="none">Zero is a unique number, having three different representations that</text>
<text x="10075" xml:space="preserve" y="67.7715" clip-path="url(#clipPath2)" stroke="none">are all equal.</text>
<text x="10075" xml:space="preserve" y="81.7402" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="10075" xml:space="preserve" y="95.709" clip-path="url(#clipPath2)" stroke="none"> 0 -- integer zero</text>
<text x="10075" xml:space="preserve" y="109.6777" clip-path="url(#clipPath2)" stroke="none"> 0. -- floating-point zero</text>
<text x="10075" xml:space="preserve" y="123.6465" clip-path="url(#clipPath2)" stroke="none"> -0. -- negative zero</text>
<text x="10075" xml:space="preserve" y="137.6152" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="10075" xml:space="preserve" y="151.584" clip-path="url(#clipPath2)" stroke="none">They can be distinguished by programming tricks, but only the integer</text>
<text x="10075" xml:space="preserve" y="165.5527" clip-path="url(#clipPath2)" stroke="none">zero can be a table key. Either of the others will be silently coerced</text>
<text x="10075" xml:space="preserve" y="179.5215" clip-path="url(#clipPath2)" stroke="none">to an integer.</text>
<text x="10075" xml:space="preserve" y="193.4902" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="10075" xml:space="preserve" y="207.459" clip-path="url(#clipPath2)" stroke="none"> c = {[-0.]=true}</text>
<text x="10075" xml:space="preserve" y="221.4277" clip-path="url(#clipPath2)" stroke="none"> next(c) --&gt; 0 true</text>
<rect x="10068" y="35.6641" clip-path="url(#clipPath2)" fill="none" width="439.3848" rx="4" ry="4" height="195.5938"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="8280.7739" y="2849.7241" clip-path="url(#clipPath2)" width="464.4102" rx="4" ry="4" height="135.3047" stroke="none"/>
<rect x="8280.7739" y="2849.7241" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="464.4102" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="8658.1279" xml:space="preserve" y="2865.6475" clip-path="url(#clipPath2)" stroke="none">whitespace</text>
<rect x="8280.7739" y="2849.7241" clip-path="url(#clipPath2)" fill="none" width="464.4102" stroke-dasharray="6,2" rx="4" ry="4" height="135.3047"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="8295.7739" y="2886.185" clip-path="url(#clipPath2)" width="434.4102" rx="4" ry="4" height="83.8438" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="8302.7744" xml:space="preserve" y="2904.3237" clip-path="url(#clipPath2)" stroke="none">A character such as a blank, tab, line feed or carriage return that</text>
<text x="8302.7744" xml:space="preserve" y="2918.2925" clip-path="url(#clipPath2)" stroke="none">may be present in a text file but is not visible.</text>
<text x="8302.7744" xml:space="preserve" y="2932.2612" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="8302.7744" xml:space="preserve" y="2946.23" clip-path="url(#clipPath2)" stroke="none">In Lua any sequence of whitespace characters outside comments and</text>
<text x="8302.7744" xml:space="preserve" y="2960.1987" clip-path="url(#clipPath2)" stroke="none">strings is treated as being equivalent to one blank.</text>
<rect x="8295.7739" y="2886.185" clip-path="url(#clipPath2)" fill="none" width="434.4102" rx="4" ry="4" height="83.8438"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="557.7545" y="1556.1558" clip-path="url(#clipPath2)" width="109.2031" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="557.7545" y="1556.1558" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="109.2031" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="617.0133" xml:space="preserve" y="1572.0791" clip-path="url(#clipPath2)" stroke="none">visible</text>
<rect x="557.7545" y="1556.1558" clip-path="url(#clipPath2)" fill="none" width="109.2031" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="572.7545" y="1592.6167" clip-path="url(#clipPath2)" width="79.2031" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="579.7545" xml:space="preserve" y="1611.771" clip-path="url(#clipPath2)" stroke="none">See scope.</text>
<rect x="572.7545" y="1592.6167" clip-path="url(#clipPath2)" fill="none" width="79.2031" rx="4" ry="4" height="30"/>
<path fill="none" d="M666.9306 1602.7894 L1391.7809 1681.1957" clip-path="url(#clipPath2)"/>
<path d="M1399.7345 1682.056 L1388.3418 1675.7946 L1390.7867 1681.0881 L1387.2664 1685.7365 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="5842.5896" y="3723.423" clip-path="url(#clipPath2)" width="473.2812" rx="4" ry="4" height="149.2734" stroke="none"/>
<rect x="5842.5896" y="3723.423" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="473.2812" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="6196.6831" xml:space="preserve" y="3739.3462" clip-path="url(#clipPath2)" stroke="none">virtual machine</text>
<rect x="5842.5896" y="3723.423" clip-path="url(#clipPath2)" fill="none" width="473.2812" stroke-dasharray="6,2" rx="4" ry="4" height="149.2734"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="5857.5896" y="3759.8839" clip-path="url(#clipPath2)" width="443.2812" rx="4" ry="4" height="97.8125" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="5864.5894" xml:space="preserve" y="3778.0225" clip-path="url(#clipPath2)" stroke="none">A program (or part of one) running on a computer known as the "host",</text>
<text x="5864.5894" xml:space="preserve" y="3791.9912" clip-path="url(#clipPath2)" stroke="none">that can execute instructions for a different machine by representing</text>
<text x="5864.5894" xml:space="preserve" y="3805.96" clip-path="url(#clipPath2)" stroke="none">the components of that machine as a data structure on the host.</text>
<text x="5864.5894" xml:space="preserve" y="3819.9287" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5864.5894" xml:space="preserve" y="3833.8975" clip-path="url(#clipPath2)" stroke="none">Lua code is compiled for a virtual machine that has never been built</text>
<text x="5864.5894" xml:space="preserve" y="3847.8662" clip-path="url(#clipPath2)" stroke="none">as hardware, with a design that changes with every major release.</text>
<rect x="5857.5896" y="3759.8839" clip-path="url(#clipPath2)" fill="none" width="443.2812" rx="4" ry="4" height="97.8125"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="4080.5895" y="4160.1576" clip-path="url(#clipPath2)" width="447.957" rx="4" ry="4" height="149.2734" stroke="none"/>
<rect x="4080.5895" y="4160.1576" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="447.957" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="4419.5908" xml:space="preserve" y="4176.0811" clip-path="url(#clipPath2)" stroke="none">data structure</text>
<rect x="4080.5895" y="4160.1576" clip-path="url(#clipPath2)" fill="none" width="447.957" stroke-dasharray="6,2" rx="4" ry="4" height="149.2734"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="4095.5895" y="4196.6185" clip-path="url(#clipPath2)" width="417.957" rx="4" ry="4" height="97.8125" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="4102.5894" xml:space="preserve" y="4214.7573" clip-path="url(#clipPath2)" stroke="none">A collection of Values such that the collection can be referred to as</text>
<text x="4102.5894" xml:space="preserve" y="4228.7261" clip-path="url(#clipPath2)" stroke="none">a whole, but the values in it can also be referred to individually.</text>
<text x="4102.5894" xml:space="preserve" y="4242.6948" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4102.5894" xml:space="preserve" y="4256.6636" clip-path="url(#clipPath2)" stroke="none">In Lua, the only data structure is a table, but it is also possible to</text>
<text x="4102.5894" xml:space="preserve" y="4270.6323" clip-path="url(#clipPath2)" stroke="none">code one's own data structure in C and make it visible to Lua as a</text>
<text x="4102.5894" xml:space="preserve" y="4284.6011" clip-path="url(#clipPath2)" stroke="none">userdata.</text>
<rect x="4095.5895" y="4196.6185" clip-path="url(#clipPath2)" fill="none" width="417.957" rx="4" ry="4" height="97.8125"/>
<path fill="none" d="M5842.585 3856.2966 L4536.2705 4177.7734" clip-path="url(#clipPath2)"/>
<path d="M4528.5024 4179.6855 L4541.3496 4181.6724 L4537.2417 4177.5342 L4538.9595 4171.9624 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4179.603 4160.1333 L3061.4822 3492.1069" clip-path="url(#clipPath2)"/>
<path d="M3054.6145 3488.0039 L3062.3516 3498.4507 L3062.3406 3492.6199 L3067.4805 3489.8662 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4080.5774 4182.0029 L3710.3088 4094.7358" clip-path="url(#clipPath2)"/>
<path d="M3702.5222 4092.9006 L3713.0552 4100.52 L3711.2822 4094.9653 L3715.3491 4090.7869 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="4105.7344" y="3136.217" clip-path="url(#clipPath2)" width="450.3359" rx="4" ry="4" height="233.0859" stroke="none"/>
<rect x="4105.7344" y="3136.217" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="450.3359" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="4487.5664" xml:space="preserve" y="3152.1404" clip-path="url(#clipPath2)" stroke="none">userdata</text>
<rect x="4105.7344" y="3136.217" clip-path="url(#clipPath2)" fill="none" width="450.3359" stroke-dasharray="6,2" rx="4" ry="4" height="233.0859"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="4120.7344" y="3172.6779" clip-path="url(#clipPath2)" width="420.3359" rx="4" ry="4" height="181.625" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="4127.7344" xml:space="preserve" y="3190.8167" clip-path="url(#clipPath2)" stroke="none">A block of memory that can only be accessed via its own methods. </text>
<text x="4127.7344" xml:space="preserve" y="3204.7854" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4127.7344" xml:space="preserve" y="3218.7542" clip-path="url(#clipPath2)" stroke="none">One of the eight types of Lua.</text>
<text x="4127.7344" xml:space="preserve" y="3232.7229" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4127.7344" xml:space="preserve" y="3246.6917" clip-path="url(#clipPath2)" stroke="none">The definition of a userdata and the basic methods for accessing it</text>
<text x="4127.7344" xml:space="preserve" y="3260.6604" clip-path="url(#clipPath2)" stroke="none">need to be written in the API. A userdata can be "full" (i.e. it can</text>
<text x="4127.7344" xml:space="preserve" y="3274.6292" clip-path="url(#clipPath2)" stroke="none">be manipulated from Lua) or "light" (i.e. all Lua can do with it is to</text>
<text x="4127.7344" xml:space="preserve" y="3288.5979" clip-path="url(#clipPath2)" stroke="none">determine whether two values are raw equal). These are not true</text>
<text x="4127.7344" xml:space="preserve" y="3302.5667" clip-path="url(#clipPath2)" stroke="none">subtypes since they are treated as one type inside Lua and as two</text>
<text x="4127.7344" xml:space="preserve" y="3316.5354" clip-path="url(#clipPath2)" stroke="none">types inside the API.</text>
<text x="4127.7344" xml:space="preserve" y="3330.5042" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4127.7344" xml:space="preserve" y="3344.4729" clip-path="url(#clipPath2)" stroke="none">The topic is too advanced to explain any further in this Glossary.</text>
<rect x="4120.7344" y="3172.6779" clip-path="url(#clipPath2)" fill="none" width="420.3359" rx="4" ry="4" height="181.625"/>
<path fill="none" d="M4306.5698 4160.1406 L4327.5625 3377.3088" clip-path="url(#clipPath2)"/>
<path d="M4327.7769 3369.3118 L4322.457 3381.1736 L4327.5356 3378.3086 L4332.4536 3381.4414 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3136.1085" y="2433.3012" clip-path="url(#clipPath2)" width="276.9395" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="3136.1085" y="2433.3012" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="276.9395" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3360.5034" xml:space="preserve" y="2449.2246" clip-path="url(#clipPath2)" stroke="none">access</text>
<rect x="3136.1085" y="2433.3012" clip-path="url(#clipPath2)" fill="none" width="276.9395" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3151.1085" y="2469.7622" clip-path="url(#clipPath2)" width="246.9395" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3158.1084" xml:space="preserve" y="2488.9165" clip-path="url(#clipPath2)" stroke="none">To read or write (a variable, table etc).</text>
<rect x="3151.1085" y="2469.7622" clip-path="url(#clipPath2)" fill="none" width="246.9395" rx="4" ry="4" height="30"/>
<path fill="none" d="M4172.8472 3136.2407 L3336.2546 2519.5" clip-path="url(#clipPath2)"/>
<path d="M3329.8154 2514.7529 L3336.5073 2525.8982 L3337.0596 2520.0935 L3342.4414 2517.8491 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3618.3056" y="2766.5498" clip-path="url(#clipPath2)" width="465.8574" rx="4" ry="4" height="358.8047" stroke="none"/>
<rect x="3618.3056" y="2766.5498" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="465.8574" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="4024.2358" xml:space="preserve" y="2782.4731" clip-path="url(#clipPath2)" stroke="none">method</text>
<rect x="3618.3056" y="2766.5498" clip-path="url(#clipPath2)" fill="none" width="465.8574" stroke-dasharray="6,2" rx="4" ry="4" height="358.8047"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3633.3056" y="2803.0108" clip-path="url(#clipPath2)" width="435.8574" rx="4" ry="4" height="307.3438" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3640.3057" xml:space="preserve" y="2821.1494" clip-path="url(#clipPath2)" stroke="none">A function in a class whose first parameter is an object of that class.</text>
<text x="3640.3057" xml:space="preserve" y="2835.1182" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3640.3057" xml:space="preserve" y="2849.0869" clip-path="url(#clipPath2)" stroke="none">A special notation, known as an object-oriented call, may be used to</text>
<text x="3640.3057" xml:space="preserve" y="2863.0557" clip-path="url(#clipPath2)" stroke="none">call a method.</text>
<text x="3640.3057" xml:space="preserve" y="2877.0244" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3640.3057" xml:space="preserve" y="2890.9932" clip-path="url(#clipPath2)" stroke="none"> class.fct(obj,x,y) -- normal call to class.fct</text>
<text x="3640.3057" xml:space="preserve" y="2904.9619" clip-path="url(#clipPath2)" stroke="none"> obj:fct(x,y) -- object-oriented call to the function 'fct'</text>
<text x="3640.3057" xml:space="preserve" y="2918.9307" clip-path="url(#clipPath2)" stroke="none"> -- of the class to which 'obj' belongs</text>
<text x="3640.3057" xml:space="preserve" y="2932.8994" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3640.3057" xml:space="preserve" y="2946.8682" clip-path="url(#clipPath2)" stroke="none">If obj belongs to class, the two calls are equivalent.</text>
<text x="3640.3057" xml:space="preserve" y="2960.8369" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3640.3057" xml:space="preserve" y="2974.8057" clip-path="url(#clipPath2)" stroke="none">A similar notation may also be used to define a method. The following</text>
<text x="3640.3057" xml:space="preserve" y="2988.7744" clip-path="url(#clipPath2)" stroke="none">two definitions are equivalent.</text>
<text x="3640.3057" xml:space="preserve" y="3002.7432" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3640.3057" xml:space="preserve" y="3016.7119" clip-path="url(#clipPath2)" stroke="none"> function class:fct(x,y)</text>
<text x="3640.3057" xml:space="preserve" y="3030.6807" clip-path="url(#clipPath2)" stroke="none"> -- code comes here</text>
<text x="3640.3057" xml:space="preserve" y="3044.6494" clip-path="url(#clipPath2)" stroke="none"> end</text>
<text x="3640.3057" xml:space="preserve" y="3058.6182" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3640.3057" xml:space="preserve" y="3072.5869" clip-path="url(#clipPath2)" stroke="none"> class.fct = function(self,x,y)</text>
<text x="3640.3057" xml:space="preserve" y="3086.5557" clip-path="url(#clipPath2)" stroke="none"> -- code comes here</text>
<text x="3640.3057" xml:space="preserve" y="3100.5244" clip-path="url(#clipPath2)" stroke="none"> end</text>
<rect x="3633.3056" y="2803.0108" clip-path="url(#clipPath2)" fill="none" width="435.8574" rx="4" ry="4" height="307.3438"/>
<path fill="none" d="M4148.7139 3136.2278 L4090.9243 3099.2639" clip-path="url(#clipPath2)"/>
<path d="M4084.1851 3094.9534 L4091.5999 3105.6313 L4091.7668 3099.8027 L4096.9883 3097.2073 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3492.8428 3926.79 L3782.9419 3132.8535" clip-path="url(#clipPath2)"/>
<path d="M3785.6875 3125.3394 L3776.8728 3134.8945 L3782.5986 3133.7927 L3786.2654 3138.3264 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3810.9399 2766.5867 L3731.6343 2413.5654" clip-path="url(#clipPath2)"/>
<path d="M3729.8806 2405.76 L3727.6328 2418.5642 L3731.8535 2414.541 L3737.3894 2416.3721 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3618.2976 2964.8486 L2817.043 3029.8486" clip-path="url(#clipPath2)"/>
<path d="M2809.0691 3030.4954 L2821.4341 3034.509 L2818.0396 3029.7678 L2820.6257 3024.5417 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3721.453" y="4052.1267" clip-path="url(#clipPath2)" width="483.8691" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="3721.453" y="4052.1267" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="483.8691" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="4166.0859" xml:space="preserve" y="4068.05" clip-path="url(#clipPath2)" stroke="none">class</text>
<rect x="3721.453" y="4052.1267" clip-path="url(#clipPath2)" fill="none" width="483.8691" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3736.453" y="4088.5876" clip-path="url(#clipPath2)" width="453.8691" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3743.4531" xml:space="preserve" y="4107.7422" clip-path="url(#clipPath2)" stroke="none">A data structure of related values, especially a constructor and methods.</text>
<rect x="3736.453" y="4088.5876" clip-path="url(#clipPath2)" fill="none" width="453.8691" rx="4" ry="4" height="30"/>
<path fill="none" d="M3873.7996 3125.3345 L3963.6519 4044.1843" clip-path="url(#clipPath2)"/>
<path d="M3964.4304 4052.1462 L3968.2388 4039.7166 L3963.5544 4043.189 L3958.2864 4040.6897 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4061.302 4133.5913 L4117.791 4157.0918" clip-path="url(#clipPath2)"/>
<path d="M4125.1772 4160.1646 L4116.0181 4150.939 L4116.8677 4156.7075 L4112.1772 4160.1719 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3954.3833 4052.1514 L3864.5347 3133.3408" clip-path="url(#clipPath2)"/>
<path d="M3863.7561 3125.3789 L3859.9478 3137.8086 L3864.6321 3134.3362 L3869.9001 3136.8354 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3308.8883" y="3538.3836" clip-path="url(#clipPath2)" width="425.2109" rx="4" ry="4" height="107.3672" stroke="none"/>
<rect x="3308.8883" y="3538.3836" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="425.2109" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3646.3252" xml:space="preserve" y="3554.3069" clip-path="url(#clipPath2)" stroke="none">constructor</text>
<rect x="3308.8883" y="3538.3836" clip-path="url(#clipPath2)" fill="none" width="425.2109" stroke-dasharray="6,2" rx="4" ry="4" height="107.3672"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3323.8883" y="3574.8446" clip-path="url(#clipPath2)" width="395.2109" rx="4" ry="4" height="55.9062" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3330.8882" xml:space="preserve" y="3592.9832" clip-path="url(#clipPath2)" stroke="none">1. A table literal.</text>
<text x="3330.8882" xml:space="preserve" y="3606.9519" clip-path="url(#clipPath2)" stroke="none">2. A function in a class that is not itself a method, but returns a</text>
<text x="3330.8882" xml:space="preserve" y="3620.9207" clip-path="url(#clipPath2)" stroke="none">new object of the class.</text>
<rect x="3323.8883" y="3574.8446" clip-path="url(#clipPath2)" fill="none" width="395.2109" rx="4" ry="4" height="55.9062"/>
<path fill="none" d="M3920.7732 4052.1201 L3567.488 3651.7485" clip-path="url(#clipPath2)"/>
<path d="M3562.1948 3645.75 L3566.3855 3658.0559 L3568.1497 3652.4983 L3573.8838 3651.4395 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3529.8494 3538.3643 L3704.8384 2413.6699" clip-path="url(#clipPath2)"/>
<path d="M3706.0684 2405.7651 L3699.2827 2416.8538 L3704.6846 2414.6582 L3709.1638 2418.3911 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3575.55 3645.7712 L3928.8132 4046.1177" clip-path="url(#clipPath2)"/>
<path d="M3934.1064 4052.1162 L3929.9158 4039.8103 L3928.1516 4045.3679 L3922.4175 4046.4268 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3548.885 3538.3953 L3756.0479 3132.4668" clip-path="url(#clipPath2)"/>
<path d="M3759.6843 3125.3411 L3749.7759 3133.7568 L3755.5933 3133.3574 L3758.6831 3138.3025 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="4427.2671" y="3980.8708" clip-path="url(#clipPath2)" width="464.6152" rx="4" ry="4" height="149.2734" stroke="none"/>
<rect x="4427.2671" y="3980.8708" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="464.6152" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="4846.9111" xml:space="preserve" y="3996.7942" clip-path="url(#clipPath2)" stroke="none">literal</text>
<rect x="4427.2671" y="3980.8708" clip-path="url(#clipPath2)" fill="none" width="464.6152" stroke-dasharray="6,2" rx="4" ry="4" height="149.2734"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="4442.2671" y="4017.3317" clip-path="url(#clipPath2)" width="434.6152" rx="4" ry="4" height="97.8125" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="4449.2671" xml:space="preserve" y="4035.4705" clip-path="url(#clipPath2)" stroke="none">An expression that defines a constant of type string, number or table.</text>
<text x="4449.2671" xml:space="preserve" y="4049.4392" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4449.2671" xml:space="preserve" y="4063.408" clip-path="url(#clipPath2)" stroke="none"> 1.3475e4 -- floating-point literal</text>
<text x="4449.2671" xml:space="preserve" y="4077.3767" clip-path="url(#clipPath2)" stroke="none"> 12346 -- integer literal</text>
<text x="4449.2671" xml:space="preserve" y="4091.3455" clip-path="url(#clipPath2)" stroke="none"> "the quick brown fox" -- string literal</text>
<text x="4449.2671" xml:space="preserve" y="4105.314" clip-path="url(#clipPath2)" stroke="none"> {'Jock','Bill',name='Friends'} -- table literal</text>
<rect x="4442.2671" y="4017.3317" clip-path="url(#clipPath2)" fill="none" width="434.6152" rx="4" ry="4" height="97.8125"/>
<path fill="none" d="M3653.2998 3645.7402 L4468.8628 3977.8474" clip-path="url(#clipPath2)"/>
<path d="M4476.272 3980.8643 L4467.0435 3971.708 L4467.9365 3977.4702 L4463.2725 3980.9697 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4427.2319 4051.4082 L3710.4927 4038.7625" clip-path="url(#clipPath2)"/>
<path d="M3702.4939 4038.6213 L3714.4038 4043.8323 L3711.4924 4038.78 L3714.5803 4033.8337 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="5223.5882" y="3996.3227" clip-path="url(#clipPath2)" width="242.457" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="5223.5882" y="3996.3227" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="242.457" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="5398.8379" xml:space="preserve" y="4012.2461" clip-path="url(#clipPath2)" stroke="none">constant</text>
<rect x="5223.5882" y="3996.3227" clip-path="url(#clipPath2)" fill="none" width="242.457" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="5238.5882" y="4032.7837" clip-path="url(#clipPath2)" width="212.457" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="5245.5884" xml:space="preserve" y="4051.938" clip-path="url(#clipPath2)" stroke="none">An anonymous immutable value.</text>
<rect x="5238.5882" y="4032.7837" clip-path="url(#clipPath2)" fill="none" width="212.457" rx="4" ry="4" height="30"/>
<path fill="none" d="M4891.9062 4049.2505 L5215.603 4040.533" clip-path="url(#clipPath2)"/>
<path d="M5223.6001 4040.3176 L5211.4697 4035.6423 L5214.6035 4040.5598 L5211.7393 4045.6389 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="4498.6531" y="3442.8842" clip-path="url(#clipPath2)" width="452.5859" rx="4" ry="4" height="163.2422" stroke="none"/>
<rect x="4498.6531" y="3442.8842" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="452.5859" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="4887.1299" xml:space="preserve" y="3458.8076" clip-path="url(#clipPath2)" stroke="none">mutable</text>
<rect x="4498.6531" y="3442.8842" clip-path="url(#clipPath2)" fill="none" width="452.5859" stroke-dasharray="6,2" rx="4" ry="4" height="163.2422"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="4513.6531" y="3479.3452" clip-path="url(#clipPath2)" width="422.5859" rx="4" ry="4" height="111.7812" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="4520.6533" xml:space="preserve" y="3497.4839" clip-path="url(#clipPath2)" stroke="none">Capable of being changed during the running of a program.</text>
<text x="4520.6533" xml:space="preserve" y="3511.4526" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4520.6533" xml:space="preserve" y="3525.4214" clip-path="url(#clipPath2)" stroke="none">Values of type nil, boolean, number and string are immutable. </text>
<text x="4520.6533" xml:space="preserve" y="3539.3901" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4520.6533" xml:space="preserve" y="3553.3589" clip-path="url(#clipPath2)" stroke="none">Values of type coroutine, table and userdata are mutable. </text>
<text x="4520.6533" xml:space="preserve" y="3567.3276" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4520.6533" xml:space="preserve" y="3581.2964" clip-path="url(#clipPath2)" stroke="none">Values of type function are immutable except via the debug library.</text>
<rect x="4513.6531" y="3479.3452" clip-path="url(#clipPath2)" fill="none" width="422.5859" rx="4" ry="4" height="111.7812"/>
<path fill="none" d="M5295.5947 3996.3535 L4829.8535 3611.2493" clip-path="url(#clipPath2)"/>
<path d="M4823.688 3606.1514 L4829.75 3617.6514 L4830.624 3611.8865 L4836.1221 3609.9446 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4498.6553 3512.3777 L3249.875 3445.4514" clip-path="url(#clipPath2)"/>
<path d="M3241.8865 3445.0234 L3253.6018 3450.6582 L3250.8735 3445.5049 L3254.1367 3440.6726 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4498.6631 3474.7705 L3608.9468 3279.2195" clip-path="url(#clipPath2)"/>
<path d="M3601.1333 3277.5022 L3611.7803 3284.9617 L3609.9236 3279.4341 L3613.9268 3275.1946 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4521.3687 3606.1252 L3709.9363 3931.4512" clip-path="url(#clipPath2)"/>
<path d="M3702.511 3934.4285 L3715.5098 3934.6035 L3710.8645 3931.0791 L3711.7883 3925.3218 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4606.5933 3442.8855 L4506.4634 3373.8325" clip-path="url(#clipPath2)"/>
<path d="M4499.8774 3369.2908 L4506.9175 3380.2195 L4507.2866 3374.4001 L4512.5947 3371.9871 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4655.2539 3442.9185 L3774.4771 2411.814" clip-path="url(#clipPath2)"/>
<path d="M3769.281 2405.7312 L3773.2734 2418.103 L3775.1267 2412.5745 L3780.877 2411.6079 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="5785.2435" y="4677.85" clip-path="url(#clipPath2)" width="380.2344" rx="4" ry="4" height="135.3047" stroke="none"/>
<rect x="5785.2435" y="4677.85" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="380.2344" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="6103.5073" xml:space="preserve" y="4693.7734" clip-path="url(#clipPath2)" stroke="none">boolean</text>
<rect x="5785.2435" y="4677.85" clip-path="url(#clipPath2)" fill="none" width="380.2344" stroke-dasharray="6,2" rx="4" ry="4" height="135.3047"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="5800.2435" y="4714.311" clip-path="url(#clipPath2)" width="350.2344" rx="4" ry="4" height="83.8438" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="5807.2437" xml:space="preserve" y="4732.4497" clip-path="url(#clipPath2)" stroke="none">One of the eight types of Lua.</text>
<text x="5807.2437" xml:space="preserve" y="4746.4185" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5807.2437" xml:space="preserve" y="4760.3872" clip-path="url(#clipPath2)" stroke="none">A boolean value can only be "true" or "false".</text>
<text x="5807.2437" xml:space="preserve" y="4774.356" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5807.2437" xml:space="preserve" y="4788.3247" clip-path="url(#clipPath2)" stroke="none">The result of a comparison operation is always boolean.</text>
<rect x="5800.2435" y="4714.311" clip-path="url(#clipPath2)" fill="none" width="350.2344" rx="4" ry="4" height="83.8438"/>
<path fill="none" d="M4808.5347 3606.1274 L5900.3779 4672.2837" clip-path="url(#clipPath2)"/>
<path d="M5906.1016 4677.873 L5901.0093 4665.9116 L5899.6626 4671.585 L5894.0229 4673.0664 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="6279.3333" y="5717.9359" clip-path="url(#clipPath2)" width="463.1738" rx="4" ry="4" height="274.9922" stroke="none"/>
<rect x="6279.3333" y="5717.9359" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="463.1738" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="6674.3623" xml:space="preserve" y="5733.8594" clip-path="url(#clipPath2)" stroke="none">compare</text>
<rect x="6279.3333" y="5717.9359" clip-path="url(#clipPath2)" fill="none" width="463.1738" stroke-dasharray="6,2" rx="4" ry="4" height="274.9922"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="6294.3333" y="5754.3968" clip-path="url(#clipPath2)" width="433.1738" rx="4" ry="4" height="223.5312" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="6301.3335" xml:space="preserve" y="5772.5356" clip-path="url(#clipPath2)" stroke="none">To determine whether a specified relation between two values exists.</text>
<text x="6301.3335" xml:space="preserve" y="5786.5044" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="6301.3335" xml:space="preserve" y="5800.4731" clip-path="url(#clipPath2)" stroke="none">Any two values can be compared for equality or inequality. </text>
<text x="6301.3335" xml:space="preserve" y="5814.4419" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="6301.3335" xml:space="preserve" y="5828.4106" clip-path="url(#clipPath2)" stroke="none">Two strings or two numbers can be compared for order. </text>
<text x="6301.3335" xml:space="preserve" y="5842.3794" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="6301.3335" xml:space="preserve" y="5856.3481" clip-path="url(#clipPath2)" stroke="none">Any other comparison is only possible with the aid of a metamethod.</text>
<text x="6301.3335" xml:space="preserve" y="5870.3169" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="6301.3335" xml:space="preserve" y="5884.2856" clip-path="url(#clipPath2)" stroke="none">Comparison operations have a higher priority than logical operations</text>
<text x="6301.3335" xml:space="preserve" y="5898.2544" clip-path="url(#clipPath2)" stroke="none">and parentheses are seldom needed.</text>
<text x="6301.3335" xml:space="preserve" y="5912.2231" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="6301.3335" xml:space="preserve" y="5926.1919" clip-path="url(#clipPath2)" stroke="none">The result of a comparison operation is a boolean.</text>
<text x="6301.3335" xml:space="preserve" y="5940.1606" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="6301.3335" xml:space="preserve" y="5954.1294" clip-path="url(#clipPath2)" stroke="none"> abc ~= nil -- True if the value of abc (of whatever type) is not nil.</text>
<text x="6301.3335" xml:space="preserve" y="5968.0981" clip-path="url(#clipPath2)" stroke="none"> 0&lt;x and x&lt;=10 -- True if x is in the range 1 to 10.</text>
<rect x="6294.3333" y="5754.3968" clip-path="url(#clipPath2)" fill="none" width="433.1738" rx="4" ry="4" height="223.5312"/>
<path fill="none" d="M6013.5488 4813.1406 L6446.6548 5710.7383" clip-path="url(#clipPath2)"/>
<path d="M6450.1313 5717.9434 L6449.4194 5704.9629 L6446.2202 5709.8374 L6440.4131 5709.3086 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M6439.0283 5717.9438 L6005.9194 4820.3403" clip-path="url(#clipPath2)"/>
<path d="M6002.4429 4813.1353 L6003.1548 4826.1157 L6006.354 4821.2412 L6012.1611 4821.77 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="7133.9353" y="6516.2828" clip-path="url(#clipPath2)" width="465.9336" rx="4" ry="4" height="205.1484" stroke="none"/>
<rect x="7133.9353" y="6516.2828" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="465.9336" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="7501.0278" xml:space="preserve" y="6532.2061" clip-path="url(#clipPath2)" stroke="none">metamethod</text>
<rect x="7133.9353" y="6516.2828" clip-path="url(#clipPath2)" fill="none" width="465.9336" stroke-dasharray="6,2" rx="4" ry="4" height="205.1484"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="7148.9353" y="6552.7437" clip-path="url(#clipPath2)" width="435.9336" rx="4" ry="4" height="153.6875" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="7155.9351" xml:space="preserve" y="6570.8823" clip-path="url(#clipPath2)" stroke="none">A user-supplied function that is called to perform an operation,</text>
<text x="7155.9351" xml:space="preserve" y="6584.8511" clip-path="url(#clipPath2)" stroke="none">bypassing the default action, usually because the operation would</text>
<text x="7155.9351" xml:space="preserve" y="6598.8198" clip-path="url(#clipPath2)" stroke="none">otherwise be undefined, but also when a raw operation is to be</text>
<text x="7155.9351" xml:space="preserve" y="6612.7886" clip-path="url(#clipPath2)" stroke="none">supplanted by a customized one.</text>
<text x="7155.9351" xml:space="preserve" y="6626.7573" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="7155.9351" xml:space="preserve" y="6640.7261" clip-path="url(#clipPath2)" stroke="none">Metamethods are kept in a metatable.</text>
<text x="7155.9351" xml:space="preserve" y="6654.6948" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="7155.9351" xml:space="preserve" y="6668.6636" clip-path="url(#clipPath2)" stroke="none">Metamethods can be used (abused?) to customize Lua almost beyond</text>
<text x="7155.9351" xml:space="preserve" y="6682.6323" clip-path="url(#clipPath2)" stroke="none">recognition. The subject is too advanced for further explanation in</text>
<text x="7155.9351" xml:space="preserve" y="6696.6011" clip-path="url(#clipPath2)" stroke="none">this Glossary.</text>
<rect x="7148.9353" y="6552.7437" clip-path="url(#clipPath2)" fill="none" width="435.9336" rx="4" ry="4" height="153.6875"/>
<path fill="none" d="M6665.0688 5992.9126 L7245.937 6510.9717" clip-path="url(#clipPath2)"/>
<path d="M7251.9072 6516.2964 L7246.2798 6504.5776 L7245.1904 6510.3057 L7239.6235 6512.0405 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="6539.3214" y="5152.5297" clip-path="url(#clipPath2)" width="465.3945" rx="4" ry="4" height="163.2422" stroke="none"/>
<rect x="6539.3214" y="5152.5297" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="465.3945" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="6930.6968" xml:space="preserve" y="5168.4531" clip-path="url(#clipPath2)" stroke="none">operation</text>
<rect x="6539.3214" y="5152.5297" clip-path="url(#clipPath2)" fill="none" width="465.3945" stroke-dasharray="6,2" rx="4" ry="4" height="163.2422"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="6554.3214" y="5188.9906" clip-path="url(#clipPath2)" width="435.3945" rx="4" ry="4" height="111.7812" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="6561.3213" xml:space="preserve" y="5207.1294" clip-path="url(#clipPath2)" stroke="none">A basic computing task like addition, multiplication, concatenation</text>
<text x="6561.3213" xml:space="preserve" y="5221.0981" clip-path="url(#clipPath2)" stroke="none">etc., involving one or two values, called "operands", and expressed in</text>
<text x="6561.3213" xml:space="preserve" y="5235.0669" clip-path="url(#clipPath2)" stroke="none">Lua by putting an "operator" in front of a single value, or between the</text>
<text x="6561.3213" xml:space="preserve" y="5249.0356" clip-path="url(#clipPath2)" stroke="none">two values.</text>
<text x="6561.3213" xml:space="preserve" y="5263.0044" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="6561.3213" xml:space="preserve" y="5276.9731" clip-path="url(#clipPath2)" stroke="none"> n = #tbl -- '#' is the length operator</text>
<text x="6561.3213" xml:space="preserve" y="5290.9419" clip-path="url(#clipPath2)" stroke="none"> s = name .. id -- '..' is the concatenation operator</text>
<rect x="6554.3214" y="5188.9906" clip-path="url(#clipPath2)" fill="none" width="435.3945" rx="4" ry="4" height="111.7812"/>
<path fill="none" d="M7322.8413 6516.2974 L6810.2583 5323.1611" clip-path="url(#clipPath2)"/>
<path d="M6807.1006 5315.8105 L6807.2432 5328.8096 L6810.6533 5324.0796 L6816.4312 5324.8623 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M6085.6646 4813.1597 L6632.1094 5148.334" clip-path="url(#clipPath2)"/>
<path d="M6638.9287 5152.5171 L6631.3145 5141.9805 L6631.2568 5147.811 L6626.0854 5150.5044 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="7859.3647" y="7501.3603" clip-path="url(#clipPath2)" width="337.0742" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="7859.3647" y="7501.3603" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="337.0742" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="8166.812" xml:space="preserve" y="7517.2837" clip-path="url(#clipPath2)" stroke="none">raw</text>
<rect x="7859.3647" y="7501.3603" clip-path="url(#clipPath2)" fill="none" width="337.0742" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="7874.3647" y="7537.8212" clip-path="url(#clipPath2)" width="307.0742" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="7881.3647" xml:space="preserve" y="7556.9756" clip-path="url(#clipPath2)" stroke="none">As originally defined, i.e. ignoring metamethods.</text>
<rect x="7874.3647" y="7537.8212" clip-path="url(#clipPath2)" fill="none" width="307.0742" rx="4" ry="4" height="30"/>
<path fill="none" d="M7440.3486 6721.4419 L7994.0713 7494.8394" clip-path="url(#clipPath2)"/>
<path d="M7998.7285 7501.3438 L7995.8076 7488.6763 L7993.4888 7494.0264 L7987.6772 7494.4976 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="6819.1975" y="6127.8109" clip-path="url(#clipPath2)" width="357.8398" rx="4" ry="4" height="107.3672" stroke="none"/>
<rect x="6819.1975" y="6127.8109" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="357.8398" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="7120.9111" xml:space="preserve" y="6143.7344" clip-path="url(#clipPath2)" stroke="none">priority</text>
<rect x="6819.1975" y="6127.8109" clip-path="url(#clipPath2)" fill="none" width="357.8398" stroke-dasharray="6,2" rx="4" ry="4" height="107.3672"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="6834.1975" y="6164.2719" clip-path="url(#clipPath2)" width="327.8398" rx="4" ry="4" height="55.9062" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="6841.1973" xml:space="preserve" y="6182.4106" clip-path="url(#clipPath2)" stroke="none">The position of an operator in the precedence table.</text>
<text x="6841.1973" xml:space="preserve" y="6196.3794" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="6841.1973" xml:space="preserve" y="6210.3481" clip-path="url(#clipPath2)" stroke="none">Operators with higher priority are performed first.</text>
<rect x="6834.1975" y="6164.2719" clip-path="url(#clipPath2)" fill="none" width="327.8398" rx="4" ry="4" height="55.9062"/>
<path fill="none" d="M6716.3672 5992.9297 L6911.2295 6123.3438" clip-path="url(#clipPath2)"/>
<path d="M6917.8779 6127.793 L6910.686 6116.9639 L6910.3984 6122.7876 L6905.124 6125.2744 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M6985.3042 6127.8076 L6793.3569 5323.5581" clip-path="url(#clipPath2)"/>
<path d="M6791.5 5315.7764 L6789.4219 5328.6094 L6793.5889 5324.5308 L6799.1489 5326.2881 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="7242.5365" y="6002.9709" clip-path="url(#clipPath2)" width="245.4805" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="7242.5365" y="6002.9709" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="245.4805" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="7397.8921" xml:space="preserve" y="6018.894" clip-path="url(#clipPath2)" stroke="none">precedence</text>
<rect x="7242.5365" y="6002.9709" clip-path="url(#clipPath2)" fill="none" width="245.4805" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="7257.5365" y="6039.4318" clip-path="url(#clipPath2)" width="215.4805" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="7264.5366" xml:space="preserve" y="6058.5859" clip-path="url(#clipPath2)" stroke="none">A pecking order of Lua operators.</text>
<rect x="7257.5365" y="6039.4318" clip-path="url(#clipPath2)" fill="none" width="215.4805" rx="4" ry="4" height="30"/>
<path fill="none" d="M7141.1357 6127.8203 L7249.2456 6087.2471" clip-path="url(#clipPath2)"/>
<path d="M7256.7354 6084.436 L7243.7437 6083.9712 L7248.3091 6087.5981 L7247.2573 6093.3335 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M7335.4219 6002.9619 L6836.5645 5322.229" clip-path="url(#clipPath2)"/>
<path d="M6831.8354 5315.7764 L6834.8955 5328.4111 L6837.1553 5323.0356 L6842.9614 5322.5 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="7033.338" y="5438.7566" clip-path="url(#clipPath2)" width="472.5664" rx="4" ry="4" height="316.8984" stroke="none"/>
<rect x="7033.338" y="5438.7566" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="472.5664" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="7455.2642" xml:space="preserve" y="5454.6797" clip-path="url(#clipPath2)" stroke="none">logical</text>
<rect x="7033.338" y="5438.7566" clip-path="url(#clipPath2)" fill="none" width="472.5664" stroke-dasharray="6,2" rx="4" ry="4" height="316.8984"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="7048.338" y="5475.2175" clip-path="url(#clipPath2)" width="442.5664" rx="4" ry="4" height="265.4375" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="7055.3379" xml:space="preserve" y="5493.356" clip-path="url(#clipPath2)" stroke="none">The operations "and", "or" and "not" are known as "logical operations".</text>
<text x="7055.3379" xml:space="preserve" y="5507.3247" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="7055.3379" xml:space="preserve" y="5521.2935" clip-path="url(#clipPath2)" stroke="none">They operate on all values, not only on booleans. </text>
<text x="7055.3379" xml:space="preserve" y="5535.2622" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="7055.3379" xml:space="preserve" y="5549.231" clip-path="url(#clipPath2)" stroke="none">The result of "not" is boolean, but the result of the other operations</text>
<text x="7055.3379" xml:space="preserve" y="5563.1997" clip-path="url(#clipPath2)" stroke="none">is to select one of the operands.</text>
<text x="7055.3379" xml:space="preserve" y="5577.1685" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="7055.3379" xml:space="preserve" y="5591.1372" clip-path="url(#clipPath2)" stroke="none">Their action is determined by the truth of the first value.</text>
<text x="7055.3379" xml:space="preserve" y="5605.106" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="7055.3379" xml:space="preserve" y="5619.0747" clip-path="url(#clipPath2)" stroke="none"> a and b -- if a is false, then a (and don't evaluate b); else b</text>
<text x="7055.3379" xml:space="preserve" y="5633.0435" clip-path="url(#clipPath2)" stroke="none"> a or b -- if a is true, then a (and don't evaluate b); else b</text>
<text x="7055.3379" xml:space="preserve" y="5647.0122" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="7055.3379" xml:space="preserve" y="5660.981" clip-path="url(#clipPath2)" stroke="none">The point about evaluation is important. It can be used to avoid</text>
<text x="7055.3379" xml:space="preserve" y="5674.9497" clip-path="url(#clipPath2)" stroke="none">illegal operations.</text>
<text x="7055.3379" xml:space="preserve" y="5688.9185" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="7055.3379" xml:space="preserve" y="5702.8872" clip-path="url(#clipPath2)" stroke="none"> v = a.k -- an error if a is nil</text>
<text x="7055.3379" xml:space="preserve" y="5716.856" clip-path="url(#clipPath2)" stroke="none"> v = a and a.k -- nil if a is nil</text>
<text x="7055.3379" xml:space="preserve" y="5730.8247" clip-path="url(#clipPath2)" stroke="none"> </text>
<rect x="7048.338" y="5475.2175" clip-path="url(#clipPath2)" fill="none" width="442.5664" rx="4" ry="4" height="265.4375"/>
<path fill="none" d="M6742.5039 5776.6118 L7025.7393 5680.2119" clip-path="url(#clipPath2)"/>
<path d="M7033.3125 5677.6343 L7020.3413 5676.7676 L7024.7925 5680.5342 L7023.5635 5686.2339 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M7052.4365 5438.7461 L6890.3813 5320.5093" clip-path="url(#clipPath2)"/>
<path d="M6883.9189 5315.7939 L6890.6655 5326.9062 L6891.1895 5321.0986 L6896.5601 5318.8281 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M7033.4644 5441.8003 L6084.8252 4817.5366" clip-path="url(#clipPath2)"/>
<path d="M6078.1421 4813.1392 L6085.4185 4823.9121 L6085.6606 4818.0864 L6090.915 4815.5586 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="8137.4255" y="6245.7463" clip-path="url(#clipPath2)" width="416.9434" rx="4" ry="4" height="135.3047" stroke="none"/>
<rect x="8137.4255" y="6245.7463" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="416.9434" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="8515.4258" xml:space="preserve" y="6261.6694" clip-path="url(#clipPath2)" stroke="none">truth</text>
<rect x="8137.4255" y="6245.7463" clip-path="url(#clipPath2)" fill="none" width="416.9434" stroke-dasharray="6,2" rx="4" ry="4" height="135.3047"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="8152.4255" y="6282.2072" clip-path="url(#clipPath2)" width="386.9434" rx="4" ry="4" height="83.8438" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="8159.4253" xml:space="preserve" y="6300.3457" clip-path="url(#clipPath2)" stroke="none">The property whether a value counts as true or false in an "if"</text>
<text x="8159.4253" xml:space="preserve" y="6314.3145" clip-path="url(#clipPath2)" stroke="none">statement or a logical.</text>
<text x="8159.4253" xml:space="preserve" y="6328.2832" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="8159.4253" xml:space="preserve" y="6342.252" clip-path="url(#clipPath2)" stroke="none">"nil" and "false" count as "false", </text>
<text x="8159.4253" xml:space="preserve" y="6356.2207" clip-path="url(#clipPath2)" stroke="none">all other values (including 0 and NaN) count as "true".</text>
<rect x="8152.4255" y="6282.2072" clip-path="url(#clipPath2)" fill="none" width="386.9434" rx="4" ry="4" height="83.8438"/>
<path fill="none" d="M7505.8887 5748.4209 L8246.6133 6241.3257" clip-path="url(#clipPath2)"/>
<path d="M8253.2734 6245.7573 L8246.0527 6234.9473 L8245.7803 6240.7715 L8240.5127 6243.2725 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M8235.2207 6245.7568 L7505.3931 5760.103" clip-path="url(#clipPath2)"/>
<path d="M7498.7329 5755.6709 L7505.9531 5766.4814 L7506.2256 5760.6572 L7511.4932 5758.1562 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="5432.7385" y="5050.4466" clip-path="url(#clipPath2)" width="470.9785" rx="4" ry="4" height="135.3047" stroke="none"/>
<rect x="5432.7385" y="5050.4466" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="470.9785" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="5813.6875" xml:space="preserve" y="5066.3701" clip-path="url(#clipPath2)" stroke="none">parenthesis</text>
<rect x="5432.7385" y="5050.4466" clip-path="url(#clipPath2)" fill="none" width="470.9785" stroke-dasharray="6,2" rx="4" ry="4" height="135.3047"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="5447.7385" y="5086.9076" clip-path="url(#clipPath2)" width="440.9785" rx="4" ry="4" height="83.8438" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="5454.7388" xml:space="preserve" y="5105.0464" clip-path="url(#clipPath2)" stroke="none">A pair of delimiters with several uses.</text>
<text x="5454.7388" xml:space="preserve" y="5119.0151" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5454.7388" xml:space="preserve" y="5132.9839" clip-path="url(#clipPath2)" stroke="none">1. To delimit a list of parameters or arguments.</text>
<text x="5454.7388" xml:space="preserve" y="5146.9526" clip-path="url(#clipPath2)" stroke="none">2. To specify precedence of operations in a complicated expression.</text>
<text x="5454.7388" xml:space="preserve" y="5160.9214" clip-path="url(#clipPath2)" stroke="none">3. To adjust the number of return values in a function to 1. See vararg.</text>
<rect x="5447.7385" y="5086.9076" clip-path="url(#clipPath2)" fill="none" width="440.9785" rx="4" ry="4" height="83.8438"/>
<path fill="none" d="M6353.7642 5717.9248 L5751.5513 5191.0049" clip-path="url(#clipPath2)"/>
<path d="M5745.5308 5185.7368 L5751.269 5197.4019 L5752.3037 5191.6636 L5757.854 5189.876 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M5903.7197 5142.8584 L6531.3804 5208.8501" clip-path="url(#clipPath2)"/>
<path d="M6539.3364 5209.6865 L6527.9248 5203.4595 L6530.3857 5208.7456 L6526.8794 5213.4043 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="4016.0412" y="3614.3474" clip-path="url(#clipPath2)" width="458.7441" rx="4" ry="4" height="316.8984" stroke="none"/>
<rect x="4016.0412" y="3614.3474" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="458.7441" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="4423.6689" xml:space="preserve" y="3630.2708" clip-path="url(#clipPath2)" stroke="none">vararg</text>
<rect x="4016.0412" y="3614.3474" clip-path="url(#clipPath2)" fill="none" width="458.7441" stroke-dasharray="6,2" rx="4" ry="4" height="316.8984"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="4031.0412" y="3650.8084" clip-path="url(#clipPath2)" width="428.7441" rx="4" ry="4" height="265.4375" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="4038.0413" xml:space="preserve" y="3668.947" clip-path="url(#clipPath2)" stroke="none">A tuple of unspecified length, denoted by three dots.</text>
<text x="4038.0413" xml:space="preserve" y="3682.9158" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4038.0413" xml:space="preserve" y="3696.8845" clip-path="url(#clipPath2)" stroke="none">Mainly used in the parameter list of a function, where it must appear</text>
<text x="4038.0413" xml:space="preserve" y="3710.8533" clip-path="url(#clipPath2)" stroke="none">last.</text>
<text x="4038.0413" xml:space="preserve" y="3724.822" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4038.0413" xml:space="preserve" y="3738.7908" clip-path="url(#clipPath2)" stroke="none">Inside such a function, it is also available for use wherever a tuple</text>
<text x="4038.0413" xml:space="preserve" y="3752.7595" clip-path="url(#clipPath2)" stroke="none">could be used.</text>
<text x="4038.0413" xml:space="preserve" y="3766.7283" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4038.0413" xml:space="preserve" y="3780.697" clip-path="url(#clipPath2)" stroke="none"> function fct(z,...) -- typical vararg parameter list</text>
<text x="4038.0413" xml:space="preserve" y="3794.6658" clip-path="url(#clipPath2)" stroke="none"> local x,y = ... -- assign first two elements of the vararg</text>
<text x="4038.0413" xml:space="preserve" y="3808.6345" clip-path="url(#clipPath2)" stroke="none"> local p,q = select(4,...) -- assign elements 4 and 5 of the vararg</text>
<text x="4038.0413" xml:space="preserve" y="3822.6033" clip-path="url(#clipPath2)" stroke="none"> local t = table.pack(...) -- create an array containing the vararg</text>
<text x="4038.0413" xml:space="preserve" y="3836.572" clip-path="url(#clipPath2)" stroke="none"> local u = {...} -- the same, but u.n is not set</text>
<text x="4038.0413" xml:space="preserve" y="3850.5408" clip-path="url(#clipPath2)" stroke="none"> local s = 10+... -- add 10 to first element of vararg</text>
<text x="4038.0413" xml:space="preserve" y="3864.5095" clip-path="url(#clipPath2)" stroke="none"> print(...) -- print everything in the vararg</text>
<text x="4038.0413" xml:space="preserve" y="3878.4783" clip-path="url(#clipPath2)" stroke="none"> print((...)) -- print only the first element</text>
<text x="4038.0413" xml:space="preserve" y="3892.447" clip-path="url(#clipPath2)" stroke="none"> return z,20,... -- returns a new vararg</text>
<text x="4038.0413" xml:space="preserve" y="3906.4158" clip-path="url(#clipPath2)" stroke="none"> end</text>
<rect x="4031.0412" y="3650.8084" clip-path="url(#clipPath2)" fill="none" width="428.7441" rx="4" ry="4" height="265.4375"/>
<path fill="none" d="M5596.6919 5050.4604 L4418.7959 3936.7336" clip-path="url(#clipPath2)"/>
<path d="M4412.9829 3931.2373 L4418.2671 3943.115 L4419.5225 3937.4207 L4425.1377 3935.8486 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4016.0334 3672.5068 L2757.0288 3122.0425" clip-path="url(#clipPath2)"/>
<path d="M2749.6987 3118.8376 L2758.6907 3128.2261 L2757.9451 3122.4431 L2762.6968 3119.0635 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4186.7285 3614.377 L3741.7722 2413.2151" clip-path="url(#clipPath2)"/>
<path d="M3738.9932 2405.7134 L3738.4731 2418.7029 L3742.1196 2414.1528 L3747.8503 2415.229 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="2474.0771" y="3664.0332" clip-path="url(#clipPath2)" width="447.248" rx="4" ry="4" height="205.1484" stroke="none"/>
<rect x="2474.0771" y="3664.0332" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="447.248" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="2881.0195" xml:space="preserve" y="3679.9565" clip-path="url(#clipPath2)" stroke="none">tuple</text>
<rect x="2474.0771" y="3664.0332" clip-path="url(#clipPath2)" fill="none" width="447.248" stroke-dasharray="6,2" rx="4" ry="4" height="205.1484"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="2489.0771" y="3700.4941" clip-path="url(#clipPath2)" width="417.248" rx="4" ry="4" height="153.6875" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="2496.0771" xml:space="preserve" y="3718.6328" clip-path="url(#clipPath2)" stroke="none">The bare contents of an array, without delimiters.</text>
<text x="2496.0771" xml:space="preserve" y="3732.6016" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2496.0771" xml:space="preserve" y="3746.5703" clip-path="url(#clipPath2)" stroke="none"> {1,2,nil,4} -- an array</text>
<text x="2496.0771" xml:space="preserve" y="3760.5391" clip-path="url(#clipPath2)" stroke="none"> 1,2,nil,4 -- a tuple</text>
<text x="2496.0771" xml:space="preserve" y="3774.5078" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2496.0771" xml:space="preserve" y="3788.4766" clip-path="url(#clipPath2)" stroke="none">May appear in as a parameter list, an argument list, a return list,</text>
<text x="2496.0771" xml:space="preserve" y="3802.4453" clip-path="url(#clipPath2)" stroke="none">the right-hand side of an assignment, or inside a table constructor.</text>
<text x="2496.0771" xml:space="preserve" y="3816.4141" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2496.0771" xml:space="preserve" y="3830.3828" clip-path="url(#clipPath2)" stroke="none">A tuple is not a first-class value: it is several values, not thought</text>
<text x="2496.0771" xml:space="preserve" y="3844.3516" clip-path="url(#clipPath2)" stroke="none">of as comprising a whole.</text>
<rect x="2489.0771" y="3700.4941" clip-path="url(#clipPath2)" fill="none" width="417.248" rx="4" ry="4" height="153.6875"/>
<path fill="none" d="M4016.0054 3771.8792 L2929.3477 3767.5337" clip-path="url(#clipPath2)"/>
<path d="M2921.3477 3767.5017 L2933.3276 3772.5496 L2930.3477 3767.5376 L2933.3674 3762.5498 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2682.1199 3664.073 L2600.468 3126.7529" clip-path="url(#clipPath2)"/>
<path d="M2599.2661 3118.8438 L2596.1257 3131.4587 L2600.6182 3127.7417 L2606.0122 3129.9563 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2596.9939 3664.0254 L2179.9819 3239.25" clip-path="url(#clipPath2)"/>
<path d="M2174.3777 3233.5413 L2179.2163 3245.6072 L2180.6826 3239.9636 L2186.3523 3238.6018 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2921.3228 3719.2278 L3301.0947 3638.7639" clip-path="url(#clipPath2)"/>
<path d="M3308.9211 3637.106 L3296.1455 3634.7014 L3300.1165 3638.9712 L3298.218 3644.4844 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2482.6904 3664.033 L2445.4854 3646.2837" clip-path="url(#clipPath2)"/>
<path d="M2438.2649 3642.8391 L2446.9426 3652.5188 L2446.3879 3646.7144 L2451.2485 3643.4932 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="1189.1427" y="1873.3" clip-path="url(#clipPath2)" width="174.0664" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="1189.1427" y="1873.3" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="174.0664" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="1326.2579" xml:space="preserve" y="1889.2233" clip-path="url(#clipPath2)" stroke="none">local</text>
<rect x="1189.1427" y="1873.3" clip-path="url(#clipPath2)" fill="none" width="174.0664" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="1204.1427" y="1909.7609" clip-path="url(#clipPath2)" width="144.0664" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="1211.1427" xml:space="preserve" y="1928.9152" clip-path="url(#clipPath2)" stroke="none">Having limited scope.</text>
<rect x="1204.1427" y="1909.7609" clip-path="url(#clipPath2)" fill="none" width="144.0664" rx="4" ry="4" height="30"/>
<path fill="none" d="M1886.9358 1881.7933 L1371.2085 1909.0144" clip-path="url(#clipPath2)"/>
<path d="M1363.2196 1909.436 L1375.4664 1913.7966 L1372.2072 1908.9617 L1374.9395 1903.8105 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M1346.6292 1873.2991 L1392.8553 1846.5743" clip-path="url(#clipPath2)"/>
<path d="M1399.7811 1842.5702 L1386.8898 1844.2477 L1391.9896 1847.0748 L1391.8949 1852.905 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="1547.6323" y="3289.7221" clip-path="url(#clipPath2)" width="133.7598" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="1547.6323" y="3289.7221" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="133.7598" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="1625.2222" xml:space="preserve" y="3305.6455" clip-path="url(#clipPath2)" stroke="none">pass to</text>
<rect x="1547.6323" y="3289.7221" clip-path="url(#clipPath2)" fill="none" width="133.7598" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="1562.6323" y="3326.183" clip-path="url(#clipPath2)" width="103.7598" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="1569.6323" xml:space="preserve" y="3345.3374" clip-path="url(#clipPath2)" stroke="none">See Argument.</text>
<rect x="1562.6323" y="3326.183" clip-path="url(#clipPath2)" fill="none" width="103.7598" rx="4" ry="4" height="30"/>
<path fill="none" d="M2368.0251 3112.2468 L1689.113 3308.8494" clip-path="url(#clipPath2)"/>
<path d="M1681.4287 3311.0745 L1694.3459 3312.5396 L1690.0736 3308.5713 L1691.5645 3302.9341 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M1681.3868 3303.1589 L1844.5927 3236.5498" clip-path="url(#clipPath2)"/>
<path d="M1851.9995 3233.5269 L1838.9999 3233.4319 L1843.6667 3236.9277 L1842.7786 3242.6907 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="4099.9259" y="4610.6189" clip-path="url(#clipPath2)" width="431.1113" rx="4" ry="4" height="191.1797" stroke="none"/>
<rect x="4099.9259" y="4610.6189" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="431.1113" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="4470.4946" xml:space="preserve" y="4626.5425" clip-path="url(#clipPath2)" stroke="none">number</text>
<rect x="4099.9259" y="4610.6189" clip-path="url(#clipPath2)" fill="none" width="431.1113" stroke-dasharray="6,2" rx="4" ry="4" height="191.1797"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="4114.9259" y="4647.0798" clip-path="url(#clipPath2)" width="401.1113" rx="4" ry="4" height="139.7188" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="4121.9258" xml:space="preserve" y="4665.2188" clip-path="url(#clipPath2)" stroke="none">One of the eight types of Lua.</text>
<text x="4121.9258" xml:space="preserve" y="4679.1875" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4121.9258" xml:space="preserve" y="4693.1562" clip-path="url(#clipPath2)" stroke="none">The possible values can be integers, floating-point numbers, Inf,</text>
<text x="4121.9258" xml:space="preserve" y="4707.125" clip-path="url(#clipPath2)" stroke="none">-Inf, and NaN.</text>
<text x="4121.9258" xml:space="preserve" y="4721.0938" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4121.9258" xml:space="preserve" y="4735.0625" clip-path="url(#clipPath2)" stroke="none"> n = 1 -- integer</text>
<text x="4121.9258" xml:space="preserve" y="4749.0312" clip-path="url(#clipPath2)" stroke="none"> x = 1.0 -- floating-point</text>
<text x="4121.9258" xml:space="preserve" y="4763" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4121.9258" xml:space="preserve" y="4776.9688" clip-path="url(#clipPath2)" stroke="none">See integer, floating-point, subtype.</text>
<rect x="4114.9259" y="4647.0798" clip-path="url(#clipPath2)" fill="none" width="401.1113" rx="4" ry="4" height="139.7188"/>
<path fill="none" d="M4696.668 3606.1152 L4351.2197 4603.0698" clip-path="url(#clipPath2)"/>
<path d="M4348.6006 4610.6289 L4357.2539 4600.9272 L4351.5474 4602.125 L4347.8047 4597.6533 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4620.1123 4130.1333 L4369.7764 4603.5342" clip-path="url(#clipPath2)"/>
<path d="M4366.0366 4610.6064 L4376.0664 4602.3354 L4370.2437 4602.6504 L4367.2261 4597.6611 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3904.2195" y="5354.6534" clip-path="url(#clipPath2)" width="497.5684" rx="4" ry="4" height="121.3359" stroke="none"/>
<rect x="3904.2195" y="5354.6534" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="497.5684" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="4346.0869" xml:space="preserve" y="5370.5767" clip-path="url(#clipPath2)" stroke="none">integer</text>
<rect x="3904.2195" y="5354.6534" clip-path="url(#clipPath2)" fill="none" width="497.5684" stroke-dasharray="6,2" rx="4" ry="4" height="121.3359"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3919.2195" y="5391.1144" clip-path="url(#clipPath2)" width="467.5684" rx="4" ry="4" height="69.875" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3926.2195" xml:space="preserve" y="5409.2529" clip-path="url(#clipPath2)" stroke="none">A subtype of number that can represent integers up to about 9e18 exactly.</text>
<text x="3926.2195" xml:space="preserve" y="5423.2217" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3926.2195" xml:space="preserve" y="5437.1904" clip-path="url(#clipPath2)" stroke="none">The three extra digits come at the expense of not being able to</text>
<text x="3926.2195" xml:space="preserve" y="5451.1592" clip-path="url(#clipPath2)" stroke="none">represent anything except integers.</text>
<rect x="3919.2195" y="5391.1144" clip-path="url(#clipPath2)" fill="none" width="467.5684" rx="4" ry="4" height="69.875"/>
<path fill="none" d="M4298.7065 4801.8076 L4173.8208 5346.8545" clip-path="url(#clipPath2)"/>
<path d="M4172.0342 5354.6523 L4179.5879 5344.0723 L4174.0439 5345.8799 L4169.8403 5341.8389 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4161.7676 5354.6851 L4286.6641 4809.5918" clip-path="url(#clipPath2)"/>
<path d="M4288.4507 4801.7939 L4280.897 4812.374 L4286.4409 4810.5664 L4290.6445 4814.6074 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3309.8301" y="4807.2336" clip-path="url(#clipPath2)" width="469.6016" rx="4" ry="4" height="135.3047" stroke="none"/>
<rect x="3309.8301" y="4807.2336" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="469.6016" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3676.8701" xml:space="preserve" y="4823.1572" clip-path="url(#clipPath2)" stroke="none">floating-point</text>
<rect x="3309.8301" y="4807.2336" clip-path="url(#clipPath2)" fill="none" width="469.6016" stroke-dasharray="6,2" rx="4" ry="4" height="135.3047"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3324.8301" y="4843.6946" clip-path="url(#clipPath2)" width="439.6016" rx="4" ry="4" height="83.8438" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3331.8301" xml:space="preserve" y="4861.8335" clip-path="url(#clipPath2)" stroke="none">A subtype of number that represents a number as a "mantissa" (i.e. a</text>
<text x="3331.8301" xml:space="preserve" y="4875.8022" clip-path="url(#clipPath2)" stroke="none">number between 0.5 and 1) multiplied by a positive or negative power</text>
<text x="3331.8301" xml:space="preserve" y="4889.771" clip-path="url(#clipPath2)" stroke="none">of 2.</text>
<text x="3331.8301" xml:space="preserve" y="4903.7397" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3331.8301" xml:space="preserve" y="4917.7085" clip-path="url(#clipPath2)" stroke="none">Integers up to about 9e15 can be represented exactly.</text>
<rect x="3324.8301" y="4843.6946" clip-path="url(#clipPath2)" fill="none" width="439.6016" rx="4" ry="4" height="83.8438"/>
<path fill="none" d="M4099.8896 4758.5029 L3787.2798 4826.9077" clip-path="url(#clipPath2)"/>
<path d="M3779.4648 4828.6182 L3792.2563 4830.937 L3788.2568 4826.6938 L3790.1184 4821.168 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3779.4524 4818.3843 L4092.0967 4749.9717" clip-path="url(#clipPath2)"/>
<path d="M4099.9116 4748.2612 L4087.1201 4745.9424 L4091.1196 4750.1855 L4089.2581 4755.7114 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3597.4492" y="4465.8526" clip-path="url(#clipPath2)" width="453.8398" rx="4" ry="4" height="177.2109" stroke="none"/>
<rect x="3597.4492" y="4465.8526" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="453.8398" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3988.9375" xml:space="preserve" y="4481.7759" clip-path="url(#clipPath2)" stroke="none">subtype</text>
<rect x="3597.4492" y="4465.8526" clip-path="url(#clipPath2)" fill="none" width="453.8398" stroke-dasharray="6,2" rx="4" ry="4" height="177.2109"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3612.4492" y="4502.3135" clip-path="url(#clipPath2)" width="423.8398" rx="4" ry="4" height="125.75" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3619.4492" xml:space="preserve" y="4520.4521" clip-path="url(#clipPath2)" stroke="none">A further classification of values of a specific type. </text>
<text x="3619.4492" xml:space="preserve" y="4534.4209" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3619.4492" xml:space="preserve" y="4548.3896" clip-path="url(#clipPath2)" stroke="none">The type number has subtypes integer and float. See also userdata.</text>
<text x="3619.4492" xml:space="preserve" y="4562.3584" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3619.4492" xml:space="preserve" y="4576.3271" clip-path="url(#clipPath2)" stroke="none"> type(1) --&gt; number</text>
<text x="3619.4492" xml:space="preserve" y="4590.2959" clip-path="url(#clipPath2)" stroke="none"> type(1.0) --&gt; number</text>
<text x="3619.4492" xml:space="preserve" y="4604.2646" clip-path="url(#clipPath2)" stroke="none"> math.type(1) --&gt; integer</text>
<text x="3619.4492" xml:space="preserve" y="4618.2334" clip-path="url(#clipPath2)" stroke="none"> math.type(1.0) --&gt; float</text>
<rect x="3612.4492" y="4502.3135" clip-path="url(#clipPath2)" fill="none" width="423.8398" rx="4" ry="4" height="125.75"/>
<path fill="none" d="M4099.9531 4644.8452 L4058.9285 4632.1685" clip-path="url(#clipPath2)"/>
<path d="M4051.2852 4629.8066 L4061.2742 4638.1265 L4059.884 4632.4639 L4064.2263 4628.5723 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4290.9033 3369.3376 L3867.126 4458.3687" clip-path="url(#clipPath2)"/>
<path d="M3864.2249 4465.8242 L3873.2361 4456.4541 L3867.4885 4457.437 L3863.9167 4452.8276 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3756.0605 4465.8706 L3006.9028 3494.3091" clip-path="url(#clipPath2)"/>
<path d="M3002.0178 3487.9739 L3005.386 3500.53 L3007.5134 3495.1011 L3013.3049 3494.4236 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4051.3108 4619.3481 L4092.2642 4632.0029" clip-path="url(#clipPath2)"/>
<path d="M4099.9077 4634.3643 L4089.9182 4626.0449 L4091.3086 4631.7075 L4086.9666 4635.5996 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3858.1975 4643.0718 L4126.9839 5347.1621" clip-path="url(#clipPath2)"/>
<path d="M4129.8369 5354.6362 L4130.2285 5341.6421 L4126.627 5346.228 L4120.8862 5345.2085 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3747.0076 4643.0723 L3608.9597 4801.2002" clip-path="url(#clipPath2)"/>
<path d="M3603.6985 4807.2266 L3615.3569 4801.4751 L3609.6174 4800.4468 L3607.824 4794.8984 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3853.4912 4465.8325 L4277.2725 3376.7915" clip-path="url(#clipPath2)"/>
<path d="M4280.1733 3369.3359 L4271.1621 3378.7063 L4276.9097 3377.7234 L4280.4819 3382.3323 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="5152.8944" y="2806.2359" clip-path="url(#clipPath2)" width="452.4512" rx="4" ry="4" height="288.9609" stroke="none"/>
<rect x="5152.8944" y="2806.2359" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="452.4512" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="5560.2866" xml:space="preserve" y="2822.1592" clip-path="url(#clipPath2)" stroke="none">string</text>
<rect x="5152.8944" y="2806.2359" clip-path="url(#clipPath2)" fill="none" width="452.4512" stroke-dasharray="6,2" rx="4" ry="4" height="288.9609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="5167.8944" y="2842.6969" clip-path="url(#clipPath2)" width="422.4512" rx="4" ry="4" height="237.5" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="5174.8945" xml:space="preserve" y="2860.8354" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5174.8945" xml:space="preserve" y="2874.8042" clip-path="url(#clipPath2)" stroke="none">1. A sequence of bytes.</text>
<text x="5174.8945" xml:space="preserve" y="2888.7729" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5174.8945" xml:space="preserve" y="2902.7417" clip-path="url(#clipPath2)" stroke="none">One of the eight types of Lua. Strings can be delimited in an infinite</text>
<text x="5174.8945" xml:space="preserve" y="2916.7104" clip-path="url(#clipPath2)" stroke="none">number of ways.</text>
<text x="5174.8945" xml:space="preserve" y="2930.6792" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5174.8945" xml:space="preserve" y="2944.6479" clip-path="url(#clipPath2)" stroke="none">2. "string" is a standard library containing functions that involve</text>
<text x="5174.8945" xml:space="preserve" y="2958.6167" clip-path="url(#clipPath2)" stroke="none">strings.</text>
<text x="5174.8945" xml:space="preserve" y="2972.5854" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5174.8945" xml:space="preserve" y="2986.5542" clip-path="url(#clipPath2)" stroke="none">Most of those functions can be called using object-oriented syntax.</text>
<text x="5174.8945" xml:space="preserve" y="3000.5229" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5174.8945" xml:space="preserve" y="3014.4917" clip-path="url(#clipPath2)" stroke="none"> data = "Laurie, Dirk"</text>
<text x="5174.8945" xml:space="preserve" y="3028.4604" clip-path="url(#clipPath2)" stroke="none"> pattern = "([^,]+),%s*(.*)"</text>
<text x="5174.8945" xml:space="preserve" y="3042.4292" clip-path="url(#clipPath2)" stroke="none"> surname, name = string.match(data, pattern) -- these two calls</text>
<text x="5174.8945" xml:space="preserve" y="3056.3979" clip-path="url(#clipPath2)" stroke="none"> surname, name = data:match(pattern) -- are equivalent</text>
<text x="5174.8945" xml:space="preserve" y="3070.3667" clip-path="url(#clipPath2)" stroke="none"> </text>
<rect x="5167.8944" y="2842.6969" clip-path="url(#clipPath2)" fill="none" width="422.4512" rx="4" ry="4" height="237.5"/>
<path fill="none" d="M4817.9976 3442.8882 L5208.4062 3100.4529" clip-path="url(#clipPath2)"/>
<path d="M5214.4204 3095.1777 L5202.1021 3099.3318 L5207.6543 3101.1123 L5208.6958 3106.8496 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4708.1694 3980.895 L5280.6675 3101.8801" clip-path="url(#clipPath2)"/>
<path d="M5285.0337 3095.1765 L5274.2949 3102.5029 L5280.1216 3102.718 L5282.6743 3107.9607 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M5152.9307 2950.011 L4092.1396 2946.7034" clip-path="url(#clipPath2)"/>
<path d="M4084.1396 2946.6785 L4096.124 2951.7158 L4093.1396 2946.7065 L4096.1553 2941.7158 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="5259.8403" y="1587.3623" clip-path="url(#clipPath2)" width="462.125" rx="4" ry="4" height="149.2734" stroke="none"/>
<rect x="5259.8403" y="1587.3623" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="462.125" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="5668.2197" xml:space="preserve" y="1603.2856" clip-path="url(#clipPath2)" stroke="none">delimit</text>
<rect x="5259.8403" y="1587.3623" clip-path="url(#clipPath2)" fill="none" width="462.125" stroke-dasharray="6,2" rx="4" ry="4" height="149.2734"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="5274.8403" y="1623.8233" clip-path="url(#clipPath2)" width="432.125" rx="4" ry="4" height="97.8125" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="5281.8403" xml:space="preserve" y="1641.9619" clip-path="url(#clipPath2)" stroke="none">To put markers called "delimiters" in front and after something to</text>
<text x="5281.8403" xml:space="preserve" y="1655.9307" clip-path="url(#clipPath2)" stroke="none">show where it starts and stops.</text>
<text x="5281.8403" xml:space="preserve" y="1669.8994" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5281.8403" xml:space="preserve" y="1683.8682" clip-path="url(#clipPath2)" stroke="none">There is therefore always a pair of delimiters. They can be as simple</text>
<text x="5281.8403" xml:space="preserve" y="1697.8369" clip-path="url(#clipPath2)" stroke="none">as a pair of quotes, and as complicated as function and end, or a pair</text>
<text x="5281.8403" xml:space="preserve" y="1711.8057" clip-path="url(#clipPath2)" stroke="none">of "[==[", "]==]" with any number of equal signs.</text>
<rect x="5274.8403" y="1623.8233" clip-path="url(#clipPath2)" fill="none" width="432.125" rx="4" ry="4" height="97.8125"/>
<path fill="none" d="M5391.6499 2806.2627 L5483.7388 1744.5935" clip-path="url(#clipPath2)"/>
<path d="M5484.4297 1736.6234 L5478.4121 1748.1467 L5483.6523 1745.5898 L5488.3745 1749.0104 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3828.2079" y="1859.2482" clip-path="url(#clipPath2)" width="469.0215" rx="4" ry="4" height="163.2422" stroke="none"/>
<rect x="3828.2079" y="1859.2482" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="469.0215" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="4246.9702" xml:space="preserve" y="1875.1716" clip-path="url(#clipPath2)" stroke="none">library</text>
<rect x="3828.2079" y="1859.2482" clip-path="url(#clipPath2)" fill="none" width="469.0215" stroke-dasharray="6,2" rx="4" ry="4" height="163.2422"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3843.2079" y="1895.7092" clip-path="url(#clipPath2)" width="439.0215" rx="4" ry="4" height="111.7812" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3850.208" xml:space="preserve" y="1913.8479" clip-path="url(#clipPath2)" stroke="none">A table of functions that serve a common purpose.</text>
<text x="3850.208" xml:space="preserve" y="1927.8167" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3850.208" xml:space="preserve" y="1941.7854" clip-path="url(#clipPath2)" stroke="none">Libraries extend the power of Lua. Apart from the global library, a</text>
<text x="3850.208" xml:space="preserve" y="1955.7542" clip-path="url(#clipPath2)" stroke="none">number of standard libraries are automatically loaded when Lua starts</text>
<text x="3850.208" xml:space="preserve" y="1969.7229" clip-path="url(#clipPath2)" stroke="none">up.</text>
<text x="3850.208" xml:space="preserve" y="1983.6917" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3850.208" xml:space="preserve" y="1997.6604" clip-path="url(#clipPath2)" stroke="none">Custom libraries can also be returned by a module.</text>
<rect x="3843.2079" y="1895.7092" clip-path="url(#clipPath2)" fill="none" width="439.0215" rx="4" ry="4" height="111.7812"/>
<path fill="none" d="M5190.7671 2806.2258 L4175.4746 2027.3676" clip-path="url(#clipPath2)"/>
<path d="M4169.1274 2022.4982 L4175.605 2033.7694 L4176.2681 2027.9762 L4181.6919 2025.8352 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4038.9709 2022.4816 L3487.0923 3919.0786" clip-path="url(#clipPath2)"/>
<path d="M3484.8572 3926.76 L3493.0107 3916.6348 L3487.3716 3918.1184 L3483.4089 3913.8408 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3992.3169 2022.5062 L3775.0249 2274.4749" clip-path="url(#clipPath2)"/>
<path d="M3769.8003 2280.5332 L3781.4236 2274.7112 L3775.678 2273.7175 L3773.8508 2268.1804 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="1769.7471" y="1133.6814" clip-path="url(#clipPath2)" width="455.668" rx="4" ry="4" height="302.9297" stroke="none"/>
<rect x="1769.7471" y="1133.6814" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="455.668" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="2177.668" xml:space="preserve" y="1149.6047" clip-path="url(#clipPath2)" stroke="none">global</text>
<rect x="1769.7471" y="1133.6814" clip-path="url(#clipPath2)" fill="none" width="455.668" stroke-dasharray="6,2" rx="4" ry="4" height="302.9297"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="1784.7471" y="1170.1423" clip-path="url(#clipPath2)" width="425.668" rx="4" ry="4" height="251.4688" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="1791.7471" xml:space="preserve" y="1188.281" clip-path="url(#clipPath2)" stroke="none">Strictly: having unlimited scope. In practice the term refers to</text>
<text x="1791.7471" xml:space="preserve" y="1202.2498" clip-path="url(#clipPath2)" stroke="none">perhaps the most idiosyncratic feature of Lua.</text>
<text x="1791.7471" xml:space="preserve" y="1216.2185" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1791.7471" xml:space="preserve" y="1230.1873" clip-path="url(#clipPath2)" stroke="none">When a name is not in any local scope, not even as an upvalue, Lua</text>
<text x="1791.7471" xml:space="preserve" y="1244.156" clip-path="url(#clipPath2)" stroke="none">looks for a key of that name in a table called _ENV which is</text>
<text x="1791.7471" xml:space="preserve" y="1258.1248" clip-path="url(#clipPath2)" stroke="none">guaranteed always to be in scope.</text>
<text x="1791.7471" xml:space="preserve" y="1272.0935" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1791.7471" xml:space="preserve" y="1286.0623" clip-path="url(#clipPath2)" stroke="none">The entry in _ENV with the given name is the global variable of that</text>
<text x="1791.7471" xml:space="preserve" y="1300.031" clip-path="url(#clipPath2)" stroke="none">name.</text>
<text x="1791.7471" xml:space="preserve" y="1313.9998" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1791.7471" xml:space="preserve" y="1327.9685" clip-path="url(#clipPath2)" stroke="none"> string -- these two notations are </text>
<text x="1791.7471" xml:space="preserve" y="1341.9373" clip-path="url(#clipPath2)" stroke="none"> _ENV.string -- equivalent</text>
<text x="1791.7471" xml:space="preserve" y="1355.906" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1791.7471" xml:space="preserve" y="1369.8748" clip-path="url(#clipPath2)" stroke="none">There is nothing pervasive about global variables. All their values</text>
<text x="1791.7471" xml:space="preserve" y="1383.8435" clip-path="url(#clipPath2)" stroke="none">may be switched at the drop of a hat by simply assigning a different</text>
<text x="1791.7471" xml:space="preserve" y="1397.8123" clip-path="url(#clipPath2)" stroke="none">table to _ENV. If that table is empty, all global variables are</text>
<text x="1791.7471" xml:space="preserve" y="1411.781" clip-path="url(#clipPath2)" stroke="none">instantly reset to nil.</text>
<rect x="1784.7471" y="1170.1423" clip-path="url(#clipPath2)" fill="none" width="425.668" rx="4" ry="4" height="251.4688"/>
<path fill="none" d="M3828.1785 1866.3981 L2233.053 1359.9133" clip-path="url(#clipPath2)"/>
<path d="M2225.4282 1357.4923 L2235.3523 1365.8894 L2234.0061 1360.2159 L2238.3787 1356.3584 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2098.9258 1784.601 L2029.9082 1444.4629" clip-path="url(#clipPath2)"/>
<path d="M2028.3173 1436.6227 L2025.8036 1449.3773 L2030.1071 1445.4429 L2035.6038 1447.3887 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M1867.0402 1436.5955 L1775.4287 1542.8802" clip-path="url(#clipPath2)"/>
<path d="M1770.2056 1548.9399 L1781.8275 1543.1149 L1776.0815 1542.1228 L1774.2529 1536.5861 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="893.4443" y="177.4802" clip-path="url(#clipPath2)" width="625.6836" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="893.4443" y="177.4802" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="625.6836" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="1478.6685" xml:space="preserve" y="193.4036" clip-path="url(#clipPath2)" stroke="none">_ENV</text>
<rect x="893.4443" y="177.4802" clip-path="url(#clipPath2)" fill="none" width="625.6836" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="908.4443" y="213.9412" clip-path="url(#clipPath2)" width="595.6836" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="915.4443" xml:space="preserve" y="233.0955" clip-path="url(#clipPath2)" stroke="none">An abbreviation for "environment". The table in which currently visible global variables are kept.</text>
<rect x="908.4443" y="213.9412" clip-path="url(#clipPath2)" fill="none" width="595.6836" rx="4" ry="4" height="30"/>
<path fill="none" d="M1885.2668 1133.7084 L1241.2419 265.3431" clip-path="url(#clipPath2)"/>
<path d="M1236.4764 258.9174 L1239.6088 271.5345 L1241.8376 266.1464 L1247.6409 265.5775 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3819.1708" y="702.2353" clip-path="url(#clipPath2)" width="466.1855" rx="4" ry="4" height="177.2109" stroke="none"/>
<rect x="3819.1708" y="702.2353" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="466.1855" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="4251.2983" xml:space="preserve" y="718.1587" clip-path="url(#clipPath2)" stroke="none">load</text>
<rect x="3819.1708" y="702.2353" clip-path="url(#clipPath2)" fill="none" width="466.1855" stroke-dasharray="6,2" rx="4" ry="4" height="177.2109"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3834.1708" y="738.6963" clip-path="url(#clipPath2)" width="436.1855" rx="4" ry="4" height="125.75" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3841.1709" xml:space="preserve" y="756.835" clip-path="url(#clipPath2)" stroke="none">To make a function, or a table of functions, available to Lua.</text>
<text x="3841.1709" xml:space="preserve" y="770.8037" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3841.1709" xml:space="preserve" y="784.7725" clip-path="url(#clipPath2)" stroke="none">There are several ways to do this. All are considered too advanced for</text>
<text x="3841.1709" xml:space="preserve" y="798.7412" clip-path="url(#clipPath2)" stroke="none">further explanation in this Glossary.</text>
<text x="3841.1709" xml:space="preserve" y="812.71" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3841.1709" xml:space="preserve" y="826.6787" clip-path="url(#clipPath2)" stroke="none"> fct = load "return 'Hello, World'" -- load a string</text>
<text x="3841.1709" xml:space="preserve" y="840.6475" clip-path="url(#clipPath2)" stroke="none"> fct = loadfile "myfunc.lua" -- load a file</text>
<text x="3841.1709" xml:space="preserve" y="854.6162" clip-path="url(#clipPath2)" stroke="none"> fct = require "mylib" -- load a library</text>
<rect x="3834.1708" y="738.6963" clip-path="url(#clipPath2)" fill="none" width="436.1855" rx="4" ry="4" height="125.75"/>
<path fill="none" d="M4061.9768 1859.271 L4053.1416 887.4307" clip-path="url(#clipPath2)"/>
<path d="M4053.0688 879.431 L4048.1782 891.476 L4053.1506 888.4307 L4058.1777 891.3851 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="4305.8716" y="872.9829" clip-path="url(#clipPath2)" width="504.3535" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="4305.8716" y="872.9829" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="504.3535" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="4752.0117" xml:space="preserve" y="888.9062" clip-path="url(#clipPath2)" stroke="none">module</text>
<rect x="4305.8716" y="872.9829" clip-path="url(#clipPath2)" fill="none" width="504.3535" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="4320.8716" y="909.4439" clip-path="url(#clipPath2)" width="474.3535" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="4327.8716" xml:space="preserve" y="928.5981" clip-path="url(#clipPath2)" stroke="none">A function that loads a library. The subject is too advanced for this Glossary.</text>
<rect x="4320.8716" y="909.4439" clip-path="url(#clipPath2)" fill="none" width="474.3535" rx="4" ry="4" height="30"/>
<path fill="none" d="M4102.0664 1859.2749 L4534.939 961.6354" clip-path="url(#clipPath2)"/>
<path d="M4538.4136 954.4294 L4528.6978 963.0668 L4534.5044 962.5362 L4537.7051 967.4102 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4390.3896 872.9833 L4293.1187 849.3528" clip-path="url(#clipPath2)"/>
<path d="M4285.3447 847.4642 L4295.8252 855.1557 L4294.0903 849.5889 L4298.186 845.4384 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3651.1773" y="3388.8518" clip-path="url(#clipPath2)" width="543.9395" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="3651.1773" y="3388.8518" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="543.9395" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="4146.8936" xml:space="preserve" y="3404.7751" clip-path="url(#clipPath2)" stroke="none">object</text>
<rect x="3651.1773" y="3388.8518" clip-path="url(#clipPath2)" fill="none" width="543.9395" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3666.1773" y="3425.3128" clip-path="url(#clipPath2)" width="513.9395" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3673.1772" xml:space="preserve" y="3444.467" clip-path="url(#clipPath2)" stroke="none">A value of type table or userdata that is associated with a class table. See method.</text>
<rect x="3666.1773" y="3425.3128" clip-path="url(#clipPath2)" fill="none" width="513.9395" rx="4" ry="4" height="30"/>
<path fill="none" d="M3882.9673 3125.3679 L3920.9724 3380.9614" clip-path="url(#clipPath2)"/>
<path d="M3922.1492 3388.8745 L3925.3296 3376.2695 L3920.8254 3379.9724 L3915.4385 3377.7405 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3654.1934 3538.385 L3815.0374 3473.3169" clip-path="url(#clipPath2)"/>
<path d="M3822.4536 3470.3169 L3809.4543 3470.1816 L3814.1104 3473.6919 L3813.2043 3479.4519 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3912.0393 3388.8765 L3874.0352 3133.2896" clip-path="url(#clipPath2)"/>
<path d="M3872.8586 3125.3765 L3869.6777 3137.9812 L3874.1821 3134.2786 L3879.5691 3136.5107 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3891.5354 3470.2883 L3541.9709 3920.4167" clip-path="url(#clipPath2)"/>
<path d="M3537.064 3926.7351 L3548.3733 3920.3245 L3542.5842 3919.627 L3540.4753 3914.1907 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4017.0969 3388.8411 L4098.3599 3353.6016" clip-path="url(#clipPath2)"/>
<path d="M4105.6997 3350.4187 L4092.7012 3350.6055 L4097.4429 3353.9993 L4096.6797 3359.78 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3925.6204 3470.3489 L3960.4343 4044.1794" clip-path="url(#clipPath2)"/>
<path d="M3960.9187 4052.1648 L3965.1829 4039.884 L3960.3738 4043.1814 L3955.2012 4040.4895 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="5034.0055" y="4358.4942" clip-path="url(#clipPath2)" width="303.5762" rx="4" ry="4" height="107.3672" stroke="none"/>
<rect x="5034.0055" y="4358.4942" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="303.5762" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="5264.522" xml:space="preserve" y="4374.4175" clip-path="url(#clipPath2)" stroke="none">coroutine</text>
<rect x="5034.0055" y="4358.4942" clip-path="url(#clipPath2)" fill="none" width="303.5762" stroke-dasharray="6,2" rx="4" ry="4" height="107.3672"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="5049.0055" y="4394.9551" clip-path="url(#clipPath2)" width="273.5762" rx="4" ry="4" height="55.9062" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="5056.0054" xml:space="preserve" y="4413.0938" clip-path="url(#clipPath2)" stroke="none">One of the eight types of Lua.</text>
<text x="5056.0054" xml:space="preserve" y="4427.0625" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5056.0054" xml:space="preserve" y="4441.0312" clip-path="url(#clipPath2)" stroke="none">The subject is too advance to discuss here.</text>
<rect x="5049.0055" y="4394.9551" clip-path="url(#clipPath2)" fill="none" width="273.5762" rx="4" ry="4" height="55.9062"/>
<path fill="none" d="M4767.3208 3606.1265 L5154.229 4351.3784" clip-path="url(#clipPath2)"/>
<path d="M5157.915 4358.4785 L5156.8237 4345.5244 L5153.7681 4350.4907 L5147.9482 4350.1318 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="5155.0395" y="2318.1729" clip-path="url(#clipPath2)" width="460.127" rx="4" ry="4" height="135.3047" stroke="none"/>
<rect x="5155.0395" y="2318.1729" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="460.127" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="5565.8667" xml:space="preserve" y="2334.0962" clip-path="url(#clipPath2)" stroke="none">debug</text>
<rect x="5155.0395" y="2318.1729" clip-path="url(#clipPath2)" fill="none" width="460.127" stroke-dasharray="6,2" rx="4" ry="4" height="135.3047"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="5170.0395" y="2354.6338" clip-path="url(#clipPath2)" width="430.127" rx="4" ry="4" height="83.8438" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="5177.0396" xml:space="preserve" y="2372.7725" clip-path="url(#clipPath2)" stroke="none">One of the standard libraries of Lua.</text>
<text x="5177.0396" xml:space="preserve" y="2386.7412" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5177.0396" xml:space="preserve" y="2400.71" clip-path="url(#clipPath2)" stroke="none">It contains functions necessary to look into details of implementation</text>
<text x="5177.0396" xml:space="preserve" y="2414.6787" clip-path="url(#clipPath2)" stroke="none">not normally visible, and functions that can change values that</text>
<text x="5177.0396" xml:space="preserve" y="2428.6475" clip-path="url(#clipPath2)" stroke="none">normally are immutable.</text>
<rect x="5170.0395" y="2354.6338" clip-path="url(#clipPath2)" fill="none" width="430.127" rx="4" ry="4" height="83.8438"/>
<path fill="none" d="M4766.4937 3442.8723 L5336.104 2460.373" clip-path="url(#clipPath2)"/>
<path d="M5340.1162 2453.4519 L5329.772 2461.3259 L5335.6025 2461.238 L5338.4233 2466.3413 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M5184.0093 2318.1611 L4304.5991 2022.2572" clip-path="url(#clipPath2)"/>
<path d="M4297.0166 2019.7061 L4306.7954 2028.2719 L4305.5469 2022.5762 L4309.9844 2018.7939 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M5351.6577 2453.4829 L4782.0547 3435.97" clip-path="url(#clipPath2)"/>
<path d="M4778.042 3442.8909 L4788.3867 3435.0176 L4782.5562 3435.105 L4779.7354 3430.0017 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="6246.3833" y="2220.5577" clip-path="url(#clipPath2)" width="464.9199" rx="4" ry="4" height="149.2734" stroke="none"/>
<rect x="6246.3833" y="2220.5577" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="464.9199" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="6590.4531" xml:space="preserve" y="2236.4812" clip-path="url(#clipPath2)" stroke="none">implementation</text>
<rect x="6246.3833" y="2220.5577" clip-path="url(#clipPath2)" fill="none" width="464.9199" stroke-dasharray="6,2" rx="4" ry="4" height="149.2734"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="6261.3833" y="2257.0187" clip-path="url(#clipPath2)" width="434.9199" rx="4" ry="4" height="97.8125" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="6268.3833" xml:space="preserve" y="2275.1575" clip-path="url(#clipPath2)" stroke="none">The way the details of Lua are handled on a specific computer.</text>
<text x="6268.3833" xml:space="preserve" y="2289.1262" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="6268.3833" xml:space="preserve" y="2303.095" clip-path="url(#clipPath2)" stroke="none">You are not supposed to know what they are, and if you do know, you</text>
<text x="6268.3833" xml:space="preserve" y="2317.0637" clip-path="url(#clipPath2)" stroke="none">are not allowed to rely on that knowledge. So I will not even try to</text>
<text x="6268.3833" xml:space="preserve" y="2331.0325" clip-path="url(#clipPath2)" stroke="none">explain implementation details like endianness, word size, array part,</text>
<text x="6268.3833" xml:space="preserve" y="2345.0012" clip-path="url(#clipPath2)" stroke="none">hash part, etc.</text>
<rect x="6261.3833" y="2257.0187" clip-path="url(#clipPath2)" fill="none" width="434.9199" rx="4" ry="4" height="97.8125"/>
<path fill="none" d="M5615.1797 2366.7603 L6238.4287 2315.116" clip-path="url(#clipPath2)"/>
<path d="M6246.4014 2314.4553 L6234.0293 2310.4634 L6237.4321 2315.1985 L6234.8555 2320.4292 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="4682.4253" y="2396.9524" clip-path="url(#clipPath2)" width="452.0234" rx="4" ry="4" height="219.1172" stroke="none"/>
<rect x="4682.4253" y="2396.9524" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="452.0234" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="5108.7183" xml:space="preserve" y="2412.8757" clip-path="url(#clipPath2)" stroke="none">API</text>
<rect x="4682.4253" y="2396.9524" clip-path="url(#clipPath2)" fill="none" width="452.0234" stroke-dasharray="6,2" rx="4" ry="4" height="219.1172"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="4697.4253" y="2433.4134" clip-path="url(#clipPath2)" width="422.0234" rx="4" ry="4" height="167.6562" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="4704.4253" xml:space="preserve" y="2451.552" clip-path="url(#clipPath2)" stroke="none">Acronym for Application Program Interface. </text>
<text x="4704.4253" xml:space="preserve" y="2465.5208" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4704.4253" xml:space="preserve" y="2479.4895" clip-path="url(#clipPath2)" stroke="none">The functions, types and data structures to be used when writing C</text>
<text x="4704.4253" xml:space="preserve" y="2493.4583" clip-path="url(#clipPath2)" stroke="none">code that interacts with Lua.</text>
<text x="4704.4253" xml:space="preserve" y="2507.427" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4704.4253" xml:space="preserve" y="2521.3958" clip-path="url(#clipPath2)" stroke="none">Understanding the API requires a knowledge of C. It is therefore not</text>
<text x="4704.4253" xml:space="preserve" y="2535.3645" clip-path="url(#clipPath2)" stroke="none">covered in this Glossary.</text>
<text x="4704.4253" xml:space="preserve" y="2549.3333" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4704.4253" xml:space="preserve" y="2563.302" clip-path="url(#clipPath2)" stroke="none">APIs for other languages (C++, Pascal etc) also exist, but the</text>
<text x="4704.4253" xml:space="preserve" y="2577.2708" clip-path="url(#clipPath2)" stroke="none">official documentation (which fills half the Lua manual) is for the C</text>
<text x="4704.4253" xml:space="preserve" y="2591.2395" clip-path="url(#clipPath2)" stroke="none">API.</text>
<rect x="4697.4253" y="2433.4134" clip-path="url(#clipPath2)" fill="none" width="422.0234" rx="4" ry="4" height="167.6562"/>
<path fill="none" d="M4421.0894 3136.2268 L4818.7368 2622.4153" clip-path="url(#clipPath2)"/>
<path d="M4823.6328 2616.0884 L4812.3345 2622.5186 L4818.1245 2623.2061 L4820.2427 2628.6387 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4682.4541 2475.5542 L4008.4978 2383.2307" clip-path="url(#clipPath2)"/>
<path d="M4000.5718 2382.145 L4011.7822 2388.7273 L4009.4885 2383.3665 L4013.1394 2378.8198 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="4692.7185" y="3759.4359" clip-path="url(#clipPath2)" width="465.1133" rx="4" ry="4" height="135.3047" stroke="none"/>
<rect x="4692.7185" y="3759.4359" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="465.1133" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="5122.3232" xml:space="preserve" y="3775.3591" clip-path="url(#clipPath2)" stroke="none">type</text>
<rect x="4692.7185" y="3759.4359" clip-path="url(#clipPath2)" fill="none" width="465.1133" stroke-dasharray="6,2" rx="4" ry="4" height="135.3047"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="4707.7185" y="3795.8968" clip-path="url(#clipPath2)" width="435.1133" rx="4" ry="4" height="83.8438" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="4714.7183" xml:space="preserve" y="3814.0354" clip-path="url(#clipPath2)" stroke="none">A classification of values as one of nil, boolean, number, string,</text>
<text x="4714.7183" xml:space="preserve" y="3828.0042" clip-path="url(#clipPath2)" stroke="none">function, table, coroutine or userdata.</text>
<text x="4714.7183" xml:space="preserve" y="3841.9729" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="4714.7183" xml:space="preserve" y="3855.9417" clip-path="url(#clipPath2)" stroke="none">The type of a value determines how it is stored in the computer, what</text>
<text x="4714.7183" xml:space="preserve" y="3869.9104" clip-path="url(#clipPath2)" stroke="none">operations on it are allowed, and how it is represented when printed.</text>
<rect x="4707.7185" y="3795.8968" clip-path="url(#clipPath2)" fill="none" width="435.1133" rx="4" ry="4" height="83.8438"/>
<path fill="none" d="M4909.834 2616.0889 L4924.3105 3751.4211" clip-path="url(#clipPath2)"/>
<path d="M4924.4121 3759.4204 L4929.2593 3747.3579 L4924.2979 3750.4211 L4919.2603 3747.4849 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4692.7412 3780.1445 L3248.4243 3488.5681" clip-path="url(#clipPath2)"/>
<path d="M3240.5825 3486.9851 L3251.356 3494.2607 L3249.4045 3488.7661 L3253.3347 3484.4585 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4749.6772 3759.4292 L3579.623 3308.5999" clip-path="url(#clipPath2)"/>
<path d="M3572.1582 3305.7234 L3581.5579 3314.7039 L3580.5564 3308.9595 L3585.1536 3305.3726 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M5002.6025 3894.7192 L5892.0063 4672.6001" clip-path="url(#clipPath2)"/>
<path d="M5898.0283 4677.8667 L5892.2871 4666.2031 L5891.2539 4671.9419 L5885.7036 4673.7305 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4878.3608 3894.7231 L4386.3301 4604.0688" clip-path="url(#clipPath2)"/>
<path d="M4381.7705 4610.6421 L4392.7183 4603.6318 L4386.8999 4603.2471 L4384.5015 4597.9321 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4960.3022 3759.4507 L5300.6064 3102.3252" clip-path="url(#clipPath2)"/>
<path d="M5304.2856 3095.2214 L5294.3271 3103.5776 L5300.1465 3103.2131 L5303.2065 3108.1765 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4870.1504 3759.4526 L3771.8938 2411.9458" clip-path="url(#clipPath2)"/>
<path d="M3766.8396 2405.7446 L3770.5452 2418.2053 L3772.5256 2412.7209 L3778.2966 2411.8875 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4692.6738 3859.8271 L3710.4365 3998.0776" clip-path="url(#clipPath2)"/>
<path d="M3702.5146 3999.1926 L3715.0945 4002.4714 L3711.4268 3997.9382 L3713.7007 3992.5688 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4955.4072 3894.7605 L5158.6484 4351.2139" clip-path="url(#clipPath2)"/>
<path d="M5161.9028 4358.522 L5161.5894 4345.5259 L5158.2417 4350.3003 L5152.4541 4349.5938 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M4855.2773 3759.4512 L4457.2832 3374.8789" clip-path="url(#clipPath2)"/>
<path d="M4451.5303 3369.3198 L4456.6851 3381.2542 L4458.0024 3375.5737 L4463.6343 3374.063 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M5014.0674 3894.7405 L6658.5464 5147.6943" clip-path="url(#clipPath2)"/>
<path d="M6664.9097 5152.543 L6658.395 5141.293 L6657.751 5147.0884 L6652.3345 5149.2471 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="6509.663" y="1858.8799" clip-path="url(#clipPath2)" width="462.541" rx="4" ry="4" height="135.3047" stroke="none"/>
<rect x="6509.663" y="1858.8799" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="462.541" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="6900.3677" xml:space="preserve" y="1874.8032" clip-path="url(#clipPath2)" stroke="none">language</text>
<rect x="6509.663" y="1858.8799" clip-path="url(#clipPath2)" fill="none" width="462.541" stroke-dasharray="6,2" rx="4" ry="4" height="135.3047"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="6524.663" y="1895.3408" clip-path="url(#clipPath2)" width="432.541" rx="4" ry="4" height="83.8438" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="6531.6631" xml:space="preserve" y="1913.4795" clip-path="url(#clipPath2)" stroke="none">(short for programming language): A specification for composing text</text>
<text x="6531.6631" xml:space="preserve" y="1927.4482" clip-path="url(#clipPath2)" stroke="none">(that can be understood by both humans and computers.</text>
<text x="6531.6631" xml:space="preserve" y="1941.417" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="6531.6631" xml:space="preserve" y="1955.3857" clip-path="url(#clipPath2)" stroke="none">Examples: Ada, APL, Basic, C, Fortran, Go, Guile, Java, Lisp, Lua,</text>
<text x="6531.6631" xml:space="preserve" y="1969.3545" clip-path="url(#clipPath2)" stroke="none">Pascal, Python, Ruby, Scheme.</text>
<rect x="6524.663" y="1895.3408" clip-path="url(#clipPath2)" fill="none" width="432.541" rx="4" ry="4" height="83.8438"/>
<path fill="none" d="M5134.4512 2434.9783 L6519.5288 1996.6061" clip-path="url(#clipPath2)"/>
<path d="M6527.1558 1994.1921 L6514.2065 1993.0461 L6518.5752 1996.9078 L6517.2236 2002.5801 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="6952.3681" y="4185.8689" clip-path="url(#clipPath2)" width="470.041" rx="4" ry="4" height="219.1172" stroke="none"/>
<rect x="6952.3681" y="4185.8689" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="470.041" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="7365.3823" xml:space="preserve" y="4201.792" clip-path="url(#clipPath2)" stroke="none">release</text>
<rect x="6952.3681" y="4185.8689" clip-path="url(#clipPath2)" fill="none" width="470.041" stroke-dasharray="6,2" rx="4" ry="4" height="219.1172"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="6967.3681" y="4222.3298" clip-path="url(#clipPath2)" width="440.041" rx="4" ry="4" height="167.6562" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="6974.3682" xml:space="preserve" y="4240.4683" clip-path="url(#clipPath2)" stroke="none">A version of a software package that is officially made available by</text>
<text x="6974.3682" xml:space="preserve" y="4254.437" clip-path="url(#clipPath2)" stroke="none">its developers.</text>
<text x="6974.3682" xml:space="preserve" y="4268.4058" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="6974.3682" xml:space="preserve" y="4282.3745" clip-path="url(#clipPath2)" stroke="none">Lua releases have three-part numbers, e.g. Lua 5.3.4. </text>
<text x="6974.3682" xml:space="preserve" y="4296.3433" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="6974.3682" xml:space="preserve" y="4310.312" clip-path="url(#clipPath2)" stroke="none">These are called minor releases; if the third part is dropped, it is</text>
<text x="6974.3682" xml:space="preserve" y="4324.2808" clip-path="url(#clipPath2)" stroke="none">called a major release, e.g. Lua 5.3. </text>
<text x="6974.3682" xml:space="preserve" y="4338.2495" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="6974.3682" xml:space="preserve" y="4352.2183" clip-path="url(#clipPath2)" stroke="none">Each minor release is considered to be merely a bugfix of the previous</text>
<text x="6974.3682" xml:space="preserve" y="4366.187" clip-path="url(#clipPath2)" stroke="none">one: no features are added or changed, and the virtual machine is the</text>
<text x="6974.3682" xml:space="preserve" y="4380.1558" clip-path="url(#clipPath2)" stroke="none">same.</text>
<rect x="6967.3681" y="4222.3298" clip-path="url(#clipPath2)" fill="none" width="440.041" rx="4" ry="4" height="167.6562"/>
<path fill="none" d="M6257.7075 3872.6841 L6948.3237 4182.6489" clip-path="url(#clipPath2)"/>
<path d="M6955.6226 4185.9248 L6946.7222 4176.4497 L6947.4116 4182.2397 L6942.6274 4185.5728 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M6952.394 4195.437 L6240.623 3875.9771" clip-path="url(#clipPath2)"/>
<path d="M6233.3242 3872.7014 L6242.2251 3882.1765 L6241.5352 3876.3865 L6246.3193 3873.053 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="1403.7187" y="2323.5861" clip-path="url(#clipPath2)" width="257.1758" rx="4" ry="4" height="107.3672" stroke="none"/>
<rect x="1403.7187" y="2323.5861" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="257.1758" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="1598.3818" xml:space="preserve" y="2339.5095" clip-path="url(#clipPath2)" stroke="none">variable</text>
<rect x="1403.7187" y="2323.5861" clip-path="url(#clipPath2)" fill="none" width="257.1758" stroke-dasharray="6,2" rx="4" ry="4" height="107.3672"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="1418.7187" y="2360.047" clip-path="url(#clipPath2)" width="227.1758" rx="4" ry="4" height="55.9062" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="1425.7188" xml:space="preserve" y="2378.1858" clip-path="url(#clipPath2)" stroke="none">A name associated with a value.</text>
<text x="1425.7188" xml:space="preserve" y="2392.1545" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1425.7188" xml:space="preserve" y="2406.1233" clip-path="url(#clipPath2)" stroke="none">See dummy, local, global, initialize.</text>
<rect x="1418.7187" y="2360.047" clip-path="url(#clipPath2)" fill="none" width="227.1758" rx="4" ry="4" height="55.9062"/>
<path fill="none" d="M1512.1985 2430.9426 L1379.3427 2785.5654" clip-path="url(#clipPath2)"/>
<path d="M1376.536 2793.0569 L1385.4282 2783.5737 L1379.6935 2784.6289 L1376.0638 2780.0654 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M1604.9872 2430.9575 L2871.8618 3366.7749" clip-path="url(#clipPath2)"/>
<path d="M2878.2964 3371.5283 L2871.6152 3360.3765 L2871.0574 3366.1807 L2865.6736 3368.4197 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M1502.6196 2323.5776 L1302.5614 1961.7512" clip-path="url(#clipPath2)"/>
<path d="M1298.6903 1954.7501 L1300.1212 1967.6711 L1303.0453 1962.6263 L1308.8726 1962.8323 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M1555.1813 2323.5767 L1929.9244 1443.9545" clip-path="url(#clipPath2)"/>
<path d="M1933.0599 1436.5945 L1923.7567 1445.6747 L1929.5325 1444.8744 L1932.9565 1449.5941 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="451.8002" y="2313.4775" clip-path="url(#clipPath2)" width="361.4316" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="451.8002" y="2313.4775" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="361.4316" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="754.103" xml:space="preserve" y="2329.4009" clip-path="url(#clipPath2)" stroke="none">dummy</text>
<rect x="451.8002" y="2313.4775" clip-path="url(#clipPath2)" fill="none" width="361.4316" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="466.8002" y="2349.9384" clip-path="url(#clipPath2)" width="331.4316" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="473.8002" xml:space="preserve" y="2369.0928" clip-path="url(#clipPath2)" stroke="none">Something supplied pro forma but not actually used.</text>
<rect x="466.8002" y="2349.9384" clip-path="url(#clipPath2)" fill="none" width="331.4316" rx="4" ry="4" height="30"/>
<path fill="none" d="M1403.7141 2373.9739 L821.2159 2359.0444" clip-path="url(#clipPath2)"/>
<path d="M813.2185 2358.8394 L825.0864 2364.1453 L822.2156 2359.0701 L825.3427 2354.1487 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="1847.7757" y="2646.1615" clip-path="url(#clipPath2)" width="430.8125" rx="4" ry="4" height="107.3672" stroke="none"/>
<rect x="1847.7757" y="2646.1615" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="430.8125" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="2214.0686" xml:space="preserve" y="2662.0847" clip-path="url(#clipPath2)" stroke="none">initialize</text>
<rect x="1847.7757" y="2646.1615" clip-path="url(#clipPath2)" fill="none" width="430.8125" stroke-dasharray="6,2" rx="4" ry="4" height="107.3672"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="1862.7757" y="2682.6224" clip-path="url(#clipPath2)" width="400.8125" rx="4" ry="4" height="55.9062" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="1869.7756" xml:space="preserve" y="2700.761" clip-path="url(#clipPath2)" stroke="none">To assign a value to a name simultaneously with its declaration.</text>
<text x="1869.7756" xml:space="preserve" y="2714.7297" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1869.7756" xml:space="preserve" y="2728.6985" clip-path="url(#clipPath2)" stroke="none">Uninitialized names are treated as having value nil.</text>
<rect x="1862.7757" y="2682.6224" clip-path="url(#clipPath2)" fill="none" width="400.8125" rx="4" ry="4" height="55.9062"/>
<path fill="none" d="M1620.667 2430.96 L1967.9988 2642.009" clip-path="url(#clipPath2)"/>
<path d="M1974.8356 2646.1633 L1967.1768 2635.6589 L1967.1442 2641.4897 L1961.9839 2644.2048 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2115.7671 1954.8051 L2072.1299 2638.1797" clip-path="url(#clipPath2)"/>
<path d="M2071.6199 2646.1633 L2077.3748 2634.5066 L2072.1936 2637.1816 L2067.395 2633.8689 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2128.9568 2753.5508 L2879.6372 3366.4875" clip-path="url(#clipPath2)"/>
<path d="M2885.834 3371.5474 L2879.7012 3360.0847 L2878.8628 3365.8552 L2873.3767 3367.8306 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M1847.8013 2748.2139 L1584.452 2807.355" clip-path="url(#clipPath2)"/>
<path d="M1576.6465 2809.1079 L1589.4504 2811.3569 L1585.4277 2807.136 L1587.2593 2801.6001 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2061.5996 2646.1619 L2105.2397 1962.7449" clip-path="url(#clipPath2)"/>
<path d="M2105.7495 1954.7611 L2099.9951 1966.4181 L2105.176 1963.7428 L2109.9746 1967.0553 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2196.0457 2753.5383 L3156.5474 3141.6982" clip-path="url(#clipPath2)"/>
<path d="M3163.9646 3144.6956 L3154.7122 3135.5637 L3155.6201 3141.3235 L3150.9653 3144.8352 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="7696.1869" y="5542.5673" clip-path="url(#clipPath2)" width="299.2754" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="7696.1869" y="5542.5673" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="299.2754" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="7950.2129" xml:space="preserve" y="5558.4907" clip-path="url(#clipPath2)" stroke="none">unary</text>
<rect x="7696.1869" y="5542.5673" clip-path="url(#clipPath2)" fill="none" width="299.2754" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="7711.1869" y="5579.0283" clip-path="url(#clipPath2)" width="269.2754" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="7718.187" xml:space="preserve" y="5598.1826" clip-path="url(#clipPath2)" stroke="none">(of an operation) Involving only one value.</text>
<rect x="7711.1869" y="5579.0283" clip-path="url(#clipPath2)" fill="none" width="269.2754" rx="4" ry="4" height="30"/>
<path fill="none" d="M7720.5449 5542.5635 L7012.3296 5312.2876" clip-path="url(#clipPath2)"/>
<path d="M7004.7217 5309.814 L7014.5879 5318.2793 L7013.2808 5312.5967 L7017.6797 5308.769 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="7266.0778" y="2929.898" clip-path="url(#clipPath2)" width="405.4941" rx="4" ry="4" height="121.3359" stroke="none"/>
<rect x="7266.0778" y="2929.898" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="405.4941" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="7639.7036" xml:space="preserve" y="2945.8213" clip-path="url(#clipPath2)" stroke="none">text</text>
<rect x="7266.0778" y="2929.898" clip-path="url(#clipPath2)" fill="none" width="405.4941" stroke-dasharray="6,2" rx="4" ry="4" height="121.3359"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="7281.0778" y="2966.359" clip-path="url(#clipPath2)" width="375.4941" rx="4" ry="4" height="69.875" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="7288.0776" xml:space="preserve" y="2984.4976" clip-path="url(#clipPath2)" stroke="none">A string or file that is designed to be readable by a human.</text>
<text x="7288.0776" xml:space="preserve" y="2998.4663" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="7288.0776" xml:space="preserve" y="3012.4351" clip-path="url(#clipPath2)" stroke="none">Text files typically contain only characters that have an</text>
<text x="7288.0776" xml:space="preserve" y="3026.4038" clip-path="url(#clipPath2)" stroke="none">understandable appearance on the screen, and whitespace.</text>
<rect x="7281.0778" y="2966.359" clip-path="url(#clipPath2)" fill="none" width="375.4941" rx="4" ry="4" height="69.875"/>
<path fill="none" d="M7266.0596 2986.6995 L5613.3403 2955.1829" clip-path="url(#clipPath2)"/>
<path d="M5605.3418 2955.0303 L5617.2441 2960.2583 L5614.3403 2955.2019 L5617.4351 2950.26 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M7671.582 2976.3538 L8272.7979 2934.2119" clip-path="url(#clipPath2)"/>
<path d="M8280.7783 2933.6523 L8268.458 2929.5039 L8271.8008 2934.2817 L8269.1572 2939.4795 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="7999.0244" y="3523.8102" clip-path="url(#clipPath2)" width="435.623" rx="4" ry="4" height="135.3047" stroke="none"/>
<rect x="7999.0244" y="3523.8102" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="435.623" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="8409.8037" xml:space="preserve" y="3539.7334" clip-path="url(#clipPath2)" stroke="none">file</text>
<rect x="7999.0244" y="3523.8102" clip-path="url(#clipPath2)" fill="none" width="435.623" stroke-dasharray="6,2" rx="4" ry="4" height="135.3047"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="8014.0244" y="3560.2711" clip-path="url(#clipPath2)" width="405.623" rx="4" ry="4" height="83.8438" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="8021.0244" xml:space="preserve" y="3578.4097" clip-path="url(#clipPath2)" stroke="none">Data stored outside one's program, usually on a disk, under the</text>
<text x="8021.0244" xml:space="preserve" y="3592.3784" clip-path="url(#clipPath2)" stroke="none">control of the operating system.</text>
<text x="8021.0244" xml:space="preserve" y="3606.3472" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="8021.0244" xml:space="preserve" y="3620.3159" clip-path="url(#clipPath2)" stroke="none">A file may contain text, in which case it is a text file. Otherwise it</text>
<text x="8021.0244" xml:space="preserve" y="3634.2847" clip-path="url(#clipPath2)" stroke="none">is a binary file.</text>
<rect x="8014.0244" y="3560.2711" clip-path="url(#clipPath2)" fill="none" width="405.623" rx="4" ry="4" height="83.8438"/>
<path fill="none" d="M7552.332 3051.2358 L8134.3716 3518.803" clip-path="url(#clipPath2)"/>
<path d="M8140.6084 3523.8132 L8134.3848 3512.3999 L8133.5918 3518.1768 L8128.1216 3520.1958 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M8124.6416 3523.814 L7542.6187 3056.2598" clip-path="url(#clipPath2)"/>
<path d="M7536.3818 3051.2498 L7542.606 3062.6628 L7543.3984 3056.886 L7548.8687 3054.8667 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="7489.3301" y="4044.9466" clip-path="url(#clipPath2)" width="425.2051" rx="4" ry="4" height="121.3359" stroke="none"/>
<rect x="7489.3301" y="4044.9466" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="425.2051" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="7865.1035" xml:space="preserve" y="4060.8699" clip-path="url(#clipPath2)" stroke="none">binary</text>
<rect x="7489.3301" y="4044.9466" clip-path="url(#clipPath2)" fill="none" width="425.2051" stroke-dasharray="6,2" rx="4" ry="4" height="121.3359"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="7504.3301" y="4081.4075" clip-path="url(#clipPath2)" width="395.2051" rx="4" ry="4" height="69.875" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="7511.3301" xml:space="preserve" y="4099.5464" clip-path="url(#clipPath2)" stroke="none">1. Made up only of 0s and 1s, as all digital computers are when</text>
<text x="7511.3301" xml:space="preserve" y="4113.5151" clip-path="url(#clipPath2)" stroke="none">considered at the lowest level.</text>
<text x="7511.3301" xml:space="preserve" y="4127.4839" clip-path="url(#clipPath2)" stroke="none">2. (When talking about files) Not text.</text>
<text x="7511.3301" xml:space="preserve" y="4141.4526" clip-path="url(#clipPath2)" stroke="none">3. (When talking about operations) Involving two values.</text>
<rect x="7504.3301" y="4081.4075" clip-path="url(#clipPath2)" fill="none" width="395.2051" rx="4" ry="4" height="69.875"/>
<path fill="none" d="M8156.1631 3659.1128 L7775.4136 4039.3066" clip-path="url(#clipPath2)"/>
<path d="M7769.7529 4044.9595 L7781.7773 4040.0183 L7776.1216 4038.6001 L7774.7114 4032.9421 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M7755.605 4044.9543 L8136.3247 3664.7903" clip-path="url(#clipPath2)"/>
<path d="M8141.9858 3659.1377 L8129.9614 3664.0786 L8135.6172 3665.4971 L8137.0273 3671.1548 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M7689.2485 4044.9417 L7483.1421 3059.0503" clip-path="url(#clipPath2)"/>
<path d="M7481.5049 3051.2197 L7479.0664 3063.989 L7483.3467 3060.0293 L7488.855 3061.9424 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M7651.9575 4166.2637 L6844.3745 5146.3403" clip-path="url(#clipPath2)"/>
<path d="M6839.2871 5152.5146 L6850.7769 5146.4331 L6845.0103 5145.5688 L6843.0591 5140.0737 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="2785.5435" y="4857.7543" clip-path="url(#clipPath2)" width="474.0195" rx="4" ry="4" height="316.8984" stroke="none"/>
<rect x="2785.5435" y="4857.7543" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="474.0195" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3217.9683" xml:space="preserve" y="4873.6777" clip-path="url(#clipPath2)" stroke="none">array</text>
<rect x="2785.5435" y="4857.7543" clip-path="url(#clipPath2)" fill="none" width="474.0195" stroke-dasharray="6,2" rx="4" ry="4" height="316.8984"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="2800.5435" y="4894.2153" clip-path="url(#clipPath2)" width="444.0195" rx="4" ry="4" height="265.4375" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="2807.5435" xml:space="preserve" y="4912.354" clip-path="url(#clipPath2)" stroke="none">A data structure whose values (in this context called elements) are</text>
<text x="2807.5435" xml:space="preserve" y="4926.3228" clip-path="url(#clipPath2)" stroke="none">numbered consecutively. The number of an element is its key.</text>
<text x="2807.5435" xml:space="preserve" y="4940.2915" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2807.5435" xml:space="preserve" y="4954.2603" clip-path="url(#clipPath2)" stroke="none"> A -- refers to the whole array</text>
<text x="2807.5435" xml:space="preserve" y="4968.229" clip-path="url(#clipPath2)" stroke="none"> A[1] -- refers to a single element with key 1</text>
<text x="2807.5435" xml:space="preserve" y="4982.1978" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2807.5435" xml:space="preserve" y="4996.1665" clip-path="url(#clipPath2)" stroke="none">Arrays in which other keys than numbers are used are called</text>
<text x="2807.5435" xml:space="preserve" y="5010.1353" clip-path="url(#clipPath2)" stroke="none">associative arrays. </text>
<text x="2807.5435" xml:space="preserve" y="5024.104" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2807.5435" xml:space="preserve" y="5038.0728" clip-path="url(#clipPath2)" stroke="none">The elements of associative arrays are sometimes referred to as items.</text>
<text x="2807.5435" xml:space="preserve" y="5052.0415" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2807.5435" xml:space="preserve" y="5066.0103" clip-path="url(#clipPath2)" stroke="none"> A['name'] -- refers to a single item with key 'name'</text>
<text x="2807.5435" xml:space="preserve" y="5079.979" clip-path="url(#clipPath2)" stroke="none"> A.name -- a synonym for A['name']</text>
<text x="2807.5435" xml:space="preserve" y="5093.9478" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2807.5435" xml:space="preserve" y="5107.9165" clip-path="url(#clipPath2)" stroke="none">The notation A.name is only available when name is an identifier.</text>
<text x="2807.5435" xml:space="preserve" y="5121.8853" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2807.5435" xml:space="preserve" y="5135.854" clip-path="url(#clipPath2)" stroke="none">Both kinds of array are special cases of a table. A sequence is an</text>
<text x="2807.5435" xml:space="preserve" y="5149.8228" clip-path="url(#clipPath2)" stroke="none">even more special case of an array.</text>
<rect x="2800.5435" y="4894.2153" clip-path="url(#clipPath2)" fill="none" width="444.0195" rx="4" ry="4" height="265.4375"/>
<path fill="none" d="M3411.8745 4141.6948 L3100.7837 4850.4194" clip-path="url(#clipPath2)"/>
<path d="M3097.5684 4857.7446 L3106.9697 4848.7661 L3101.1858 4849.5034 L3097.8132 4844.7471 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3259.5271 4871.7642 L4175.3032 4313.5835" clip-path="url(#clipPath2)"/>
<path d="M4182.1343 4309.4199 L4169.2852 4311.396 L4174.4492 4314.104 L4174.4897 4319.9346 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3086.6382 4857.7656 L3397.7488 4148.9956" clip-path="url(#clipPath2)"/>
<path d="M3400.9641 4141.6704 L3391.5627 4150.6489 L3397.3467 4149.9116 L3400.7192 4154.668 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="2216.1612" y="5903.1833" clip-path="url(#clipPath2)" width="459.043" rx="4" ry="4" height="93.3984" stroke="none"/>
<rect x="2216.1612" y="5903.1833" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="459.043" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="2611.3511" xml:space="preserve" y="5919.1064" clip-path="url(#clipPath2)" stroke="none">element</text>
<rect x="2216.1612" y="5903.1833" clip-path="url(#clipPath2)" fill="none" width="459.043" stroke-dasharray="6,2" rx="4" ry="4" height="93.3984"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="2231.1612" y="5939.6443" clip-path="url(#clipPath2)" width="429.043" rx="4" ry="4" height="41.9375" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="2238.1611" xml:space="preserve" y="5957.7827" clip-path="url(#clipPath2)" stroke="none">One of the values in an array or a sequence, or (more loosely) in any</text>
<text x="2238.1611" xml:space="preserve" y="5971.7515" clip-path="url(#clipPath2)" stroke="none">collection of values.</text>
<rect x="2231.1612" y="5939.6443" clip-path="url(#clipPath2)" fill="none" width="429.043" rx="4" ry="4" height="41.9375"/>
<path fill="none" d="M2930.5269 5174.6631 L2484.6035 5896.4009" clip-path="url(#clipPath2)"/>
<path d="M2480.3984 5903.2065 L2490.9597 5895.626 L2485.1292 5895.5503 L2482.4526 5890.3696 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2468.6594 5903.1816 L2914.5845 5181.4409" clip-path="url(#clipPath2)"/>
<path d="M2918.7896 5174.6353 L2908.2283 5182.2158 L2914.0588 5182.2915 L2916.7354 5187.4722 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="2324.9439" y="5240.8096" clip-path="url(#clipPath2)" width="384.0371" rx="4" ry="4" height="149.2734" stroke="none"/>
<rect x="2324.9439" y="5240.8096" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="384.0371" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="2634.6982" xml:space="preserve" y="5256.7329" clip-path="url(#clipPath2)" stroke="none">sequence</text>
<rect x="2324.9439" y="5240.8096" clip-path="url(#clipPath2)" fill="none" width="384.0371" stroke-dasharray="6,2" rx="4" ry="4" height="149.2734"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="2339.9439" y="5277.2706" clip-path="url(#clipPath2)" width="354.0371" rx="4" ry="4" height="97.8125" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="2346.9438" xml:space="preserve" y="5295.4092" clip-path="url(#clipPath2)" stroke="none">1. (Loosely) some items coming one after the other.</text>
<text x="2346.9438" xml:space="preserve" y="5309.3779" clip-path="url(#clipPath2)" stroke="none">2. An escape sequence.</text>
<text x="2346.9438" xml:space="preserve" y="5323.3467" clip-path="url(#clipPath2)" stroke="none">3. A table with exactly one border.</text>
<text x="2346.9438" xml:space="preserve" y="5337.3154" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2346.9438" xml:space="preserve" y="5351.2842" clip-path="url(#clipPath2)" stroke="none"> {1,2,3,4} -- a sequence: border at index 4 </text>
<text x="2346.9438" xml:space="preserve" y="5365.2529" clip-path="url(#clipPath2)" stroke="none"> {1,2,nil,4} -- not a sequence: borders at index 2 and 4</text>
<rect x="2339.9439" y="5277.2706" clip-path="url(#clipPath2)" fill="none" width="354.0371" rx="4" ry="4" height="97.8125"/>
<path fill="none" d="M2450.925 5903.2217 L2507.6816 5398.0522" clip-path="url(#clipPath2)"/>
<path d="M2508.5747 5390.1021 L2502.2664 5401.4688 L2507.5701 5399.0459 L2512.2039 5402.585 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M2785.5266 5156.4917 L2649.9661 5236.7261" clip-path="url(#clipPath2)"/>
<path d="M2643.0815 5240.8008 L2655.9551 5238.9917 L2650.8267 5236.2168 L2650.8616 5230.3857 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3375.0093 4141.7144 L2576.2283 5234.376" clip-path="url(#clipPath2)"/>
<path d="M2571.5071 5240.8345 L2582.6255 5234.0977 L2576.8186 5233.5688 L2574.5525 5228.1963 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="1553.1147" y="6061.5161" clip-path="url(#clipPath2)" width="447.8633" rx="4" ry="4" height="219.1172" stroke="none"/>
<rect x="1553.1147" y="6061.5161" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="447.8633" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="1945.7456" xml:space="preserve" y="6077.4395" clip-path="url(#clipPath2)" stroke="none">escape</text>
<rect x="1553.1147" y="6061.5161" clip-path="url(#clipPath2)" fill="none" width="447.8633" stroke-dasharray="6,2" rx="4" ry="4" height="219.1172"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="1568.1147" y="6097.9771" clip-path="url(#clipPath2)" width="417.8633" rx="4" ry="4" height="167.6562" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="1575.1147" xml:space="preserve" y="6116.1157" clip-path="url(#clipPath2)" stroke="none">A technique to encode a character that has a special meaning or is</text>
<text x="1575.1147" xml:space="preserve" y="6130.0845" clip-path="url(#clipPath2)" stroke="none">hard to type by an "escape sequence" consisting of several other</text>
<text x="1575.1147" xml:space="preserve" y="6144.0532" clip-path="url(#clipPath2)" stroke="none">characters.</text>
<text x="1575.1147" xml:space="preserve" y="6158.022" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1575.1147" xml:space="preserve" y="6171.9907" clip-path="url(#clipPath2)" stroke="none"> "\xcafe" -- Hexadecimal encoding of an integer</text>
<text x="1575.1147" xml:space="preserve" y="6185.9595" clip-path="url(#clipPath2)" stroke="none"> "\u{cafe} -- The Unicode character with hexadecimal encoding</text>
<text x="1575.1147" xml:space="preserve" y="6199.9282" clip-path="url(#clipPath2)" stroke="none"> -- CAFE, displayed on your screen as 쫾</text>
<text x="1575.1147" xml:space="preserve" y="6213.897" clip-path="url(#clipPath2)" stroke="none"> "%%" -- The way to represent a percent sign in a pattern.</text>
<text x="1575.1147" xml:space="preserve" y="6227.8657" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="1575.1147" xml:space="preserve" y="6241.8345" clip-path="url(#clipPath2)" stroke="none">Humans find it hard to write escape sequences correctly, but Lua</text>
<text x="1575.1147" xml:space="preserve" y="6255.8032" clip-path="url(#clipPath2)" stroke="none">offers an option %q to string.format that will do it for you.</text>
<rect x="1568.1147" y="6097.9771" clip-path="url(#clipPath2)" fill="none" width="417.8633" rx="4" ry="4" height="167.6562"/>
<path fill="none" d="M2452.405 5390.0996 L1877.0248 6055.4609" clip-path="url(#clipPath2)"/>
<path d="M1871.792 6061.5122 L1883.4232 6055.7056 L1877.6788 6054.7046 L1875.8591 6049.165 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="2128.4109" y="4701.0198" clip-path="url(#clipPath2)" width="441.5762" rx="4" ry="4" height="135.3047" stroke="none"/>
<rect x="2128.4109" y="4701.0198" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="441.5762" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="2518.2043" xml:space="preserve" y="4716.9429" clip-path="url(#clipPath2)" stroke="none">border</text>
<rect x="2128.4109" y="4701.0198" clip-path="url(#clipPath2)" fill="none" width="441.5762" stroke-dasharray="6,2" rx="4" ry="4" height="135.3047"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="2143.4109" y="4737.4807" clip-path="url(#clipPath2)" width="411.5762" rx="4" ry="4" height="83.8438" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="2150.4109" xml:space="preserve" y="4755.6191" clip-path="url(#clipPath2)" stroke="none">Any natural index in a table where a non-nil value is followed by a</text>
<text x="2150.4109" xml:space="preserve" y="4769.5879" clip-path="url(#clipPath2)" stroke="none">nil value.</text>
<text x="2150.4109" xml:space="preserve" y="4783.5566" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2150.4109" xml:space="preserve" y="4797.5254" clip-path="url(#clipPath2)" stroke="none">When the value at index 1 is nil, 0 is a border regardless of the</text>
<text x="2150.4109" xml:space="preserve" y="4811.4941" clip-path="url(#clipPath2)" stroke="none">value at index 0.</text>
<rect x="2143.4109" y="4737.4807" clip-path="url(#clipPath2)" fill="none" width="411.5762" rx="4" ry="4" height="83.8438"/>
<path fill="none" d="M2494.0569 5240.792 L2372.2964 4843.9512" clip-path="url(#clipPath2)"/>
<path d="M2369.9497 4836.3032 L2368.6897 4849.2422 L2372.5898 4844.9072 L2378.2498 4846.3086 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="2941.2908" y="3724.2093" clip-path="url(#clipPath2)" width="498.2773" rx="4" ry="4" height="135.3047" stroke="none"/>
<rect x="2941.2908" y="3724.2093" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="498.2773" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3396.2668" xml:space="preserve" y="3740.1326" clip-path="url(#clipPath2)" stroke="none">index</text>
<rect x="2941.2908" y="3724.2093" clip-path="url(#clipPath2)" fill="none" width="498.2773" stroke-dasharray="6,2" rx="4" ry="4" height="135.3047"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="2956.2908" y="3760.6702" clip-path="url(#clipPath2)" width="468.2773" rx="4" ry="4" height="83.8438" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="2963.2908" xml:space="preserve" y="3778.8088" clip-path="url(#clipPath2)" stroke="none">1. The position of a specific byte in a string.</text>
<text x="2963.2908" xml:space="preserve" y="3792.7776" clip-path="url(#clipPath2)" stroke="none">2. An integer-valued key. A "natural index" is a positive integer-valued key.</text>
<text x="2963.2908" xml:space="preserve" y="3806.7463" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2963.2908" xml:space="preserve" y="3820.7151" clip-path="url(#clipPath2)" stroke="none">If a floating-point number that happens to equal an exact integer is</text>
<text x="2963.2908" xml:space="preserve" y="3834.6838" clip-path="url(#clipPath2)" stroke="none">used as an index, it will be coerced to integer.</text>
<rect x="2956.2908" y="3760.6702" clip-path="url(#clipPath2)" fill="none" width="468.2773" rx="4" ry="4" height="83.8438"/>
<path fill="none" d="M2407.4495 4701.0337 L3126.9299 3865.5952" clip-path="url(#clipPath2)"/>
<path d="M3132.1504 3859.5334 L3120.531 3865.3633 L3126.2773 3866.353 L3128.1082 3871.8892 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3366.4639 3724.209 L5145.4067 3040.5356" clip-path="url(#clipPath2)"/>
<path d="M5152.874 3037.6658 L5139.8789 3037.3035 L5144.4731 3040.8945 L5143.4663 3046.6379 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3144.5249 3859.5225 L2796.2148 4372.9141" clip-path="url(#clipPath2)"/>
<path d="M2791.7234 4379.5342 L2802.5981 4372.4111 L2796.7764 4372.0864 L2794.323 4366.7969 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3212.5562 3859.5176 L3520.0212 4799.6387" clip-path="url(#clipPath2)"/>
<path d="M3522.5081 4807.2422 L3523.53 4794.2822 L3519.7104 4798.688 L3514.0254 4797.3911 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="2798.4145" y="2671.0648" clip-path="url(#clipPath2)" width="410.2227" rx="4" ry="4" height="93.3984" stroke="none"/>
<rect x="2798.4145" y="2671.0648" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="410.2227" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3173.1289" xml:space="preserve" y="2686.988" clip-path="url(#clipPath2)" stroke="none">byte</text>
<rect x="2798.4145" y="2671.0648" clip-path="url(#clipPath2)" fill="none" width="410.2227" stroke-dasharray="6,2" rx="4" ry="4" height="93.3984"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="2813.4145" y="2707.5257" clip-path="url(#clipPath2)" width="380.2227" rx="4" ry="4" height="41.9375" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="2820.4146" xml:space="preserve" y="2725.6643" clip-path="url(#clipPath2)" stroke="none">The smallest individually accessible unit on most computers,</text>
<text x="2820.4146" xml:space="preserve" y="2739.6331" clip-path="url(#clipPath2)" stroke="none">consisting of 8 binary digits.</text>
<rect x="2813.4145" y="2707.5257" clip-path="url(#clipPath2)" fill="none" width="380.2227" rx="4" ry="4" height="41.9375"/>
<path fill="none" d="M3178.6624 3724.2388 L3013.0266 2772.3633" clip-path="url(#clipPath2)"/>
<path d="M3011.6553 2764.4817 L3008.7864 2777.1611 L3013.198 2773.3484 L3018.6382 2775.447 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3055.4399 2671.0823 L3223.3413 2520.1042" clip-path="url(#clipPath2)"/>
<path d="M3229.29 2514.7551 L3217.0237 2519.0608 L3222.5977 2520.7729 L3223.7102 2526.4968 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="2299.0241" y="2529.9172" clip-path="url(#clipPath2)" width="479.6152" rx="4" ry="4" height="219.1172" stroke="none"/>
<rect x="2299.0241" y="2529.9172" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="479.6152" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="2712.7209" xml:space="preserve" y="2545.8406" clip-path="url(#clipPath2)" stroke="none">coercion</text>
<rect x="2299.0241" y="2529.9172" clip-path="url(#clipPath2)" fill="none" width="479.6152" stroke-dasharray="6,2" rx="4" ry="4" height="219.1172"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="2314.0241" y="2566.3782" clip-path="url(#clipPath2)" width="449.6152" rx="4" ry="4" height="167.6562" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="2321.0242" xml:space="preserve" y="2584.5168" clip-path="url(#clipPath2)" stroke="none">To automatically convert a value to another type or subtype so that an</text>
<text x="2321.0242" xml:space="preserve" y="2598.4856" clip-path="url(#clipPath2)" stroke="none">operation involving it will work.</text>
<text x="2321.0242" xml:space="preserve" y="2612.4543" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2321.0242" xml:space="preserve" y="2626.4231" clip-path="url(#clipPath2)" stroke="none"> 'number' .. 3 -- the number will be coerced to a string</text>
<text x="2321.0242" xml:space="preserve" y="2640.3918" clip-path="url(#clipPath2)" stroke="none"> '3' + 10 -- the string will be coerced to a number</text>
<text x="2321.0242" xml:space="preserve" y="2654.3606" clip-path="url(#clipPath2)" stroke="none"> 3.1415 * 10 -- the integer will be coerced to float</text>
<text x="2321.0242" xml:space="preserve" y="2668.3293" clip-path="url(#clipPath2)" stroke="none"> tbl = {[3.0]=true} -- the float will be coerced to integer</text>
<text x="2321.0242" xml:space="preserve" y="2682.2981" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="2321.0242" xml:space="preserve" y="2696.2668" clip-path="url(#clipPath2)" stroke="none">Coercion, especially string-to-number coercion, is considered</text>
<text x="2321.0242" xml:space="preserve" y="2710.2356" clip-path="url(#clipPath2)" stroke="none">undesirable by many, and Lua 5.3 can be compiled with options set that</text>
<text x="2321.0242" xml:space="preserve" y="2724.2043" clip-path="url(#clipPath2)" stroke="none">will make either or both of the first two examples illegal.</text>
<rect x="2314.0241" y="2566.3782" clip-path="url(#clipPath2)" fill="none" width="449.6152" rx="4" ry="4" height="167.6562"/>
<path fill="none" d="M3152.1902 3724.2334 L2604.708 2755.9814" clip-path="url(#clipPath2)"/>
<path d="M2600.7703 2749.0176 L2602.3245 2761.9243 L2605.2002 2756.8518 L2611.0293 2757.0022 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="8255.987" y="496.3364" clip-path="url(#clipPath2)" width="445.8887" rx="4" ry="4" height="191.1797" stroke="none"/>
<rect x="8255.987" y="496.3364" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="445.8887" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="8622.6494" xml:space="preserve" y="512.2597" clip-path="url(#clipPath2)" stroke="none">statement</text>
<rect x="8255.987" y="496.3364" clip-path="url(#clipPath2)" fill="none" width="445.8887" stroke-dasharray="6,2" rx="4" ry="4" height="191.1797"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="8270.987" y="532.7973" clip-path="url(#clipPath2)" width="415.8887" rx="4" ry="4" height="139.7188" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="8277.9873" xml:space="preserve" y="550.936" clip-path="url(#clipPath2)" stroke="none">A part of a chunk that cannot be split any further into smaller</text>
<text x="8277.9873" xml:space="preserve" y="564.9047" clip-path="url(#clipPath2)" stroke="none">chunks. (This definition is a loose one: for a precise definition, one</text>
<text x="8277.9873" xml:space="preserve" y="578.8735" clip-path="url(#clipPath2)" stroke="none">needs to study the syntax of Lua). </text>
<text x="8277.9873" xml:space="preserve" y="592.8422" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="8277.9873" xml:space="preserve" y="606.811" clip-path="url(#clipPath2)" stroke="none">Lua is unusual in that the statement separator ';' is almost entirely</text>
<text x="8277.9873" xml:space="preserve" y="620.7797" clip-path="url(#clipPath2)" stroke="none">optional.</text>
<text x="8277.9873" xml:space="preserve" y="634.7485" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="8277.9873" xml:space="preserve" y="648.7172" clip-path="url(#clipPath2)" stroke="none"> a = b; func(1,2,4) -- two statements, separated by a semicolon</text>
<text x="8277.9873" xml:space="preserve" y="662.686" clip-path="url(#clipPath2)" stroke="none"> a = b func(1,2,4) -- still two statements</text>
<rect x="8270.987" y="532.7973" clip-path="url(#clipPath2)" fill="none" width="415.8887" rx="4" ry="4" height="139.7188"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="8903" y="685.0625" clip-path="url(#clipPath2)" width="392.8672" rx="4" ry="4" height="121.3359" stroke="none"/>
<rect x="8903" y="685.0625" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="392.8672" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="9258.9824" xml:space="preserve" y="700.9858" clip-path="url(#clipPath2)" stroke="none">shell</text>
<rect x="8903" y="685.0625" clip-path="url(#clipPath2)" fill="none" width="392.8672" stroke-dasharray="6,2" rx="4" ry="4" height="121.3359"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="8918" y="721.5234" clip-path="url(#clipPath2)" width="362.8672" rx="4" ry="4" height="69.875" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="8925" xml:space="preserve" y="739.6621" clip-path="url(#clipPath2)" stroke="none">A program that executes operating system commands.</text>
<text x="8925" xml:space="preserve" y="753.6309" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="8925" xml:space="preserve" y="767.5996" clip-path="url(#clipPath2)" stroke="none">If it does so by responding to what a user types in, it is an</text>
<text x="8925" xml:space="preserve" y="781.5684" clip-path="url(#clipPath2)" stroke="none">"interactive shell" or "command window".</text>
<rect x="8918" y="721.5234" clip-path="url(#clipPath2)" fill="none" width="362.8672" rx="4" ry="4" height="69.875"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="713.8142" y="1975.632" clip-path="url(#clipPath2)" width="443.4219" rx="4" ry="4" height="121.3359" stroke="none"/>
<rect x="713.8142" y="1975.632" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="443.4219" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="1097.7556" xml:space="preserve" y="1991.5553" clip-path="url(#clipPath2)" stroke="none">shadow</text>
<rect x="713.8142" y="1975.632" clip-path="url(#clipPath2)" fill="none" width="443.4219" stroke-dasharray="6,2" rx="4" ry="4" height="121.3359"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="728.8142" y="2012.0929" clip-path="url(#clipPath2)" width="413.4219" rx="4" ry="4" height="69.875" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="735.8141" xml:space="preserve" y="2030.2316" clip-path="url(#clipPath2)" stroke="none">To make a variable that is currently visible invisible by declaring a</text>
<text x="735.8141" xml:space="preserve" y="2044.2003" clip-path="url(#clipPath2)" stroke="none">local variable of the same name. </text>
<text x="735.8141" xml:space="preserve" y="2058.1692" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="735.8141" xml:space="preserve" y="2072.1379" clip-path="url(#clipPath2)" stroke="none">See scope.</text>
<rect x="728.8142" y="2012.0929" clip-path="url(#clipPath2)" fill="none" width="413.4219" rx="4" ry="4" height="69.875"/>
<path fill="none" d="M1041.703 2096.9644 L1431.4259 2319.6316" clip-path="url(#clipPath2)"/>
<path d="M1438.3721 2323.6003 L1430.4333 2313.3059 L1430.5576 2319.1355 L1425.4724 2321.9885 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M890.8882 1975.6069 L647.0673 1644.0831" clip-path="url(#clipPath2)"/>
<path d="M642.3275 1637.6384 L645.4093 1650.2678 L647.6598 1644.8887 L653.4651 1644.3431 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M1064.2517 1975.6475 L1392.4927 1820.9893" clip-path="url(#clipPath2)"/>
<path d="M1399.7296 1817.5793 L1386.743 1818.1711 L1391.5881 1821.4155 L1391.0055 1827.2173 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M1104.5614 1975.6279 L1181.6239 1947.9679" clip-path="url(#clipPath2)"/>
<path d="M1189.1536 1945.2653 L1176.1699 1944.6132 L1180.6827 1948.3057 L1179.5482 1954.0251 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M966.1889 2096.9807 L1314.33 2785.9207" clip-path="url(#clipPath2)"/>
<path d="M1317.9381 2793.0608 L1316.9885 2780.0955 L1313.8789 2785.0281 L1308.0634 2784.6057 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="1654.4036" y="4000.475" clip-path="url(#clipPath2)" width="423.9395" rx="4" ry="4" height="107.3672" stroke="none"/>
<rect x="1654.4036" y="4000.475" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="423.9395" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="2016.8411" xml:space="preserve" y="4016.3984" clip-path="url(#clipPath2)" stroke="none">sentinel</text>
<rect x="1654.4036" y="4000.475" clip-path="url(#clipPath2)" fill="none" width="423.9395" stroke-dasharray="6,2" rx="4" ry="4" height="107.3672"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="1669.4036" y="4036.9359" clip-path="url(#clipPath2)" width="393.9395" rx="4" ry="4" height="55.9062" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="1676.4036" xml:space="preserve" y="4055.0747" clip-path="url(#clipPath2)" stroke="none">A special value in a list that cannot be mistaken for a genuine</text>
<text x="1676.4036" xml:space="preserve" y="4069.0435" clip-path="url(#clipPath2)" stroke="none">element of the list. Used to indicate that the list stopped at the</text>
<text x="1676.4036" xml:space="preserve" y="4083.0122" clip-path="url(#clipPath2)" stroke="none">previous element.</text>
<rect x="1669.4036" y="4036.9359" clip-path="url(#clipPath2)" fill="none" width="393.9395" rx="4" ry="4" height="55.9062"/>
<path fill="none" d="M1960.1437 4000.4805 L2848.4758 3491.9617" clip-path="url(#clipPath2)"/>
<path d="M2855.4187 3487.9873 L2842.5203 3489.6096 L2847.6079 3492.4585 L2847.4883 3498.2883 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="8903" y="533.2432" clip-path="url(#clipPath2)" width="284.1055" rx="4" ry="4" height="107.3672" stroke="none"/>
<rect x="8903" y="533.2432" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="284.1055" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="9147.8027" xml:space="preserve" y="549.1666" clip-path="url(#clipPath2)" stroke="none">REPL</text>
<rect x="8903" y="533.2432" clip-path="url(#clipPath2)" fill="none" width="284.1055" stroke-dasharray="6,2" rx="4" ry="4" height="107.3672"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="8918" y="569.7041" clip-path="url(#clipPath2)" width="254.1055" rx="4" ry="4" height="55.9062" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="8925" xml:space="preserve" y="587.8428" clip-path="url(#clipPath2)" stroke="none">Acronym for Read-Evaluate-Print Loop.</text>
<text x="8925" xml:space="preserve" y="601.8116" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="8925" xml:space="preserve" y="615.7803" clip-path="url(#clipPath2)" stroke="none">Basically what the Lua interpreter does.</text>
<rect x="8918" y="569.7041" clip-path="url(#clipPath2)" fill="none" width="254.1055" rx="4" ry="4" height="55.9062"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="9559.6819" y="-0.9375" clip-path="url(#clipPath2)" width="447.7227" rx="4" ry="4" height="121.3359" stroke="none"/>
<rect x="9559.6819" y="-0.9375" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="447.7227" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="9939.6553" xml:space="preserve" y="14.9858" clip-path="url(#clipPath2)" stroke="none">interpret</text>
<rect x="9559.6819" y="-0.9375" clip-path="url(#clipPath2)" fill="none" width="447.7227" stroke-dasharray="6,2" rx="4" ry="4" height="121.3359"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="9574.6819" y="35.5234" clip-path="url(#clipPath2)" width="417.7227" rx="4" ry="4" height="69.875" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="9581.6816" xml:space="preserve" y="53.6621" clip-path="url(#clipPath2)" stroke="none">To compile code and execute it in one go, especially inside a REPL.</text>
<text x="9581.6816" xml:space="preserve" y="67.6309" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="9581.6816" xml:space="preserve" y="81.5996" clip-path="url(#clipPath2)" stroke="none">An interpreter is a program that does this. The interpreter is the</text>
<text x="9581.6816" xml:space="preserve" y="95.5684" clip-path="url(#clipPath2)" stroke="none">program "lua" bundled with the Lua distribution.</text>
<rect x="9574.6819" y="35.5234" clip-path="url(#clipPath2)" fill="none" width="417.7227" rx="4" ry="4" height="69.875"/>
<path fill="none" d="M9111.6289 533.2557 L9683.457 125.0369" clip-path="url(#clipPath2)"/>
<path d="M9689.9678 120.3886 L9677.2959 123.2917 L9682.6426 125.618 L9683.1064 131.4305 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M9707.1621 120.4012 L9135.3555 528.6042" clip-path="url(#clipPath2)"/>
<path d="M9128.8447 533.2526 L9141.5166 530.3494 L9136.1699 528.0232 L9135.7061 522.2108 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="10053" y="290.125" clip-path="url(#clipPath2)" width="410.2637" rx="4" ry="4" height="177.2109" stroke="none"/>
<rect x="10053" y="290.125" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="410.2637" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="10406.3828" xml:space="preserve" y="306.0483" clip-path="url(#clipPath2)" stroke="none">prompt</text>
<rect x="10053" y="290.125" clip-path="url(#clipPath2)" fill="none" width="410.2637" stroke-dasharray="6,2" rx="4" ry="4" height="177.2109"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="10068" y="326.5859" clip-path="url(#clipPath2)" width="380.2637" rx="4" ry="4" height="125.75" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="10075" xml:space="preserve" y="344.7246" clip-path="url(#clipPath2)" stroke="none">1. To give a hint that a terminal user should type something.</text>
<text x="10075" xml:space="preserve" y="358.6934" clip-path="url(#clipPath2)" stroke="none">2. A character string used for that purpose.</text>
<text x="10075" xml:space="preserve" y="372.6621" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="10075" xml:space="preserve" y="386.6309" clip-path="url(#clipPath2)" stroke="none">A short message or symbol </text>
<text x="10075" xml:space="preserve" y="400.5996" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="10075" xml:space="preserve" y="414.5684" clip-path="url(#clipPath2)" stroke="none"> &gt; -- the usual Lua prompt </text>
<text x="10075" xml:space="preserve" y="428.5371" clip-path="url(#clipPath2)" stroke="none"> &gt;&gt; -- the prompt when wat you typed was not enough </text>
<text x="10075" xml:space="preserve" y="442.5059" clip-path="url(#clipPath2)" stroke="none"> name? -- a typical prompt issued by an appplication</text>
<rect x="10068" y="326.5859" clip-path="url(#clipPath2)" fill="none" width="380.2637" rx="4" ry="4" height="125.75"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="7468.2376" y="2130.8017" clip-path="url(#clipPath2)" width="388.8477" rx="4" ry="4" height="93.3984" stroke="none"/>
<rect x="7468.2376" y="2130.8017" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="388.8477" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="7790.7275" xml:space="preserve" y="2146.7251" clip-path="url(#clipPath2)" stroke="none">program</text>
<rect x="7468.2376" y="2130.8017" clip-path="url(#clipPath2)" fill="none" width="388.8477" stroke-dasharray="6,2" rx="4" ry="4" height="93.3984"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="7483.2376" y="2167.2626" clip-path="url(#clipPath2)" width="358.8477" rx="4" ry="4" height="41.9375" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="7490.2378" xml:space="preserve" y="2185.4014" clip-path="url(#clipPath2)" stroke="none">1. A set of instructions to be performed by a computer.</text>
<text x="7490.2378" xml:space="preserve" y="2199.3701" clip-path="url(#clipPath2)" stroke="none">2. To write such instructions in a programming language.</text>
<rect x="7483.2376" y="2167.2626" clip-path="url(#clipPath2)" fill="none" width="358.8477" rx="4" ry="4" height="41.9375"/>
<path fill="none" d="M7491.1597 2130.8042 L6979.9385 1991.6086" clip-path="url(#clipPath2)"/>
<path d="M6972.2197 1989.5068 L6982.4844 1997.4838 L6980.9038 1991.8713 L6985.1118 1987.8351 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="2775.9496" y="1342.3934" clip-path="url(#clipPath2)" width="463.8887" rx="4" ry="4" height="93.3984" stroke="none"/>
<rect x="2775.9496" y="1342.3934" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="463.8887" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3161.0732" xml:space="preserve" y="1358.3168" clip-path="url(#clipPath2)" stroke="none">procedure</text>
<rect x="2775.9496" y="1342.3934" clip-path="url(#clipPath2)" fill="none" width="463.8887" stroke-dasharray="6,2" rx="4" ry="4" height="93.3984"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="2790.9496" y="1378.8543" clip-path="url(#clipPath2)" width="433.8887" rx="4" ry="4" height="41.9375" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="2797.9497" xml:space="preserve" y="1396.993" clip-path="url(#clipPath2)" stroke="none">A synonym for function, especially when the function is one that does</text>
<text x="2797.9497" xml:space="preserve" y="1410.9618" clip-path="url(#clipPath2)" stroke="none">not return any values.</text>
<rect x="2790.9496" y="1378.8543" clip-path="url(#clipPath2)" fill="none" width="433.8887" rx="4" ry="4" height="41.9375"/>
<path fill="none" d="M3042.5251 1435.7642 L3664.5884 2274.1033" clip-path="url(#clipPath2)"/>
<path d="M3669.3555 2280.5278 L3666.2202 2267.9116 L3663.9924 2273.3003 L3658.1895 2273.8704 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="5957.5153" y="1920.0865" clip-path="url(#clipPath2)" width="466.2031" rx="4" ry="4" height="163.2422" stroke="none"/>
<rect x="5957.5153" y="1920.0865" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="466.2031" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="6366.3398" xml:space="preserve" y="1936.0099" clip-path="url(#clipPath2)" stroke="none">pattern</text>
<rect x="5957.5153" y="1920.0865" clip-path="url(#clipPath2)" fill="none" width="466.2031" stroke-dasharray="6,2" rx="4" ry="4" height="163.2422"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="5972.5153" y="1956.5474" clip-path="url(#clipPath2)" width="436.2031" rx="4" ry="4" height="111.7812" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="5979.5151" xml:space="preserve" y="1974.6862" clip-path="url(#clipPath2)" stroke="none">A string that describes properties and substrings that another string</text>
<text x="5979.5151" xml:space="preserve" y="1988.6549" clip-path="url(#clipPath2)" stroke="none">might have.</text>
<text x="5979.5151" xml:space="preserve" y="2002.6237" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5979.5151" xml:space="preserve" y="2016.5924" clip-path="url(#clipPath2)" stroke="none">Most patterns are instantly recognizable by the many percent signs in</text>
<text x="5979.5151" xml:space="preserve" y="2030.5612" clip-path="url(#clipPath2)" stroke="none">them.</text>
<text x="5979.5151" xml:space="preserve" y="2044.5299" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5979.5151" xml:space="preserve" y="2058.4985" clip-path="url(#clipPath2)" stroke="none">The string library contains several functions that exploit patterns.</text>
<rect x="5972.5153" y="1956.5474" clip-path="url(#clipPath2)" fill="none" width="436.2031" rx="4" ry="4" height="111.7812"/>
<path fill="none" d="M6120.8047 2083.3499 L5507.8804 2800.137" clip-path="url(#clipPath2)"/>
<path d="M5502.6812 2806.217 L5514.2803 2800.3464 L5508.5303 2799.377 L5506.6802 2793.8474 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="10053" y="511.0625" clip-path="url(#clipPath2)" width="474.623" rx="4" ry="4" height="121.3359" stroke="none"/>
<rect x="10053" y="511.0625" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="474.623" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="10496.5752" xml:space="preserve" y="526.9858" clip-path="url(#clipPath2)" stroke="none">pair</text>
<rect x="10053" y="511.0625" clip-path="url(#clipPath2)" fill="none" width="474.623" stroke-dasharray="6,2" rx="4" ry="4" height="121.3359"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="10068" y="547.5234" clip-path="url(#clipPath2)" width="444.623" rx="4" ry="4" height="69.875" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="10075" xml:space="preserve" y="565.6621" clip-path="url(#clipPath2)" stroke="none">Two related values, especially a key in a table and its associated value.</text>
<text x="10075" xml:space="preserve" y="579.6309" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="10075" xml:space="preserve" y="593.5996" clip-path="url(#clipPath2)" stroke="none"> for k,v in pairs(tbl) do -- start of a loop that iterates over all</text>
<text x="10075" xml:space="preserve" y="607.5684" clip-path="url(#clipPath2)" stroke="none"> -- key-value pairs k,v in 'tbl'</text>
<rect x="10068" y="547.5234" clip-path="url(#clipPath2)" fill="none" width="444.623" rx="4" ry="4" height="69.875"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3253.6285" y="5195.0769" clip-path="url(#clipPath2)" width="466.4023" rx="4" ry="4" height="344.8359" stroke="none"/>
<rect x="3253.6285" y="5195.0769" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="466.4023" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3699.0757" xml:space="preserve" y="5211.0005" clip-path="url(#clipPath2)" stroke="none">inf</text>
<rect x="3253.6285" y="5195.0769" clip-path="url(#clipPath2)" fill="none" width="466.4023" stroke-dasharray="6,2" rx="4" ry="4" height="344.8359"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3268.6285" y="5231.5379" clip-path="url(#clipPath2)" width="436.4023" rx="4" ry="4" height="293.375" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3275.6284" xml:space="preserve" y="5249.6768" clip-path="url(#clipPath2)" stroke="none">Short for "Infinity".</text>
<text x="3275.6284" xml:space="preserve" y="5263.6455" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3275.6284" xml:space="preserve" y="5277.6143" clip-path="url(#clipPath2)" stroke="none">An exceptional value of type number (also written 'INF' and 'inf'),</text>
<text x="3275.6284" xml:space="preserve" y="5291.583" clip-path="url(#clipPath2)" stroke="none">which arises the result of overflow, division by zero etc. If you need</text>
<text x="3275.6284" xml:space="preserve" y="5305.5518" clip-path="url(#clipPath2)" stroke="none">the notation Inf, assign such a value to the name. Inf is not a Lua</text>
<text x="3275.6284" xml:space="preserve" y="5319.5205" clip-path="url(#clipPath2)" stroke="none">keyword, but appears in output, as does -inf.</text>
<text x="3275.6284" xml:space="preserve" y="5333.4893" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3275.6284" xml:space="preserve" y="5347.458" clip-path="url(#clipPath2)" stroke="none">Inf and -Inf are a legal keys in a table.</text>
<text x="3275.6284" xml:space="preserve" y="5361.4268" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3275.6284" xml:space="preserve" y="5375.3955" clip-path="url(#clipPath2)" stroke="none">Inf can freely be used in expressions, and behaves the way one would</text>
<text x="3275.6284" xml:space="preserve" y="5389.3643" clip-path="url(#clipPath2)" stroke="none">think it should.</text>
<text x="3275.6284" xml:space="preserve" y="5403.333" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3275.6284" xml:space="preserve" y="5417.3018" clip-path="url(#clipPath2)" stroke="none"> Inf = 1/0</text>
<text x="3275.6284" xml:space="preserve" y="5431.2705" clip-path="url(#clipPath2)" stroke="none"> 0-Inf -- -inf</text>
<text x="3275.6284" xml:space="preserve" y="5445.2393" clip-path="url(#clipPath2)" stroke="none"> Inf + 1 -- inf</text>
<text x="3275.6284" xml:space="preserve" y="5459.208" clip-path="url(#clipPath2)" stroke="none"> Inf-Inf -- -nan</text>
<text x="3275.6284" xml:space="preserve" y="5473.1768" clip-path="url(#clipPath2)" stroke="none"> 1/Inf -- 0.0 </text>
<text x="3275.6284" xml:space="preserve" y="5487.1455" clip-path="url(#clipPath2)" stroke="none"> 1/(-Inf) -- -0.0</text>
<text x="3275.6284" xml:space="preserve" y="5501.1143" clip-path="url(#clipPath2)" stroke="none"> Inf &lt; Inf -- false</text>
<text x="3275.6284" xml:space="preserve" y="5515.083" clip-path="url(#clipPath2)" stroke="none"> math.type(Inf) -- float</text>
<rect x="3268.6285" y="5231.5379" clip-path="url(#clipPath2)" fill="none" width="436.4023" rx="4" ry="4" height="293.375"/>
<path fill="none" d="M3702.8689 5195.0898 L4189.4653 4806.7729" clip-path="url(#clipPath2)"/>
<path d="M4195.7183 4801.7827 L4183.2202 4805.3599 L4188.6836 4807.3965 L4189.458 4813.1758 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M3354.2419 5195.0962 L2800.6643 4475.3008" clip-path="url(#clipPath2)"/>
<path d="M2795.7874 4468.9595 L2799.1394 4481.52 L2801.2739 4476.0938 L2807.0664 4475.4238 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="717.8762" y="523.9477" clip-path="url(#clipPath2)" width="437.5859" rx="4" ry="4" height="121.3359" stroke="none"/>
<rect x="717.8762" y="523.9477" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="437.5859" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="1134.3386" xml:space="preserve" y="539.871" clip-path="url(#clipPath2)" stroke="none">_G</text>
<rect x="717.8762" y="523.9477" clip-path="url(#clipPath2)" fill="none" width="437.5859" stroke-dasharray="6,2" rx="4" ry="4" height="121.3359"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="732.8762" y="560.4087" clip-path="url(#clipPath2)" width="407.5859" rx="4" ry="4" height="69.875" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="739.8762" xml:space="preserve" y="578.5473" clip-path="url(#clipPath2)" stroke="none">On startup, _G is a global variable equal to _ENV.</text>
<text x="739.8762" xml:space="preserve" y="592.5161" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="739.8762" xml:space="preserve" y="606.4848" clip-path="url(#clipPath2)" stroke="none">There are no rules for _G. The name might be an abbreviation for</text>
<text x="739.8762" xml:space="preserve" y="620.4536" clip-path="url(#clipPath2)" stroke="none">"global", but Lua does not actually use it for any purpose.</text>
<rect x="732.8762" y="560.4087" clip-path="url(#clipPath2)" fill="none" width="407.5859" rx="4" ry="4" height="69.875"/>
<path fill="none" d="M1028.5212 645.2665 L1763.8705 1130.8248" clip-path="url(#clipPath2)"/>
<path d="M1770.5464 1135.233 L1763.2876 1124.4482 L1763.036 1130.2738 L1757.7773 1132.7932 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M981.3146 523.9433 L1171.5833 265.3713" clip-path="url(#clipPath2)"/>
<path d="M1176.3247 258.9278 L1165.1854 265.6297 L1170.9906 266.1768 L1173.2397 271.5565 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="7954.3673" y="-0.8125" clip-path="url(#clipPath2)" width="437.9961" rx="4" ry="4" height="233.0859" stroke="none"/>
<rect x="7954.3673" y="-0.8125" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="437.9961" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="8319.7578" xml:space="preserve" y="15.1108" clip-path="url(#clipPath2)" stroke="none">definition</text>
<rect x="7954.3673" y="-0.8125" clip-path="url(#clipPath2)" fill="none" width="437.9961" stroke-dasharray="6,2" rx="4" ry="4" height="233.0859"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="7969.3673" y="35.6484" clip-path="url(#clipPath2)" width="407.9961" rx="4" ry="4" height="181.625" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="7976.3672" xml:space="preserve" y="53.7871" clip-path="url(#clipPath2)" stroke="none">A chunk that fully specifies what a function does.</text>
<text x="7976.3672" xml:space="preserve" y="67.7559" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="7976.3672" xml:space="preserve" y="81.7246" clip-path="url(#clipPath2)" stroke="none">The definition starts with the keyword "function" and stops at the</text>
<text x="7976.3672" xml:space="preserve" y="95.6934" clip-path="url(#clipPath2)" stroke="none">matching keyword "end".</text>
<text x="7976.3672" xml:space="preserve" y="109.6621" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="7976.3672" xml:space="preserve" y="123.6309" clip-path="url(#clipPath2)" stroke="none"> function fct(x,y)</text>
<text x="7976.3672" xml:space="preserve" y="137.5996" clip-path="url(#clipPath2)" stroke="none"> if x&lt;y then</text>
<text x="7976.3672" xml:space="preserve" y="151.5684" clip-path="url(#clipPath2)" stroke="none"> return y-x</text>
<text x="7976.3672" xml:space="preserve" y="165.5371" clip-path="url(#clipPath2)" stroke="none"> else</text>
<text x="7976.3672" xml:space="preserve" y="179.5059" clip-path="url(#clipPath2)" stroke="none"> return x-y</text>
<text x="7976.3672" xml:space="preserve" y="193.4746" clip-path="url(#clipPath2)" stroke="none"> end -- definition does not stop here, this 'end' matches 'if'</text>
<text x="7976.3672" xml:space="preserve" y="207.4434" clip-path="url(#clipPath2)" stroke="none"> end -- definition stops here </text>
<rect x="7969.3673" y="35.6484" clip-path="url(#clipPath2)" fill="none" width="407.9961" rx="4" ry="4" height="181.625"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="7291.5198" y="960.387" clip-path="url(#clipPath2)" width="424.3027" rx="4" ry="4" height="107.3672" stroke="none"/>
<rect x="7291.5198" y="960.387" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="424.3027" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="7668.3682" xml:space="preserve" y="976.3104" clip-path="url(#clipPath2)" stroke="none">chunk</text>
<rect x="7291.5198" y="960.387" clip-path="url(#clipPath2)" fill="none" width="424.3027" stroke-dasharray="6,2" rx="4" ry="4" height="107.3672"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="7306.5198" y="996.8479" clip-path="url(#clipPath2)" width="394.3027" rx="4" ry="4" height="55.9062" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="7313.5195" xml:space="preserve" y="1014.9866" clip-path="url(#clipPath2)" stroke="none">A block of Lua code that can be compiled successfully by itself.</text>
<text x="7313.5195" xml:space="preserve" y="1028.9553" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="7313.5195" xml:space="preserve" y="1042.9241" clip-path="url(#clipPath2)" stroke="none">It consists of one or more statements.</text>
<rect x="7306.5198" y="996.8479" clip-path="url(#clipPath2)" fill="none" width="394.3027" rx="4" ry="4" height="55.9062"/>
<path fill="none" d="M8086.4858 232.2723 L7548.4893 953.951" clip-path="url(#clipPath2)"/>
<path d="M7543.7075 960.3648 L7554.8887 953.7327 L7549.0869 953.1494 L7546.8716 947.7557 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M7627.6919 960.3879 L8251.2725 690.4692" clip-path="url(#clipPath2)"/>
<path d="M8258.6143 687.2913 L8245.6152 687.4695 L8250.3545 690.8664 L8249.5879 696.6467 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="7390.2223" y="1803.9621" clip-path="url(#clipPath2)" width="291.7812" rx="4" ry="4" height="81.4609" stroke="none"/>
<rect x="7390.2223" y="1803.9621" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="291.7812" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="7643.8291" xml:space="preserve" y="1819.8855" clip-path="url(#clipPath2)" stroke="none">code</text>
<rect x="7390.2223" y="1803.9621" clip-path="url(#clipPath2)" fill="none" width="291.7812" stroke-dasharray="6,2" rx="4" ry="4" height="81.4609"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="7405.2223" y="1840.4231" clip-path="url(#clipPath2)" width="261.7812" rx="4" ry="4" height="30" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="7412.2222" xml:space="preserve" y="1859.5774" clip-path="url(#clipPath2)" stroke="none">Text written in a programming language.</text>
<rect x="7405.2223" y="1840.4231" clip-path="url(#clipPath2)" fill="none" width="261.7812" rx="4" ry="4" height="30"/>
<path fill="none" d="M7505.7671 1067.7335 L7534.2095 1795.9634" clip-path="url(#clipPath2)"/>
<path d="M7534.522 1803.9573 L7539.0493 1791.7711 L7534.1704 1794.9641 L7529.0571 1792.1617 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M7390.2686 1859.7029 L6980.1455 1901.9126" clip-path="url(#clipPath2)"/>
<path d="M6972.1875 1902.7316 L6984.6362 1906.4768 L6981.1401 1901.8102 L6983.6128 1896.5293 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M7533.7207 1885.4318 L7472.8569 2921.9067" clip-path="url(#clipPath2)"/>
<path d="M7472.3877 2929.8931 L7478.083 2918.207 L7472.9155 2920.9084 L7468.1001 2917.6204 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="5745.3123" y="1588.8455" clip-path="url(#clipPath2)" width="460.1387" rx="4" ry="4" height="163.2422" stroke="none"/>
<rect x="5745.3123" y="1588.8455" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="460.1387" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="6144.3296" xml:space="preserve" y="1604.7688" clip-path="url(#clipPath2)" stroke="none">compile</text>
<rect x="5745.3123" y="1588.8455" clip-path="url(#clipPath2)" fill="none" width="460.1387" stroke-dasharray="6,2" rx="4" ry="4" height="163.2422"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="5760.3123" y="1625.3064" clip-path="url(#clipPath2)" width="430.1387" rx="4" ry="4" height="111.7812" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="5767.312" xml:space="preserve" y="1643.4451" clip-path="url(#clipPath2)" stroke="none">To convert code written in a programming language such as Lua to a</text>
<text x="5767.312" xml:space="preserve" y="1657.4138" clip-path="url(#clipPath2)" stroke="none">form that is computer-friendly rather than human-friendly.</text>
<text x="5767.312" xml:space="preserve" y="1671.3826" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5767.312" xml:space="preserve" y="1685.3513" clip-path="url(#clipPath2)" stroke="none">In the case of Lua, the latter form is known as bytecode.</text>
<text x="5767.312" xml:space="preserve" y="1699.3201" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="5767.312" xml:space="preserve" y="1713.2888" clip-path="url(#clipPath2)" stroke="none">A compiler is a program that (or a function inside a program) that</text>
<text x="5767.312" xml:space="preserve" y="1727.2576" clip-path="url(#clipPath2)" stroke="none">compiles code.</text>
<rect x="5760.3123" y="1625.3064" clip-path="url(#clipPath2)" fill="none" width="430.1387" rx="4" ry="4" height="111.7812"/>
<path fill="none" d="M7378.7002 1067.7454 L6172.7505 1585.6971" clip-path="url(#clipPath2)"/>
<path d="M6165.3999 1588.8542 L6178.3989 1588.7126 L6173.6694 1585.3025 L6174.4526 1579.5244 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M6205.4116 1747.4082 L6531.1206 1856.3529" clip-path="url(#clipPath2)"/>
<path d="M6538.7075 1858.8906 L6528.9131 1850.3423 L6530.1724 1856.0358 L6525.7412 1859.8258 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M5745.3081 1738.9591 L3933.7812 2278.2478" clip-path="url(#clipPath2)"/>
<path d="M3926.1138 2280.5303 L3939.0415 2281.8987 L3934.7397 2277.9624 L3936.1885 2272.3145 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="6379.1258" y="2627.54" clip-path="url(#clipPath2)" width="475.4492" rx="4" ry="4" height="121.3359" stroke="none"/>
<rect x="6379.1258" y="2627.54" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="475.4492" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="6782.8926" xml:space="preserve" y="2643.4634" clip-path="url(#clipPath2)" stroke="none">bytecode</text>
<rect x="6379.1258" y="2627.54" clip-path="url(#clipPath2)" fill="none" width="475.4492" stroke-dasharray="6,2" rx="4" ry="4" height="121.3359"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="6394.1258" y="2664.001" clip-path="url(#clipPath2)" width="445.4492" rx="4" ry="4" height="69.875" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="6401.126" xml:space="preserve" y="2682.1396" clip-path="url(#clipPath2)" stroke="none">An implementation-dependent represention of a Lua program or part of</text>
<text x="6401.126" xml:space="preserve" y="2696.1084" clip-path="url(#clipPath2)" stroke="none">one as instructions to be executed by a virtual machine.</text>
<text x="6401.126" xml:space="preserve" y="2710.0771" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="6401.126" xml:space="preserve" y="2724.0459" clip-path="url(#clipPath2)" stroke="none">Though representable in Lua as a string, it is not legible.</text>
<rect x="6394.1258" y="2664.001" clip-path="url(#clipPath2)" fill="none" width="445.4492" rx="4" ry="4" height="69.875"/>
<path fill="none" d="M6026.8081 1752.0586 L6574.3564 2620.7881" clip-path="url(#clipPath2)"/>
<path d="M6578.6221 2627.5559 L6576.4536 2614.738 L6573.8232 2619.9421 L6567.9937 2620.0701 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M6595.5479 2627.5432 L6507.6924 2377.3506" clip-path="url(#clipPath2)"/>
<path d="M6505.042 2369.8025 L6504.2998 2382.7812 L6508.0239 2378.2942 L6513.7354 2379.4683 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M6741.0977 2627.5334 L7559.8232 2227.7205" clip-path="url(#clipPath2)"/>
<path d="M7567.0117 2224.2102 L7554.0347 2224.9829 L7558.9243 2228.1594 L7558.4229 2233.9688 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M6587.4658 2748.8691 L6118.8721 3716.2241" clip-path="url(#clipPath2)"/>
<path d="M6115.3843 3723.4238 L6125.1157 3714.804 L6119.3081 3715.3242 L6116.1162 3710.4443 Z" clip-path="url(#clipPath2)" stroke="none"/>
<path fill="none" d="M6379.1479 2738.6221 L5613.1792 2901.0752" clip-path="url(#clipPath2)"/>
<path d="M5605.353 2902.7349 L5618.1294 2905.1367 L5614.1572 2900.8677 L5616.0547 2895.3542 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="3350.4043" y="1025.3907" clip-path="url(#clipPath2)" width="482.375" rx="4" ry="4" height="191.1797" stroke="none"/>
<rect x="3350.4043" y="1025.3907" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="482.375" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="3805.0054" xml:space="preserve" y="1041.3141" clip-path="url(#clipPath2)" stroke="none">call</text>
<rect x="3350.4043" y="1025.3907" clip-path="url(#clipPath2)" fill="none" width="482.375" stroke-dasharray="6,2" rx="4" ry="4" height="191.1797"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="3365.4043" y="1061.8517" clip-path="url(#clipPath2)" width="452.375" rx="4" ry="4" height="139.7188" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="3372.4043" xml:space="preserve" y="1079.9904" clip-path="url(#clipPath2)" stroke="none">When the name of a function is encountered in a Lua program, there are</text>
<text x="3372.4043" xml:space="preserve" y="1093.9591" clip-path="url(#clipPath2)" stroke="none">two possibilities: the function itself may be meant, or the</text>
<text x="3372.4043" xml:space="preserve" y="1107.9279" clip-path="url(#clipPath2)" stroke="none">instructions making up the function are to be executed. In the latter</text>
<text x="3372.4043" xml:space="preserve" y="1121.8966" clip-path="url(#clipPath2)" stroke="none">case, we say that the function is called.</text>
<text x="3372.4043" xml:space="preserve" y="1135.8654" clip-path="url(#clipPath2)" stroke="none"> </text>
<text x="3372.4043" xml:space="preserve" y="1149.8341" clip-path="url(#clipPath2)" stroke="none"> a = fct -- the function is not called, but assigned as a value</text>
<text x="3372.4043" xml:space="preserve" y="1163.8029" clip-path="url(#clipPath2)" stroke="none"> a = fct() -- the function is called</text>
<text x="3372.4043" xml:space="preserve" y="1177.7716" clip-path="url(#clipPath2)" stroke="none"> a = fct{1} -- when there is ony one arguent, and that argument itself </text>
<text x="3372.4043" xml:space="preserve" y="1191.7404" clip-path="url(#clipPath2)" stroke="none"> a = fct"abc" -- is already delimited, parentheses are not needed </text>
<rect x="3365.4043" y="1061.8517" clip-path="url(#clipPath2)" fill="none" width="452.375" rx="4" ry="4" height="139.7188"/>
<path fill="none" d="M3601.3079 1216.5734 L3708.6401 2272.5718" clip-path="url(#clipPath2)"/>
<path d="M3709.4492 2280.5308 L3713.21 2268.0867 L3708.5391 2271.5769 L3703.2612 2269.0979 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
<g fill="rgb(245,245,245)" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="rgb(245,245,245)">
<rect x="8383.8107" y="1843.5581" clip-path="url(#clipPath2)" width="472.7715" rx="4" ry="4" height="93.3984" stroke="none"/>
<rect x="8383.8107" y="1843.5581" clip-path="url(#clipPath2)" fill="rgb(235,235,235)" width="472.7715" height="21.4609" stroke="none"/>
</g>
<g font-size="15px" stroke-linecap="butt" transform="matrix(1,0,0,1,15,16)" text-rendering="geometricPrecision" font-family="sans-serif" shape-rendering="geometricPrecision" stroke-miterlimit="1.45">
<text x="8771.8408" xml:space="preserve" y="1859.4814" clip-path="url(#clipPath2)" stroke="none">application</text>
<rect x="8383.8107" y="1843.5581" clip-path="url(#clipPath2)" fill="none" width="472.7715" stroke-dasharray="6,2" rx="4" ry="4" height="93.3984"/>
</g>
<g fill="white" text-rendering="geometricPrecision" shape-rendering="geometricPrecision" transform="matrix(1,0,0,1,15,16)" stroke="white">
<rect x="8398.8107" y="1880.019" clip-path="url(#clipPath2)" width="442.7715" rx="4" ry="4" height="41.9375" stroke="none"/>
</g>
<g text-rendering="geometricPrecision" stroke-miterlimit="1.45" shape-rendering="geometricPrecision" font-family="sans-serif" transform="matrix(1,0,0,1,15,16)" stroke-linecap="butt">
<text x="8405.8105" xml:space="preserve" y="1898.1577" clip-path="url(#clipPath2)" stroke="none">A program designed for use by people that know next to nothing about</text>
<text x="8405.8105" xml:space="preserve" y="1912.1265" clip-path="url(#clipPath2)" stroke="none">computers. Familiarly shortened to "app" by such users.</text>
<rect x="8398.8107" y="1880.019" clip-path="url(#clipPath2)" fill="none" width="442.7715" rx="4" ry="4" height="41.9375"/>
<path fill="none" d="M8464.5332 1936.9536 L7825.9854 2128.5066" clip-path="url(#clipPath2)"/>
<path d="M7818.3228 2130.8054 L7831.2534 2132.1462 L7826.9434 2128.2192 L7828.3799 2122.5681 Z" clip-path="url(#clipPath2)" stroke="none"/>
</g>
</g>
</svg>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment