<root>
<document scada='0' schema='102' license='1,mnfisher,5YZWG2' title='' description='' fcversion='524802' target='ARD.ATMEGA.Arduino Mega 2560 R3' >
	<config data='' clkspd='16000000' simspd='1' usewdt='0' constif='0' commport='5' Use3V3='0' />
	<plugins >
		<dll_models enabled='1' />
	</plugins>
	<supplement use='0' head='' body='' />
	<debug >
		<watch expr='ChecksumComplete' />
		<watch expr='ChecksumHigh' />
		<watch expr='ChecksumLow' />
	</debug>
	<traces />
	<ghost >
		<FK2 >
			<data name='FK2D0' port='4294967295' pin='4294967295' />
			<data name='FK2D1' port='4294967295' pin='4294967295' />
			<data name='FK2D2' port='4294967295' pin='4294967295' />
			<data name='FK2D3' port='4294967295' pin='4294967295' />
			<data name='FK2D4' port='4294967295' pin='4294967295' />
			<data name='FK2D5' port='4294967295' pin='4294967295' />
			<data name='FK2D6' port='4294967295' pin='4294967295' />
			<data name='FK2D7' port='4294967295' pin='4294967295' />
			<data name='FK2D8' port='4294967295' pin='4294967295' />
			<data name='FK2D9' port='4294967295' pin='4294967295' />
			<data name='FK2D10' port='4294967295' pin='4294967295' />
			<data name='FK2D11' port='4294967295' pin='4294967295' />
			<data name='FK2D12' port='4294967295' pin='4294967295' />
			<data name='FK2D13' port='4294967295' pin='4294967295' />
			<data name='FK2D14' port='4294967295' pin='4294967295' />
			<data name='FK2D15' port='4294967295' pin='4294967295' />
			<data name='FK2A0' port='4294967295' pin='4294967295' />
			<data name='FK2A1' port='4294967295' pin='4294967295' />
			<data name='FK2A2' port='4294967295' pin='4294967295' />
			<data name='FK2A3' port='4294967295' pin='4294967295' />
			<data name='FK2A4' port='4294967295' pin='4294967295' />
			<data name='FK2A5' port='4294967295' pin='4294967295' />
		</FK2>
		<ICD >
			<data name='AnalogPrescaleValue' value='19' />
			<data name='DigitalSampleRate' value='100000' />
			<data name='BreakpointCount' value='8' />
			<data name='CallStackDepthCount' value='8' />
			<data name='ClockPort' value='7' />
			<data name='ClockPin' value='6' />
			<data name='DataPort' value='7' />
			<data name='DataPin' value='5' />
			<data name='UseDefaultPins' value='1' />
			<data name='WrapEnabled' value='1' />
			<data name='CommsDelayOverridden' value='0' />
			<data name='CommsDelay' value='11' />
			<data name='CalculatedCommsDelay' value='11' />
			<data name='AnalogEB2PrescaleValue' value='2' />
			<data name='DigitalEB2SampleRate' value='100000' />
		</ICD>
		<pins >
			<digital A='0' B='0' C='0' D='0' E='0' F='0' G='0' H='0' I='0' J='0' K='0' L='0' M='0' N='0' O='0' P='0' Q='0' R='0' S='0' T='0' U='0' V='0' W='0' X='0' Y='0' Z='0' />
			<analog A='0' B='0' C='0' D='0' E='0' F='0' G='0' H='0' I='0' J='0' K='0' L='0' M='0' N='0' O='0' P='0' Q='0' R='0' S='0' T='0' U='0' V='0' W='0' X='0' Y='0' Z='0' />
		</pins>
	</ghost>
	<components >
		<settings autoimg='1' center='1' unitscale='0' fixedscale='0' fixedx='1' fixedy='1' fixedz='1' headcode='0' />
		<definition guid='39594bb7-7410-444d-a90d-0b8f91181dfa' vstate='40' vmin='0' vmaj='1' srcleaf='' visiblename='' description='' category='' catenable='1' author='' manuname='' manucode='' sysinfo='0' keywords='' dynamic='0' scadaCompatible='0' embeddedCompatible='1' iconpath='' />
		<component class_type='root' codename='panel' x='0' y='0' z='0' xsz='1' ysz='1' zsz='1' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' scadavisible='1' interactive='1' solid='1' layer='0' poslock='0' >
			<resources />
			<properties >
				<property name='Address' target='address' typeid='21' hidden='0' locked='0' hexview='1' info='' />
				<property name='Password' target='password' typeid='21' hidden='0' locked='0' hexview='1' info='' />
				<property name='Touch' target='touch' typeid='5' hidden='0' locked='0' info='' />
			</properties>
			<values >
				<value target='address' data='4294967295' />
				<value target='password' data='0' />
				<value target='touch' data='$PORTE.4' />
			</values>
			<events />
			<apis />
			<variables >
				<variable public='0' >
					<def class_type='variable' name='match_score' type='u16' description='Holds match score of last search' isconst='0' isinit='1' usrinit='0' setinit='0' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='receive_pos' type='u16' description='current receive position' isconst='0' isinit='1' usrinit='0' setinit='0' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='packet_size' type='u16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='LEDON' type='s16' description='' isconst='1' isinit='1' usrinit='80' setinit='0x50' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='data_received' type='b1' description='' isconst='0' isinit='1' usrinit='0' setinit='false' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='library_size' type='u16' description='Number of fingerprint templates' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='header_block' type='T8' description='' isconst='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
						<array size='7' />
					</def>
				</variable>
				<variable public='0' >
					<def class_type='variable' name='timeout' type='u16' description='0' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='baud_rate' type='u16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='LEDOFF' type='s16' description='' isconst='1' isinit='1' usrinit='81' setinit='0x51' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='system_identifier' type='u16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='false' type='b1' description='' isconst='1' isinit='1' usrinit='0' setinit='0' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='cmd_len' type='u8' description='Length of current command block' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='REGMODEL' type='s16' description='' isconst='1' isinit='1' usrinit='5' setinit='5' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='TEMPLATENUM' type='s16' description='' isconst='1' isinit='1' usrinit='29' setinit='0x1D' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='DELETCHAR' type='s16' description='' isconst='1' isinit='1' usrinit='12' setinit='0x0C' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='ChipAdress' type='s16' description='Vingerscanner code' isconst='1' isinit='1' usrinit='255' setinit='0xFF' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='receivetext' type='T8' description='' isconst='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
						<array size='20' />
					</def>
				</variable>
				<variable public='0' >
					<def class_type='variable' name='header_length' type='s16' description='Length of the header to look for' isconst='1' isinit='1' usrinit='6' setinit='6' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='data_block_length' type='u16' description='length of a data block including header' isconst='0' isinit='1' usrinit='19' setinit='19' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='device_address' type='u32' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='header_received' type='u8' description='set true if a header has been received' isconst='0' isinit='1' usrinit='0' setinit='false' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='security_level' type='u16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='EMPTY' type='s16' description='' isconst='1' isinit='1' usrinit='13' setinit='0x0D' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='LEDCONFIG' type='s16' description='' isconst='1' isinit='1' usrinit='53' setinit='0x35' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='GENIMG' type='s16' description='' isconst='1' isinit='1' usrinit='1' setinit='1' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='buffer' type='u8' description='buffer for received data' isconst='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
						<array size='256' />
					</def>
				</variable>
				<variable public='0' >
					<def class_type='variable' name='cmd_buffer' type='u8' description='holds command  - Init with SetCommand' isconst='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
						<array size='20' />
					</def>
				</variable>
				<variable public='0' >
					<def class_type='variable' name='SEARCH' type='s16' description='' isconst='1' isinit='1' usrinit='4' setinit='4' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='GENRANDOM' type='s16' description='' isconst='1' isinit='1' usrinit='20' setinit='0x14' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='status_register' type='u16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='true' type='b1' description='' isconst='1' isinit='1' usrinit='1' setinit='1' />
				</variable>
			</variables>
			<macros >
				<macro >
					<flowline name='GetParms' description='' >
						<return name='Return' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='b' type='b1' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
							<argument exp='0x0F' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SendCommand' >
							<return exp='.b' />
						</command>
						<command class_type='decision' title='Decision' cmdcolor='16734039' cmdcolor_sec='16734039' exp='.b' swap='0' >
							<flowline >
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GetInt' >
									<return exp='status_register' />
									<argument exp='4' />
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GetInt' >
									<return exp='system_identifier' />
									<argument exp='6' />
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GetInt' >
									<return exp='library_size' />
									<argument exp='8' />
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GetInt' >
									<return exp='security_level' />
									<argument exp='10' />
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GetLong' >
									<return exp='device_address' />
									<argument exp='12' />
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GetInt' >
									<return exp='packet_size' />
									<argument exp='16' />
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GetInt' >
									<return exp='baud_rate' />
									<argument exp='18' />
								</command>
								<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
									<exp exp='baud_rate = baud_rate * 9600' />
								</command>
								<command class_type='group' title='Debug display values' cmdcolor='3568629' cmdcolor_sec='3568629' >
									<flowline >
										<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='DbgOut' >
											<argument exp='&quot;status_register&quot;' />
											<argument exp='status_register' />
										</command>
										<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='DbgOut' >
											<argument exp='&quot;system_identifier&quot;' />
											<argument exp='system_identifier' />
										</command>
										<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='DbgOut' >
											<argument exp='&quot;library_size&quot;' />
											<argument exp='library_size' />
										</command>
										<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='DbgOut' >
											<argument exp='&quot;security_level&quot;' />
											<argument exp='security_level' />
										</command>
										<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='DbgOut' >
											<argument exp='&quot;device_address&quot;' />
											<argument exp='device_address' />
										</command>
										<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='DbgOut' >
											<argument exp='&quot;packet_size&quot;' />
											<argument exp='packet_size' />
										</command>
										<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='DbgOut' >
											<argument exp='&quot;baud_rate&quot;' />
											<argument exp='baud_rate' />
										</command>
									</flowline>
								</command>
							</flowline>
							<flowline />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='AuraLEDConfig' description='' >
						<return name='Return' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='mode' type='u8' description='1 Breathing, 2 Flashing, 3 On, 4 Off, 5 Gradual On, 6 Gradual Off' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='speed' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='color' type='u8' description='1 Red, 2 Blue, 3 Purple' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='repeat' type='u8' description='Number cycles o Infinite 1..255' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
							<argument exp='LEDCONFIG' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamByte' >
							<argument exp='.mode' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamByte' >
							<argument exp='.speed' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamByte' >
							<argument exp='.color' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamByte' >
							<argument exp='.repeat' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SendCommand' >
							<return exp='.Return' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='MatchScore' description='Return match % of search (which must be previous command)' >
						<return name='Return' type='u16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='.Return = match_score' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='VerifyPassword' description='Check password' >
						<return name='Return' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='data' type='u8' description='' isconst='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
							<array size='10' />
						</local>
						<local name='b' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='i' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
							<argument exp='0x13' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamLong' >
							<argument exp='password' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SendCommand' >
							<return exp='.b' />
						</command>
						<command class_type='decision' title='Dump the data for debug' cmdcolor='16734039' cmdcolor_sec='16734039' exp='.b = 0' swap='0' >
							<flowline >
								<command class_type='call' title='Output the data to UART1' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
									<argument exp='&quot;Data &quot;' />
								</command>
								<command class_type='loop' title='Loop' cmdcolor='16734039' cmdcolor_sec='16734039' type='2' forvar='.i' exp='data_block_length' >
									<flowline >
										<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendNumber' >
											<argument exp='buffer[.i]' />
										</command>
										<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendChar' >
											<argument exp='&apos; &apos;' />
										</command>
									</flowline>
								</command>
								<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
									<argument exp='&quot;\r\n&quot;' />
								</command>
							</flowline>
							<flowline >
								<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
									<argument exp='&quot;Invalid password\r\n&quot;' />
								</command>
							</flowline>
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='SetBaud' description='' >
						<return name='Return' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='baud' type='u32' description='baud rate to set sensor to' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='speed' type='u8' description='Speed required = baud / 9600' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='data' type='u8' description='' isconst='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
							<array size='8' />
						</local>
						<local name='b' type='b1' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='i' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='.speed = .baud / 9600' />
							<exp exp='.Return = false' />
						</command>
						<command class_type='decision' title='Decision' cmdcolor='16734039' cmdcolor_sec='16734039' exp='.speed &gt; 12 OR .speed &lt; 1 OR (.baud % 9600 != 0)' swap='0' >
							<flowline />
							<flowline >
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
									<argument exp='0x0E' />
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamByte' >
									<argument exp='4' />
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamByte' >
									<argument exp='.speed' />
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SendCommand' >
									<return exp='.Return' />
								</command>
								<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
									<exp exp='.Return = .Return == 0' />
								</command>
							</flowline>
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='SendCommand' description='Send a command created using SetCommand and SetParam...
Returns true if acknowledgement received correctly' >
						<return name='Return' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='csum' type='u16' description='' isconst='0' isinit='1' usrinit='0' setinit='0' />
						<local name='i' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='b' type='b1' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='cmd_buffer[1] = cmd_len &gt;&gt; 8' />
							<exp exp='cmd_buffer[2] = cmd_len' />
						</command>
						<command class_type='loop' title='Loop' cmdcolor='16734039' cmdcolor_sec='16734039' type='2' forvar='.i' exp='cmd_len + 1' >
							<flowline >
								<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
									<exp exp='.csum = .csum + cmd_buffer[.i]' />
								</command>
							</flowline>
						</command>
						<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='cmd_buffer[cmd_len + 1] = .csum &gt;&gt; 8' />
							<exp exp='cmd_buffer[cmd_len + 2] = .csum' />
							<exp exp='cmd_len = cmd_len + 3' />
						</command>
						<command class_type='call' title='Call Component Macro' disable='1' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;SendCmd &quot;' />
						</command>
						<command class_type='loop' title='Loop' disable='1' cmdcolor='16734039' cmdcolor_sec='16734039' type='2' forvar='.i' exp='cmd_len' >
							<flowline >
								<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendNumber' >
									<argument exp='cmd_buffer[.i]' />
								</command>
								<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendChar' >
									<argument exp='&apos; &apos;' />
								</command>
							</flowline>
						</command>
						<command class_type='call' title='Call Component Macro' disable='1' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;\r\n&quot;' />
						</command>
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='cal_uart1' macro='SendByteArray' >
							<argument exp='header_block' />
							<argument exp='6' />
						</command>
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='cal_uart1' macro='SendByteArray' >
							<argument exp='cmd_buffer' />
							<argument exp='cmd_len' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GetAcknowledgement' >
							<return exp='.Return' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='LED' description='' >
						<return name='Return' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='on' type='b1' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='decision' title='Decision' cmdcolor='16734039' cmdcolor_sec='16734039' exp='.on' swap='0' >
							<flowline >
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
									<argument exp='LEDON' />
								</command>
							</flowline>
							<flowline >
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
									<argument exp='LEDOFF' />
								</command>
							</flowline>
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SendCommand' >
							<return exp='.Return' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='DeleteLibrary' description='Delete all the templates stored' >
						<return name='Return' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
							<argument exp='EMPTY' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SendCommand' >
							<return exp='.Return' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='CheckSum' description='' >
						<return name='Return' type='u16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='data' type='u8' description='data to checksum' isconst='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
							<array size='1' />
						</param>
						<param name='length' type='u16' description='Number of bytes' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='csum' type='u16' description='' isconst='0' isinit='1' usrinit='0' setinit='0' />
						<local name='i' type='u16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='loop' title='Loop' cmdcolor='16734039' cmdcolor_sec='16734039' type='2' forvar='.i' exp='.length' >
							<flowline >
								<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
									<exp exp='.csum = .csum + .data[.i]' />
								</command>
							</flowline>
						</command>
						<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='.data[.length] = .csum &gt;&gt; 8' />
							<exp exp='.data[.length + 1] = .csum &amp; 0xFF' />
							<exp exp='.Return = .csum' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='Receive' description='Receive a byte from sensor - check if header or data received
