<root>
<document scada='1' panel2DSCADA='0' panel3DSCADA='0' panelPropsSCADA='0' panelConsoleSCADA='0' panelDataRecorderSCADA='0' panel2DCount='1' panel2DSCADA_0='6' playbackSCADA='0' ShouldAutoStartSCADA='0' ShouldLockCameraSCADA='0' ShouldBundleSCADA='1' SCADAProgramTitle='' buildnumber='0' schema='103' license='10,BenR,C9TN1M' title='Blank Web' description='A blank Web Developer project suitable for creating apps that run in a browser' fcversion='655616' target='SCADA.SCADA.WEBEXP' >
	<config data='' clkspd='100000000' simspd='1' usewdt='0' constif='0' Use3V3='0' />
	<plugins >
		<dll_models enabled='1' />
	</plugins>
	<supplement use='1' head='&lt;script&gt;
  let MxSerialPort = null;
  let MxSerialRxEnabled = false;
  let MxSerialRxString = &quot;&quot;;
&lt;/script&gt;' body='' />
	<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='4095' />
			<data name='ClockPin' value='0' />
			<data name='DataPort' value='4095' />
			<data name='DataPin' value='0' />
			<data name='UseDefaultPins' value='1' />
			<data name='WrapEnabled' value='1' />
			<data name='CommsDelayOverridden' value='0' />
			<data name='CommsDelay' value='2' />
			<data name='CalculatedCommsDelay' value='2' />
			<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='2e0d15ad-baf1-4cf5-807a-4741d2aac0a7' vstate='40' vmin='0' vmaj='1' srcleaf='' visiblename='' description='' category='' category2='' category3='' bIs2dOnly='0' bIs3dOnly='0' catenable='1' author='' manuname='' manucode='' sysinfo='0' keywords='' dynamic='1' scadaCompatible='1' embeddedCompatible='1' showmacros='1' iconpath='' />
		<component class_type='root' codename='panel' panelId='-1' 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' comp2dType='0' >
			<resources />
			<properties />
			<values />
			<events />
			<apis />
			<variables >
				<variable public='0' >
					<def class_type='variable' name='false' type='b1' description='' isconst='1' isHidden='0' isinit='1' usrinit='0' setinit='0' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='GlobVar' type='s32' description='' isconst='0' isHidden='0' isinit='1' usrinit='666' setinit='666' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='true' type='b1' description='' isconst='1' isHidden='0' isinit='1' usrinit='1' setinit='1' />
				</variable>
			</variables>
			<macros >
				<macro >
					<flowline name='OnClose' description='Called when the WebButton4 button is clicked' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<command class_type='native' title='JavaScript' ccode='  if (&quot;serial&quot; in navigator)
  {
    if (MxSerialPort.writable != null)
    {
      MxSerialPort.close();
    }
    else
    {
      console.log(&quot;Not connected!&quot;);
    }
  }
  else
  {
    console.log(&quot;Serial not available!&quot;);
  }' customize='1' cmdcolor='4206456' cmdcolor_sec='10785756' cmdcolor_txt='16777215' cmdgradient='4' cmdopacity='0.64' language='C' />
					</flowline>
				</macro>
				<macro >
					<flowline name='OnDisableRx' description='Called when the WebButton6 button is clicked' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<command class_type='native' title='JavaScript' ccode=' MxSerialRxEnabled = false;