Set data_received if block received
This must be as fast as possible - don&apos;t call output etc in interrupts' >
						<return name='Return' type='v0' description='' isconst='0' isinit='0' usrinit='' setinit='' />
						<local name='c' type='u16' description='Byte received from sensor' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='call' title='Get a byte from the sensor' cmdcolor='16711808' cmdcolor_sec='16711808' component='cal_uart1' macro='Receive' >
							<return exp='.c' />
							<argument exp='10' />
						</command>
						<command class_type='decision' title='Are we looking for data (reset data_received to false to restart' cmdcolor='16734039' cmdcolor_sec='16734039' exp='data_received OR .c = 256' swap='0' >
							<flowline />
							<flowline >
								<command class_type='calculation' title='Store received byte' cmdcolor='49280' cmdcolor_sec='49280' >
									<exp exp='buffer[receive_pos] = .c' />
									<exp exp='receive_pos = (receive_pos + 1) % 256' />
								</command>
								<command class_type='decision' title='Has a header been received' cmdcolor='16734039' cmdcolor_sec='16734039' exp='header_received' swap='0' >
									<flowline >
										<command class_type='decision' title='Check if length bytes' cmdcolor='16734039' cmdcolor_sec='16734039' exp='receive_pos = 2' swap='0' >
											<flowline >
												<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
													<exp exp='data_block_length = .c' />
												</command>
											</flowline>
											<flowline >
												<command class_type='decision' title='Decision' cmdcolor='16734039' cmdcolor_sec='16734039' exp='receive_pos = 3' swap='0' >
													<flowline >
														<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
															<exp exp='data_block_length = (data_block_length &lt;&lt; 8) + .c + 3' />
														</command>
													</flowline>
													<flowline >
														<command class_type='decision' title='data block received?' cmdcolor='16734039' cmdcolor_sec='16734039' exp='receive_pos = data_block_length' swap='0' >
															<flowline >
																<command class_type='calculation' title='Set flag and reset' cmdcolor='49280' cmdcolor_sec='49280' >
																	<exp exp='data_received = true' />
																	<exp exp='receive_pos = 0' />
																	<exp exp='header_received = false' />
																</command>
															</flowline>
															<flowline />
														</command>
													</flowline>
												</command>
											</flowline>
										</command>
									</flowline>
									<flowline >
										<command class_type='decision' title='Do we match a header byte?' cmdcolor='16734039' cmdcolor_sec='16734039' exp='.c = header_block[receive_pos - 1]' swap='0' >
											<flowline >
												<command class_type='decision' title='Have we received a full header?' cmdcolor='16734039' cmdcolor_sec='16734039' exp='receive_pos = header_length' swap='0' >
													<flowline >
														<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
															<exp exp='receive_pos = 0' />
															<exp exp='header_received = true' />
														</command>
													</flowline>
													<flowline />
												</command>
											</flowline>
											<flowline >
												<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
													<exp exp='receive_pos = 0' />
												</command>
											</flowline>
										</command>
									</flowline>
								</command>
							</flowline>
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='SetParamWord' description='Add a word to command parameters' >
						<return name='Return' type='v0' description='' isconst='0' isinit='0' usrinit='' setinit='' />
						<param name='data' type='u16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='cmd_buffer[cmd_len + 1] = .data &gt;&gt; 8' />
							<exp exp='cmd_buffer[cmd_len + 2] = .data' />
							<exp exp='cmd_len = cmd_len + 2' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='RegModel' description='' >
						<return name='Return' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='data' type='u8' description='' isconst='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
							<array size='6' />
						</local>
						<local name='b' type='b1' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
							<argument exp='REGMODEL' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SendCommand' >
							<return exp='.Return' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='StoreTemplate' description='' >
						<return name='Return' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='id' type='u16' description='Number of template to save as' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
							<argument exp='6' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamByte' >
							<argument exp='1' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamWord' >
							<argument exp='.id' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SendCommand' >
							<return exp='.Return' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='GetRandom' description='Get a random number from fingerprint sensor' >
						<return name='Return' type='u32' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='b' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
							<argument exp='GENRANDOM' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SendCommand' >
							<return exp='.b' />
						</command>
						<command class_type='decision' title='Decision' cmdcolor='16734039' cmdcolor_sec='16734039' exp='.b = 0' swap='0' >
							<flowline >
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GetLong' >
									<return exp='.Return' />
									<argument exp='4' />
								</command>
							</flowline>
							<flowline />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='DbgOut' >
							<argument exp='&quot;Random&quot;' />
							<argument exp='.Return' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='Init' description='Setup header string and prepare fingerprint scanner component' >
						<return name='Return' type='v0' description='' isconst='0' isinit='0' usrinit='' setinit='' />
						<local name='i' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='temp' type='u32' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='cal_uart1' macro='Init' />
						<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='header_block[0] = 0xEF' />
							<exp exp='header_block[1] = 0x01' />
							<exp exp='.temp = address' />
						</command>
						<command class_type='loop' title='Loop' cmdcolor='16734039' cmdcolor_sec='16734039' type='2' forvar='.i' exp='4' >
							<flowline >
								<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
									<exp exp='header_block[5 - .i] = .temp &amp; 0xFF' />
									<exp exp='.temp = .temp &gt;&gt; 8' />
								</command>
							</flowline>
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='GetLong' description='Get a 32 bit value from buffer[offset..offset+3]' >
						<return name='Return' type='u32' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='offset' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='i' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='temp' type='u32' description='' isconst='0' isinit='1' usrinit='0' setinit='0' />
						<command class_type='loop' title='Loop' cmdcolor='16734039' cmdcolor_sec='16734039' type='2' forvar='.i' exp='4' >
							<flowline >
								<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
									<exp exp='.temp = (.temp &lt;&lt; 8) + buffer[.offset + .i]' />
								</command>
							</flowline>
						</command>
						<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='.Return = .temp' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='SetParamLong' description='Add a long word (32 bit) to command block' >
						<return name='Return' type='v0' description='' isconst='0' isinit='0' usrinit='' setinit='' />
						<param name='data' type='u32' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='cmd_buffer[cmd_len + 1] = .data &gt;&gt; 24' />
							<exp exp='cmd_buffer[cmd_len + 2] = .data &gt;&gt; 16' />
							<exp exp='cmd_buffer[cmd_len + 3] = .data &gt;&gt; 8' />
							<exp exp='cmd_buffer[cmd_len + 4] = .data' />
							<exp exp='cmd_len = cmd_len + 4' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='DeleteTemplate' description='Delete some templates from library' >
						<return name='Return' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='id' type='u16' description='Id of first template (1..num templates)' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='n' type='u16' description='Number of templates to be deleted' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
							<argument exp='DELETCHAR' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamWord' >
							<argument exp='.id' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamWord' >
							<argument exp='.n' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SendCommand' >
							<return exp='.Return' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='GenImg' description='' >
						<return name='Return' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='ret' type='u8' description='' isconst='0' isinit='1' usrinit='4294967295' setinit='-1' />
						<local name='count' type='u8' description='' isconst='0' isinit='1' usrinit='0' setinit='0' />
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;Place Finger on Sensor\r\n&quot;' />
						</command>
						<command class_type='loop' title='Loop' cmdcolor='16734039' cmdcolor_sec='16734039' type='1' exp='.ret = 0 OR .count = 5' >
							<flowline >
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='AuraLEDConfig' >
									<argument exp='3' />
									<argument exp='0' />
									<argument exp='2' />
									<argument exp='0' />
								</command>
								<command class_type='loop' title='Loop' cmdcolor='16734039' cmdcolor_sec='16734039' type='0' exp='touch = 1' >
									<flowline >
										<command class_type='delay' title='Delay' cmdcolor='12632064' cmdcolor_sec='12632064' exp='10' type='1' />
									</flowline>
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
									<argument exp='GENIMG' />
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SendCommand' >
									<return exp='.ret' />
								</command>
								<command class_type='decision' title='Decision' cmdcolor='16734039' cmdcolor_sec='16734039' exp='.ret = 0' swap='0' >
									<flowline >
										<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
											<argument exp='&quot;Good image\r\n&quot;' />
										</command>
									</flowline>
									<flowline >
										<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='AuraLEDConfig' >
											<argument exp='3' />
											<argument exp='0' />
											<argument exp='1' />
											<argument exp='0' />
										</command>
										<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
											<argument exp='&quot;Remove finger then try again\r\n&quot;' />
										</command>
										<command class_type='delay' title='Delay' cmdcolor='12632064' cmdcolor_sec='12632064' exp='1' type='2' />
										<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
											<exp exp='.count = .count + 1' />
										</command>
									</flowline>
								</command>
							</flowline>
						</command>
						<command class_type='decision' title='Decision' cmdcolor='16734039' cmdcolor_sec='16734039' exp='.ret != 0' swap='0' >
							<flowline >
								<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
									<argument exp='&quot;Failed\r\n&quot;' />
								</command>
							</flowline>
							<flowline />
						</command>
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;Remove finger\r\n&quot;' />
						</command>
						<command class_type='loop' title='Loop' cmdcolor='16734039' cmdcolor_sec='16734039' type='0' exp='touch = 0' >
							<flowline />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='AuraLEDConfig' >
							<argument exp='4' />
							<argument exp='0' />
							<argument exp='2' />
							<argument exp='0' />
						</command>
						<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='.Return = .ret' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='EnrollFinger' description='' >
						<return name='Return' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='id' type='u8' description='Slot id for data' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='b' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='i' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;GenImg1\r\n&quot;' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GenImg' >
							<return exp='.b' />
						</command>
						<command class_type='decision' title='Goto end if failed' cmdcolor='16734039' cmdcolor_sec='16734039' totalfolded='1' exp='.b != 0' swap='0' >
							<flowline folded='1' totalfolded='1' >
								<command class_type='goto' title='Goto Connection Point' cmdcolor='16734039' cmdcolor_sec='16734039' hiddenFromFold='1' labelid='0' labelname='' />
							</flowline>
							<flowline folded='1' totalfolded='1' />
						</command>
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;Img2Tz1\r\n&quot;' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='Img2Tz' >
							<return exp='.b' />
							<argument exp='1' />
						</command>
						<command class_type='decision' title='Goto end if failed' cmdcolor='16734039' cmdcolor_sec='16734039' totalfolded='1' exp='.b != 0' swap='0' >
							<flowline folded='1' totalfolded='1' >
								<command class_type='goto' title='Goto Connection Point' cmdcolor='16734039' cmdcolor_sec='16734039' hiddenFromFold='1' labelid='0' labelname='' />
							</flowline>
							<flowline folded='1' totalfolded='1' />
						</command>
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;GenImg2\r\n&quot;' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GenImg' >
							<return exp='.b' />
						</command>
						<command class_type='decision' title='Goto end if failed' cmdcolor='16734039' cmdcolor_sec='16734039' totalfolded='1' exp='.b != 0' swap='0' >
							<flowline folded='1' totalfolded='1' >
								<command class_type='goto' title='Goto Connection Point' cmdcolor='16734039' cmdcolor_sec='16734039' hiddenFromFold='1' labelid='0' labelname='' />
							</flowline>
							<flowline folded='1' totalfolded='1' />
						</command>
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;Img2Tz2\r\n&quot;' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='Img2Tz' >
							<return exp='.b' />
							<argument exp='2' />
						</command>
						<command class_type='decision' title='Goto end if failed' cmdcolor='16734039' cmdcolor_sec='16734039' totalfolded='1' exp='.b != 0' swap='0' >
							<flowline folded='1' totalfolded='1' >
								<command class_type='goto' title='Goto Connection Point' cmdcolor='16734039' cmdcolor_sec='16734039' hiddenFromFold='1' labelid='0' labelname='' />
							</flowline>
							<flowline folded='1' totalfolded='1' />
						</command>
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;RegModel\r\n&quot;' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='RegModel' >
							<return exp='.b' />
						</command>
						<command class_type='decision' title='Goto end if failed' cmdcolor='16734039' cmdcolor_sec='16734039' totalfolded='1' exp='.b != 0' swap='0' >
							<flowline folded='1' totalfolded='1' >
								<command class_type='goto' title='Goto Connection Point' cmdcolor='16734039' cmdcolor_sec='16734039' hiddenFromFold='1' labelid='0' labelname='' />
							</flowline>
							<flowline folded='1' totalfolded='1' />
						</command>
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;StoreTemplate\r\n&quot;' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='StoreTemplate' >
							<return exp='.Return' />
							<argument exp='.id' />
						</command>
						<command class_type='label' title='Connection Point' cmdcolor='16734039' cmdcolor_sec='16734039' labelid='0' labelname='A' />
					</flowline>
				</macro>
				<macro >
					<flowline name='GetInt' description='Get a 16 bit value from buffer[offset..offset+1]' >
						<return name='Return' type='u16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='offset' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='.Return = buffer[.offset]' />
							<exp exp='.Return = (.Return &lt;&lt; 8) + buffer[.offset + 1]' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='Img2Tz' description='Generate char file from finger data in buffer save to CharBuffer 1 or 2' >
						<return name='Return' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='buf_id' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='data' type='u8' description='' isconst='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
							<array size='7' />
						</local>
						<local name='i' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='b' type='b1' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
							<argument exp='2' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamByte' >
							<argument exp='.buf_id' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SendCommand' >
							<return exp='.Return' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='GetNumTemplates' description='Return the number of templates stored' >
						<return name='Return' type='u16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='b' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
							<argument exp='TEMPLATENUM' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SendCommand' >
							<return exp='.b' />
						</command>
						<command class_type='decision' title='If success' cmdcolor='16734039' cmdcolor_sec='16734039' exp='.b = 0' swap='0' >
							<flowline >
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GetInt' >
									<return exp='.Return' />
									<argument exp='4' />
								</command>
							</flowline>
							<flowline >
								<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
									<exp exp='.Return = 0' />
								</command>
							</flowline>
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='DbgOut' >
							<argument exp='&quot;Templates&quot;' />
							<argument exp='.Return' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='Search' description='Returns id of fingerprint or 0 if not found/' >
						<return name='Return' type='u16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<param name='buf_id' type='u8' description='Buffer containing template (1 or 2)' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='templates' type='u16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='b' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GetNumTemplates' >
							<return exp='.templates' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetCommand' >
							<argument exp='SEARCH' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamByte' >
							<argument exp='.buf_id' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamWord' >
							<argument exp='1' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetParamWord' >
							<argument exp='.templates' />
						</command>
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SendCommand' >
							<return exp='.b' />
						</command>
						<command class_type='decision' title='Decision' cmdcolor='16734039' cmdcolor_sec='16734039' exp='.b = 0' swap='0' >
							<flowline >
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GetInt' >
									<return exp='.return' />
									<argument exp='4' />
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GetInt' >
									<return exp='match_score' />
									<argument exp='6' />
								</command>
							</flowline>
							<flowline >
								<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
									<exp exp='.Return = 0' />
								</command>
							</flowline>
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='SetParamByte' description='Add a byte to comand buffer' >
						<return name='Return' type='v0' description='' isconst='0' isinit='0' usrinit='' setinit='' />
						<param name='data' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='cmd_buffer[cmd_len + 1] = .data' />
							<exp exp='cmd_len = cmd_len + 1' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='GetAcknowledgement' description='Get ack block