' customize='1' cmdcolor='4206456' cmdcolor_sec='10785756' cmdcolor_txt='16777215' cmdgradient='4' cmdopacity='0.64' language='C' />
					</flowline>
				</macro>
				<macro >
					<flowline name='OnRxWithTimeout' description='Called when the WebButton7 button is clicked' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<command class_type='delay' title='This delay forces the function to be &apos;async&apos;' cmdcolor='4206456' cmdcolor_sec='10785756' cmdcolor_txt='16777215' cmdgradient='4' cmdopacity='0.64' exp='1' type='1' />
						<command class_type='native' title='JavaScript' ccode='  if (&quot;serial&quot; in navigator)
  {
    let done = false;
    MxSerialRxString = &quot;&quot;;
    MxSerialRxEnabled = true;
    const reader = MxSerialPort.readable.getReader();
    while (!done &amp;&amp; MxSerialRxEnabled)
    {
      const timer = setTimeout(() =&gt; { reader.releaseLock(); }, 200);
      let result = {done: false, value: new Uint8Array()};
      try
      {
        result = await reader.read();
      }
      catch (e)
      {
        done = true;
        if (e instanceof TypeError)
        {
          console.log(&quot;Timeout error occurred!&quot;);
        }
        else
        {
          throw(e);
        }
      }
      const decoder = new TextDecoder();
      MxSerialRxString = MxSerialRxString + decoder.decode(result.value);
      //console.log(decoder.decode(value));
      
      clearTimeout(timer);
      //reader.releaseLock();
    }
    
    FCD_052d1_TextBlock1__SetText(MxSerialRxString);
    
    reader.releaseLock();
  }' customize='1' cmdcolor='4206456' cmdcolor_sec='10785756' cmdcolor_txt='16777215' cmdgradient='4' cmdopacity='0.64' language='C' />
					</flowline>
				</macro>
				<macro >
					<flowline name='OnOpen' description='Called when the WebButton1 button is clicked' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<command class_type='delay' title='This delay forces the function to be &apos;async&apos;' cmdcolor='4206456' cmdcolor_sec='10785756' cmdcolor_txt='16777215' cmdgradient='4' cmdopacity='0.64' exp='1' type='1' />
						<command class_type='native' title='JavaScript' ccode='  if (&quot;serial&quot; in navigator)
  {
    // The Web Serial API is supported.
    
    // Filter on devices with the Arduino Uno USB Vendor/Product IDs.
    const filters = [
      { usbVendorId: 0x2A03, usbProductId: 0x0043 },
      { usbVendorId: 0x2341, usbProductId: 0x0043 },
      { usbVendorId: 0x2341, usbProductId: 0x0001 }
    ];

    // Prompt user to select an Arduino Uno device.
    MxSerialPort = await navigator.serial.requestPort({ filters });

    const { usbProductId, usbVendorId } = MxSerialPort.getInfo();

    // Wait for the serial port to open.
    await MxSerialPort.open({
      baudRate: 9600,
      dataBits: 8,
      stopBits: 1,
      parity: &quot;none&quot;,
      bufferSize: 255,
      flowControl: &quot;none&quot;,
    });
  }
  else
  {
    console.log(&quot;Serial not available!&quot;);
  }' customize='1' cmdcolor='4206456' cmdcolor_sec='10785756' cmdcolor_txt='16777215' cmdgradient='4' cmdopacity='0.64' language='C' />
					</flowline>
				</macro>
				<macro >
					<flowline name='OnMsg2' description='Called when the WebButton3 button is clicked' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<command class_type='delay' title='This delay forces the function to be &apos;async&apos;' cmdcolor='4206456' cmdcolor_sec='10785756' cmdcolor_txt='16777215' cmdgradient='4' cmdopacity='0.64' exp='1' type='1' />
						<command class_type='native' title='JavaScript' ccode='  if (&quot;serial&quot; in navigator)
  {
    if (MxSerialPort.writable != null)
    {
      const writer = MxSerialPort.writable.getWriter();

      const data = new Uint8Array([104, 101, 108, 108, 111, 33, 33]); // hello!!
      await writer.write(data);

      // Allow the serial port to be closed later.
      writer.releaseLock();
    }
    else
    {
      console.log(&quot;Not connected!&quot;);
    }
  }
  else
  {
    console.log(&quot;Serial not available!&quot;);
  }' customize='1' cmdcolor='4206456' cmdcolor_sec='10785756' cmdcolor_txt='16777215' cmdgradient='4' cmdopacity='0.64' language='C' />
					</flowline>
				</macro>
				<macro >
					<flowline name='Main' description='' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
					</flowline>
				</macro>
				<macro >
					<flowline name='OnMsg1' description='Called when the WebButton2 button is clicked' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<command class_type='delay' title='This delay forces the function to be &apos;async&apos;' cmdcolor='4206456' cmdcolor_sec='10785756' cmdcolor_txt='16777215' cmdgradient='4' cmdopacity='0.64' exp='1' type='1' />
						<command class_type='native' title='JavaScript' ccode='  if (&quot;serial&quot; in navigator)
  {
    if (MxSerialPort.writable != null)
    {
      const encoder = new TextEncoder();
      const writer = MxSerialPort.writable.getWriter();
      await writer.write(encoder.encode(&quot;Steve says hi!&quot;));
      writer.releaseLock();
    }
    else
    {
      console.log(&quot;Not connected!&quot;);
    }
  }
  else
  {
    console.log(&quot;Serial not available!&quot;);
  }' customize='1' cmdcolor='4206456' cmdcolor_sec='10785756' cmdcolor_txt='16777215' cmdgradient='4' cmdopacity='0.64' language='C' />
					</flowline>
				</macro>
				<macro >
					<flowline name='OnEnableRx' description='Called when the WebButton5 button is clicked' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<command class_type='delay' title='This delay forces the function to be &apos;async&apos;' cmdcolor='4206456' cmdcolor_sec='10785756' cmdcolor_txt='16777215' cmdgradient='4' cmdopacity='0.64' exp='1' type='1' />
						<command class_type='native' title='JavaScript' ccode='  if (&quot;serial&quot; in navigator)
  {
    MxSerialRxEnabled = true;
    MxSerialRxString = &quot;&quot;;
    const reader = MxSerialPort.readable.getReader();
    try
    {
      // Listen to data coming from the serial device.
      while (MxSerialPort.readable &amp;&amp; MxSerialRxEnabled)
      {
        const { value, done } = await reader.read();
        if (done)
        {
          //reader has been cancelled
          break;
        }
        // value is a Uint8Array.
        //console.log(value);
        
        const decoder = new TextDecoder();
        MxSerialRxString = MxSerialRxString + decoder.decode(value);
        //console.log(decoder.decode(value));
        
        FCD_052d1_TextBlock1__SetText(MxSerialRxString);
      }
    }
    catch (error)
    {
      console.log(&quot;Serial read error: &quot; + error);
    }
    finally
    {
      reader.releaseLock();
    }
  }' customize='1' cmdcolor='4206456' cmdcolor_sec='10785756' cmdcolor_txt='16777215' cmdgradient='4' cmdopacity='0.64' language='C' />
					</flowline>
				</macro>
			</macros>
			<component class_type='ref' guid='c68e35f2-92e3-4a48-abd9-4a1818aa1023' vmin='1' vmaj='0' codename='WebButton1' panelId='0' x='76' y='-26' z='0' xsz='25' ysz='25' zsz='25' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' scadavisible='1' interactive='1' solid='1' layer='2' poslock='0' comp2dType='0' >
				<resources />
				<properties />
				<values >
					<value target='sText' data='Open' />
					<value target='Caption::nHorizontalAlignment' data='2' />
					<value target='Caption::fntFamily' data='Calibri' />
					<value target='Caption::iFontSize' data='16' />
					<value target='Caption::colTextColour' data='0' />
					<value target='Caption::bBold' data='0' />
					<value target='Caption::bItalic' data='0' />
					<value target='Caption::bUnderline' data='0' />
					<value target='Caption::bStrikethrough' data='0' />
					<value target='Button::colFill' data='13816530' />
					<value target='iStyle' data='000' />
					<value target='Button::iOutlineSize' data='0' />
					<value target='Button::colOutline' data='0' />
					<value target='bShadow' data='1' />
					<value target='Shadow::colFill' data='7895160' />
					<value target='macroOnClick' data='OnOpen' />
					<value target='sCursor' data='024' />
					<value target='bShowPress' data='1' />
					<value target='bAutoColour' data='1' />
					<value target='colHover' data='5724159' />
					<value target='colClick' data='5921370' />
					<value target='sCustomAttributes' data='' />
				</values>
				<events />
				<apis />
				<variables />
				<macros />
			</component>
			<component class_type='ref' guid='c68e35f2-92e3-4a48-abd9-4a1818aa1023' vmin='1' vmaj='0' codename='WebButton2' panelId='0' x='76' y='-66' z='1' xsz='25' ysz='25' zsz='25' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' scadavisible='1' interactive='1' solid='1' layer='2' poslock='0' comp2dType='0' >
				<resources />
				<properties />
				<values >
					<value target='sText' data='Msg1' />
					<value target='Caption::nHorizontalAlignment' data='2' />
					<value target='Caption::fntFamily' data='Calibri' />
					<value target='Caption::iFontSize' data='16' />
					<value target='Caption::colTextColour' data='0' />
					<value target='Caption::bBold' data='0' />
					<value target='Caption::bItalic' data='0' />
					<value target='Caption::bUnderline' data='0' />
					<value target='Caption::bStrikethrough' data='0' />
					<value target='Button::colFill' data='13816530' />
					<value target='iStyle' data='000' />
					<value target='Button::iOutlineSize' data='0' />
					<value target='Button::colOutline' data='0' />
					<value target='bShadow' data='1' />
					<value target='Shadow::colFill' data='7895160' />
					<value target='macroOnClick' data='OnMsg1' />
					<value target='sCursor' data='024' />
					<value target='bShowPress' data='1' />
					<value target='bAutoColour' data='1' />
					<value target='colHover' data='5724159' />
					<value target='colClick' data='5921370' />
					<value target='sCustomAttributes' data='' />
				</values>
				<events />
				<apis />
				<variables />
				<macros />
			</component>
			<component class_type='ref' guid='c68e35f2-92e3-4a48-abd9-4a1818aa1023' vmin='1' vmaj='0' codename='WebButton3' panelId='0' x='76' y='-106' z='2' xsz='25' ysz='25' zsz='25' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' scadavisible='1' interactive='1' solid='1' layer='2' poslock='0' comp2dType='0' >
				<resources />
				<properties />
				<values >
					<value target='sText' data='Msg2' />
					<value target='Caption::nHorizontalAlignment' data='2' />
					<value target='Caption::fntFamily' data='Calibri' />
					<value target='Caption::iFontSize' data='16' />
					<value target='Caption::colTextColour' data='0' />
					<value target='Caption::bBold' data='0' />
					<value target='Caption::bItalic' data='0' />
					<value target='Caption::bUnderline' data='0' />
					<value target='Caption::bStrikethrough' data='0' />
					<value target='Button::colFill' data='13816530' />
					<value target='iStyle' data='000' />
					<value target='Button::iOutlineSize' data='0' />
					<value target='Button::colOutline' data='0' />
					<value target='bShadow' data='1' />
					<value target='Shadow::colFill' data='7895160' />
					<value target='macroOnClick' data='OnMsg2' />
					<value target='sCursor' data='024' />
					<value target='bShowPress' data='1' />
					<value target='bAutoColour' data='1' />
					<value target='colHover' data='5724159' />
					<value target='colClick' data='5921370' />
					<value target='sCustomAttributes' data='' />
				</values>
				<events />
				<apis />
				<variables />
				<macros />
			</component>
			<component class_type='ref' guid='c68e35f2-92e3-4a48-abd9-4a1818aa1023' vmin='1' vmaj='0' codename='WebButton4' panelId='0' x='76' y='-146' z='3' xsz='25' ysz='25' zsz='25' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' scadavisible='1' interactive='1' solid='1' layer='2' poslock='0' comp2dType='0' >
				<resources />
				<properties />
				<values >
					<value target='sText' data='Close' />
					<value target='Caption::nHorizontalAlignment' data='2' />
					<value target='Caption::fntFamily' data='Calibri' />
					<value target='Caption::iFontSize' data='16' />
					<value target='Caption::colTextColour' data='0' />
					<value target='Caption::bBold' data='0' />
					<value target='Caption::bItalic' data='0' />
					<value target='Caption::bUnderline' data='0' />
					<value target='Caption::bStrikethrough' data='0' />
					<value target='Button::colFill' data='13816530' />
					<value target='iStyle' data='000' />
					<value target='Button::iOutlineSize' data='0' />
					<value target='Button::colOutline' data='0' />
					<value target='bShadow' data='1' />
					<value target='Shadow::colFill' data='7895160' />
					<value target='macroOnClick' data='OnClose' />
					<value target='sCursor' data='024' />
					<value target='bShowPress' data='1' />
					<value target='bAutoColour' data='1' />
					<value target='colHover' data='5724159' />
					<value target='colClick' data='5921370' />
					<value target='sCustomAttributes' data='' />
				</values>
				<events />
				<apis />
				<variables />
				<macros />
			</component>
			<component class_type='ref' guid='c68e35f2-92e3-4a48-abd9-4a1818aa1023' vmin='1' vmaj='0' codename='WebButton5' panelId='0' x='246' y='-26' z='4' xsz='25' ysz='25' zsz='25' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' scadavisible='1' interactive='1' solid='1' layer='2' poslock='0' comp2dType='0' >
				<resources />
				<properties />
				<values >
					<value target='sText' data='Enable Rx' />
					<value target='Caption::nHorizontalAlignment' data='2' />
					<value target='Caption::fntFamily' data='Calibri' />
					<value target='Caption::iFontSize' data='16' />
					<value target='Caption::colTextColour' data='0' />
					<value target='Caption::bBold' data='0' />
					<value target='Caption::bItalic' data='0' />
					<value target='Caption::bUnderline' data='0' />
					<value target='Caption::bStrikethrough' data='0' />
					<value target='Button::colFill' data='13816530' />
					<value target='iStyle' data='000' />
					<value target='Button::iOutlineSize' data='0' />
					<value target='Button::colOutline' data='0' />
					<value target='bShadow' data='1' />
					<value target='Shadow::colFill' data='7895160' />
					<value target='macroOnClick' data='OnEnableRx' />
					<value target='sCursor' data='024' />
					<value target='bShowPress' data='1' />
					<value target='bAutoColour' data='1' />
					<value target='colHover' data='5724159' />
					<value target='colClick' data='5921370' />
					<value target='sCustomAttributes' data='' />
				</values>
				<events />
				<apis />
				<variables />
				<macros />
			</component>
			<component class_type='ref' guid='c68e35f2-92e3-4a48-abd9-4a1818aa1023' vmin='1' vmaj='0' codename='WebButton6' panelId='0' x='246' y='-66' z='5' xsz='25' ysz='25' zsz='25' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' scadavisible='1' interactive='1' solid='1' layer='2' poslock='0' comp2dType='0' >
				<resources />
				<properties />
				<values >
					<value target='sText' data='Disable Rx' />
					<value target='Caption::nHorizontalAlignment' data='2' />
					<value target='Caption::fntFamily' data='Calibri' />
					<value target='Caption::iFontSize' data='16' />
					<value target='Caption::colTextColour' data='0' />
					<value target='Caption::bBold' data='0' />
					<value target='Caption::bItalic' data='0' />
					<value target='Caption::bUnderline' data='0' />
					<value target='Caption::bStrikethrough' data='0' />
					<value target='Button::colFill' data='13816530' />
					<value target='iStyle' data='000' />
					<value target='Button::iOutlineSize' data='0' />
					<value target='Button::colOutline' data='0' />
					<value target='bShadow' data='1' />
					<value target='Shadow::colFill' data='7895160' />
					<value target='macroOnClick' data='OnDisableRx' />
					<value target='sCursor' data='024' />
					<value target='bShowPress' data='1' />
					<value target='bAutoColour' data='1' />
					<value target='colHover' data='5724159' />
					<value target='colClick' data='5921370' />
					<value target='sCustomAttributes' data='' />
				</values>
				<events />
				<apis />
				<variables />
				<macros />
			</component>
			<component class_type='ref' guid='3bd55a33-d9ed-44a0-80d9-76a8d954a335' vmin='1' vmaj='0' codename='TextBlock1' panelId='0' x='305' y='-170' z='6' xsz='16.875' ysz='25' zsz='25' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' scadavisible='1' interactive='1' solid='1' layer='2' poslock='0' comp2dType='0' >
				<resources />
				<properties />
				<values >
					<value target='GdiText1::sText' data='Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. ' />
					<value target='GdiText1::fntFamily' data='Arial' />
					<value target='iFontSize' data='12' />
					<value target='GdiText1::iFontSize' data='12' />
					<value target='GdiText1::nHorizontalAlignment' data='  0' />
					<value target='GdiText1::bWordWrap' data='1' />
					<value target='bHideOverflow' data='0' />
					<value target='GdiText1::bBold' data='0' />
					<value target='GdiText1::bItalic' data='0' />
					<value target='GdiText1::bUnderline' data='0' />
					<value target='GdiText1::bStrikethrough' data='0' />
					<value target='GdiText1::colTextColour' data='0' />
					<value target='GdiText1::colBackgroundColour' data='-1' />
					<value target='sCustomAttributes' data='' />
				</values>
				<events />
				<apis />
				<variables />
				<macros />
			</component>
			<component class_type='ref' guid='c68e35f2-92e3-4a48-abd9-4a1818aa1023' vmin='1' vmaj='0' codename='WebButton7' panelId='0' x='386' y='-26' z='7' xsz='25' ysz='25' zsz='25' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' scadavisible='1' interactive='1' solid='1' layer='2' poslock='0' comp2dType='0' >
				<resources />
				<properties />
				<values >
					<value target='sText' data='Rx with timeout' />
					<value target='Caption::nHorizontalAlignment' data='2' />
					<value target='Caption::fntFamily' data='Calibri' />
					<value target='Caption::iFontSize' data='16' />
					<value target='Caption::colTextColour' data='0' />
					<value target='Caption::bBold' data='0' />
					<value target='Caption::bItalic' data='0' />
					<value target='Caption::bUnderline' data='0' />
					<value target='Caption::bStrikethrough' data='0' />
					<value target='Button::colFill' data='13816530' />
					<value target='iStyle' data='000' />
					<value target='Button::iOutlineSize' data='0' />
					<value target='Button::colOutline' data='0' />
					<value target='bShadow' data='1' />
					<value target='Shadow::colFill' data='7895160' />
					<value target='macroOnClick' data='OnRxWithTimeout' />
					<value target='sCursor' data='024' />
					<value target='bShowPress' data='1' />
					<value target='bAutoColour' data='1' />
					<value target='colHover' data='5724159' />
					<value target='colClick' data='5921370' />
					<value target='sCustomAttributes' data='' />
				</values>
				<events />
				<apis />
				<variables />
				<macros />
			</component>
		</component>
	</components>
	<scadaresourcelookup />
	<keymap />
	<panel2d shadows='0' lighting='2' brightness='0' >
		<background rgb='7292207' img='' style='0' />
		<camera xe='0' ye='0' ze='590.48' xt='0' yt='0' zt='0' xquat='0' yquat='0' zquat='0' wquat='1' />
		<viewport dx='642' dy='419' zoom='131.557' fix_topleft='0' />
		<page x='1000' y='1000' show='1' rgb='16777215' />
		<winpos ID='7005' RectRecentFloat='1270,427,1920,877' RectRecentDocked='0,0,508,419' RecentFrameAlignment='16384' RecentRowIndex='0' IsFloating='0' MRUWidth='32767' PinState='0' IsMaximized='0' IsVisible='0' />
	</panel2d>
	<panel3d shadows='0' lighting='2' brightness='0' perspective='1' >
		<background rgb='8409120' img='' style='0' />
		<table rgb='7360576' img='' style='0' size='0' />
		<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' />
		<winpos ID='7004' RectRecentFloat='-657,630,-7,1080' RectRecentDocked='0,0,505,546' RecentFrameAlignment='16384' RecentRowIndex='0' IsFloating='0' MRUWidth='32767' PinState='0' IsMaximized='0' IsVisible='0' />
	</panel3d>
	<panels2d count='1' >
		<panel2d_0 id='0' name='Webpage Design' >
			<winpos ID='1171' RectRecentFloat='-1726,-554,-1126,-154' RectRecentDocked='926,141,1434,715' RecentFrameAlignment='16384' RecentRowIndex='0' IsFloating='1' MRUWidth='32767' PinState='0' IsMaximized='0' IsVisible='1' />
			<background fill='288230376151053813' showgrid='1' gridstyle='1' gridsize='10' gridbrush='71776119075691740' snaptogrid='1' />
		</panel2d_0>
	</panels2d>
	<layout >
		<view type='0' name='Main' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAA9AMAADkCAAA' zoom='75' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='OnOpen' mode='2' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAA9AMAADkCAAA' zoom='100' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='OnMsg1' mode='2' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAA9AMAADkCAAA' zoom='100' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='OnMsg2' mode='2' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAA9AMAADkCAAA' zoom='100' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='OnClose' mode='2' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAA9AMAADkCAAA' zoom='100' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='OnEnableRx' mode='2' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAA9AMAADkCAAA' zoom='100' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='OnDisableRx' mode='2' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAA9AMAADkCAAA' zoom='100' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='OnRxWithTimeout' mode='2' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAA9AMAADkCAAA' zoom='100' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='OnClose' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAA9AMAADkCAAA' zoom='100' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='OnMsg1' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAA9AMAADkCAAA' zoom='100' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='OnRxWithTimeout' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAA9AMAADkCAAA' zoom='100' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='OnDisableRx' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAA9AMAADkCAAA' zoom='100' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='OnEnableRx' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAA9AMAADkCAAA' zoom='100' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='OnMsg2' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAA9AMAADkCAAA' zoom='100' scrollx='0' scrolly='0' flags='0' />
	</layout>
</document>
</root>