Returns true if block received and confirmation byte = 0 ' >
						<return name='Return' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='timeout' type='u8' description='' isconst='0' isinit='1' usrinit='0' setinit='0' />
						<local name='i' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='Start block reception' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='data_received = false' />
							<exp exp='.Return = false' />
						</command>
						<command class_type='loop' title='Wait for data block (Need to add timeout)' cmdcolor='16734039' cmdcolor_sec='16734039' type='1' exp='data_received OR .timeout &gt; 20' >
							<flowline >
								<command class_type='delay' title='Delay' cmdcolor='12632064' cmdcolor_sec='12632064' exp='100' type='1' />
								<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
									<exp exp='.timeout = .timeout + 1' />
								</command>
							</flowline>
						</command>
						<command class_type='call' title='Call Component Macro' disable='1' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;Ack &quot;' />
						</command>
						<command class_type='loop' title='Loop' disable='1' cmdcolor='16734039' cmdcolor_sec='16734039' type='2' forvar='.i' exp='data_block_length' >
							<flowline >
								<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendNumber' >
									<argument exp='buffer[.i]' />
								</command>
								<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendChar' >
									<argument exp='&apos; &apos;' />
								</command>
							</flowline>
						</command>
						<command class_type='call' title='Call Component Macro' disable='1' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;\r\n&quot;' />
						</command>
						<command class_type='calculation' title='Return Ack code (0 is good)' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='.Return = buffer[3]' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='SetCommand' description='Initialises the command buffer ready to send a command' >
						<return name='Return' type='v0' description='' isconst='0' isinit='0' usrinit='' setinit='' />
						<param name='cmd' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='cmd_buffer[0] = 1 // Packagae ident' />
							<exp exp='cmd_buffer[1] = 0 // space for length msb' />
							<exp exp='cmd_buffer[2] = 0 // length lsb' />
							<exp exp='cmd_buffer[3] = .cmd' />
							<exp exp='cmd_len = 3 //  does include ident' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='Main' description='' >
						<return name='Return' type='v0' description='' isconst='0' isinit='0' usrinit='' setinit='' />
						<local name='i' type='u16' description='loop index' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='c' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='match' type='u16' description='' isconst='0' isinit='1' usrinit='1' setinit='true' />
						<local name='t' type='u16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='count' type='u8' description='' isconst='0' isinit='1' usrinit='1' setinit='1' />
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='Initialise' />
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='Init' />
						<command class_type='interrupt' title='Interrupt' cmdcolor='49344' cmdcolor_sec='49344' enable='1' name='RXINT1' call='Receive' >
							<settings timer='0' prescale='-1' postscale='-1' rollover='-1' bitcount='-1' trigger='3' maskhi='--------------------------------------------------------------------------------------------------------------------------------------------------------------------------8' masklo='--------------------------------------------------------------------------------------------------------------------------------------------------------------------------8' >
								<option value='0' />
								<option value='0' />
								<option value='0' />
								<option value='0' />
								<option value='0' />
								<option value='0' />
								<option value='0' />
								<option value='0' />
							</settings>
						</command>
						<command class_type='delay' title='Delay' cmdcolor='12632064' cmdcolor_sec='12632064' exp='1' type='2' />
						<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='VerifyPassword' />
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;Fingerprint sensor demo\r\n\n&quot;' />
						</command>
						<command class_type='call' title='Call Component Macro' disable='1' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;Empty library\r\n&quot;' />
						</command>
						<command class_type='call' title='Call Macro' disable='1' cmdcolor='16711808' cmdcolor_sec='16711808' macro='DeleteLibrary' />
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;\r\nEnroll Fingers (5)\r\n&quot;' />
						</command>
						<command class_type='call' title='Call Macro' disable='1' cmdcolor='16711808' cmdcolor_sec='16711808' macro='SetBaud' >
							<argument exp='9600' />
						</command>
						<command class_type='delay' title='Delay' cmdcolor='12632064' cmdcolor_sec='12632064' exp='1' type='2' />
						<command class_type='call' title='Call Macro' disable='1' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GetParms' />
						<command class_type='loop' title='Loop' cmdcolor='16734039' cmdcolor_sec='16734039' type='1' exp='.count = 6' start='0' >
							<flowline >
								<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
									<argument exp='&quot;Finger &quot;' />
								</command>
								<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendNumber' >
									<argument exp='.count' />
								</command>
								<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
									<argument exp='&quot;\r\n&quot;' />
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='EnrollFinger' >
									<return exp='.c' />
									<argument exp='.count' />
								</command>
								<command class_type='decision' title='Decision' cmdcolor='16734039' cmdcolor_sec='16734039' exp='.c = 0' swap='0' >
									<flowline >
										<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
											<argument exp='&quot;Success\r\n\r\n&quot;' />
										</command>
										<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
											<exp exp='.count = .count + 1' />
										</command>
									</flowline>
									<flowline >
										<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
											<argument exp='&quot;Failed - try again\r\n\r\n&quot;' />
										</command>
									</flowline>
								</command>
							</flowline>
						</command>
						<command class_type='delay' title='Delay' cmdcolor='12632064' cmdcolor_sec='12632064' exp='1' type='2' />
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;Test Search\r\n&quot;' />
						</command>
						<command class_type='loop' title='Loop' cmdcolor='16734039' cmdcolor_sec='16734039' type='0' exp='1' >
							<flowline >
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='LED' >
									<argument exp='true' />
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='GenImg' >
									<return exp='.c' />
								</command>
								<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='LED' >
									<argument exp='false' />
								</command>
								<command class_type='decision' title='Decision' cmdcolor='16734039' cmdcolor_sec='16734039' exp='.c = 0' swap='0' >
									<flowline >
										<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='Img2Tz' >
											<return exp='.c' />
											<argument exp='1' />
										</command>
										<command class_type='decision' title='Decision' cmdcolor='16734039' cmdcolor_sec='16734039' exp='.c = 0' swap='0' >
											<flowline >
												<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='Search' >
													<return exp='.c' />
													<argument exp='1' />
												</command>
												<command class_type='decision' title='Decision' cmdcolor='16734039' cmdcolor_sec='16734039' exp='.c &gt; 0' swap='0' >
													<flowline >
														<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
															<argument exp='&quot;Found at &quot;' />
														</command>
														<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendNumber' >
															<argument exp='.c' />
														</command>
														<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='MatchScore' >
															<return exp='.match' />
														</command>
														<command class_type='call' title='Call Macro' cmdcolor='16711808' cmdcolor_sec='16711808' macro='DbgOut' >
															<argument exp='&quot; match_score&quot;' />
															<argument exp='.match' />
														</command>
													</flowline>
													<flowline >
														<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
															<argument exp='&quot;No match\r\n&quot;' />
														</command>
													</flowline>
												</command>
											</flowline>
											<flowline />
										</command>
									</flowline>
									<flowline />
								</command>
								<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='cal_uart1' macro='SendString' >
									<argument exp='&quot;\r\n\n&quot;' />
								</command>
								<command class_type='delay' title='Delay' cmdcolor='12632064' cmdcolor_sec='12632064' exp='2' type='2' />
							</flowline>
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='DbgOut' description='' >
						<return name='Return' type='v0' description='' isconst='0' isinit='0' usrinit='' setinit='' />
						<param name='s' type='T8' description='' isconst='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
							<array size='20' />
						</param>
						<param name='val' type='u32' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
						<local name='hex' type='T8' description='' isconst='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
							<array size='20' />
						</local>
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='.s' />
						</command>
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendChar' >
							<argument exp='&apos; &apos;' />
						</command>
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendNumber' >
							<argument exp='.val' />
						</command>
						<command class_type='calculation' title='Calculation' cmdcolor='49280' cmdcolor_sec='49280' >
							<exp exp='.hex = NumberToHex$ (.val)' />
						</command>
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot; hex &quot;' />
						</command>
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='.hex' />
						</command>
						<command class_type='call' title='Call Component Macro' cmdcolor='16711808' cmdcolor_sec='16711808' component='UART1' macro='SendString' >
							<argument exp='&quot;\r\n&quot;' />
						</command>
					</flowline>
				</macro>
			</macros>
			<component class_type='ref' guid='c73616d1-7ad0-45d9-aada-69ccfa4c5efc' vmin='0' vmaj='2' codename='UART1' x='0' y='0' z='0' xsz='64' ysz='32' zsz='1.53' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' scadavisible='1' interactive='1' solid='1' layer='1' poslock='0' >
				<resources />
				<properties />
				<values >
					<value target='cal_uart::CHANNEL' data='001' />
					<value target='cal_uart::BAUD_LIST' data='004' />
					<value target='cal_uart::BAUD' data='9600' />
					<value target='cal_uart::DBITS' data='008' />
					<value target='cal_uart::RETURN' data='001' />
					<value target='cal_uart::ECHO' data='000' />
					<value target='cal_uart::UseTX' data='1' />
					<value target='cal_uart::TX' data='$PORTE.1' />
					<value target='cal_uart::OutputPins' data='007' />
					<value target='cal_uart::TXAlt' data='0' />
					<value target='cal_uart::UseRX' data='1' />
					<value target='cal_uart::RX' data='$PORTE.0' />
					<value target='cal_uart::InputPins' data='013' />
					<value target='cal_uart::RXAlt' data='0' />
					<value target='cal_uart::FLOWEN' data='000' />
					<value target='cal_uart::RTS' data='$PORTB.2' />
					<value target='cal_uart::CTS' data='$PORTB.1' />
					<value target='label' data='UART' />
					<value target='cal_uart::ScopeTraces' data='0' />
					<value target='cal_uart::ConsoleData' data='0' />
					<value target='cal_uart::ConsoleFormat' data='000' />
					<value target='cal_uart::ConsoleColumns' data='64' />
					<value target='cal_uart::DataSource' data='000' />
					<value target='cal_uart::com_port' data='000' />
					<value target='cal_uart::Injector' data='000' />
				</values>
				<events />
				<apis />
				<variables />
				<macros />
			</component>
			<component class_type='ref' guid='91b64b1d-b8b2-40f1-b073-e953a91fa234' vmin='2' vmaj='2' codename='cal_uart1' x='0' y='0' z='10.515' xsz='1' ysz='1' zsz='1' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' scadavisible='1' interactive='1' solid='1' layer='1' poslock='0' >
				<resources />
				<properties />
				<values >
					<value target='UseUART' data='1' />
					<value target='CHANNEL' data='002' />
					<value target='UseTX' data='1' />
					<value target='TX' data='$PORTD.3' />
					<value target='OutputPins' data='000' />
					<value target='TXAlt' data='0' />
					<value target='UseRX' data='1' />
					<value target='RX' data='$PORTD.2' />
					<value target='InputPins' data='000' />
					<value target='RXAlt' data='0' />
					<value target='FLOWEN' data='000' />
					<value target='RTS' data='$PORTC.4' />
					<value target='CTS' data='$PORTC.5' />
					<value target='BAUD_LIST' data='008' />
					<value target='BAUD' data='57600' />
					<value target='DBITS' data='008' />
					<value target='RETURN' data='001' />
					<value target='ECHO' data='000' />
					<value target='INT' data='000' />
					<value target='ScopeTraces' data='1' />
					<value target='ConsoleData' data='1' />
					<value target='ConsoleFormat' data='000' />
					<value target='ConsoleColumns' data='64' />
					<value target='DataSource' data='000' />
					<value target='com_port' data='000' />
					<value target='Injector' data='' />
					<value target='REF' data='0' />
					<value target='TX_PORT' data='$PORTD.3' />
					<value target='TX_TRIS' data='$PORTD.3' />
					<value target='TX_PIN' data='3' />
					<value target='RX_PORT' data='$PORTD.2' />
					<value target='RX_TRIS' data='$PORTD.2' />
					<value target='RX_PIN' data='2' />
					<value target='CTS_PORT' data='$PORTC.5' />
					<value target='CTS_PIN' data='5' />
					<value target='CTS_TRIS' data='$PORTC.5' />
					<value target='RTS_PORT' data='$PORTC.4' />
					<value target='RTS_PIN' data='4' />
					<value target='RTS_TRIS' data='$PORTC.4' />
					<value target='REMAPPABLE' data='' />
					<value target='OutputReg' data='' />
					<value target='InputReg' data='' />
					<value target='TXRPNUM' data='' />
					<value target='TXBank' data='' />
					<value target='RXRPREG' data='' />
					<value target='RXBank' data='' />
					<value target='InjectorHandle' data='' />
					<value target='UARTName' data='' />
					<value target='UARTClock' data='' />
					<value target='UartNumber' data='' />
					<value target='TXBank2' data='' />
					<value target='RXBank2' data='' />
					<value target='TX_ALT' data='' />
					<value target='RX_ALT' data='' />
					<value target='BitDelay' data='17' />
					<value target='ParentName' data='panel' />
					<value target='CompName' data='' />
				</values>
				<events />
				<apis />
				<variables />
				<macros />
			</component>
		</component>
	</components>
	<scadaresourcelookup />
	<keymap />
	<panel2d shadows='0' lighting='2' brightness='0' >
		<background rgb='10856368' img='' style='0' />
		<camera xe='0' ye='0' ze='300' xt='0' yt='0' zt='0' xquat='0' yquat='0' zquat='0' wquat='1' />
	</panel2d>
	<panel3d shadows='2' lighting='2' brightness='0' perspective='1' >
		<background rgb='8409120' img='' style='0' />
		<table rgb='7360576' img='' style='0' size='22' />
		<camera xe='0' ye='0' ze='300' xt='0' yt='0' zt='0' xquat='0' yquat='0' zquat='0' wquat='1' />
		<camerakey0 xe='0' ye='0' ze='300' xt='0' yt='0' zt='0' xquat='0' yquat='0' zquat='0' wquat='1' />
		<camerakey1 xe='-3.67394e-14' ye='0' ze='-300' xt='0' yt='0' zt='0' xquat='0' yquat='1' zquat='0' wquat='6.12323e-17' />
		<camerakey2 xe='0' ye='-300' ze='6.66134e-14' xt='0' yt='0' zt='0' xquat='-0.707107' yquat='0' zquat='0' wquat='0.707107' />
		<camerakey3 xe='-3.67394e-14' ye='300' ze='6.66134e-14' xt='0' yt='0' zt='0' xquat='-4.32978e-17' yquat='0.707107' zquat='0.707107' wquat='4.32978e-17' />
		<camerakey4 xe='-300' ye='-6.66134e-14' ze='6.66134e-14' xt='0' yt='0' zt='0' xquat='-0.5' yquat='0.5' zquat='0.5' wquat='0.5' />
		<camerakey5 xe='300' ye='-6.66134e-14' ze='6.66134e-14' xt='0' yt='0' zt='0' xquat='-0.5' yquat='-0.5' zquat='-0.5' wquat='0.5' />
		<camerakey6 xe='-173.205' ye='-173.205' ze='173.205' xt='0' yt='0' zt='0' xquat='-0.424708' yquat='0.17592' zquat='0.339851' wquat='0.820473' />
	</panel3d>
	<layout >
		<view type='0' name='Main' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='90' scrollx='0' scrolly='207' flags='0' />
		<view type='0' name='GenImg' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='133' flags='0' />
		<view type='0' name='AuraLEDConfig' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='GetAcknowledgement' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='90' flags='0' />
		<view type='0' name='SendCommand' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='314' flags='0' />
		<view type='0' name='SetCommand' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='LED' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='EnrollFinger' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='DeleteLibrary' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='DeleteTemplate' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='MatchScore' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='CheckSum' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='DbgOut' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='GetInt' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='GetLong' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='SetBaud' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='SetParamByte' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='SetParamLong' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='SetParamWord' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='VerifyPassword' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='Search' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='StoreTemplate' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='RegModel' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='Img2Tz' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='Receive' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='GetParms' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='Init' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='GetRandom' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='GetNumTemplates' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAeAAAA8gQAAFICAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
	</layout>
</document>
</root>
