jfcby Posted October 8, 2008 Share Posted October 8, 2008 (edited) Hi,Below I've posted my script I need help with modifying. There are several problems with it that Im trying to resolve. I need to figure out a problem with another script Im working on. But, to demonstrate my problems easier Im creating this script with similar problems.The way I need the script to work is:1. When I click the Start button the count should start with array[0][1] value and end with array[1][1] value until I click the start button again then it should start with array[0][2] and end with array[1][2].2. While the script is running I need to be able to stop and pause the script with a button. And I need to be able to exit the script when I click the red x or an exit button.3. When I unpause the script with the HotSetKet _PUhsk I need it to start at the $ci value it was paused at.This is what Ive tried to add in my other script but did not work:1. AdlibEnable("Func Name", 100) and AdlibDisable() - This continues to run nonstop and could not get it to work with a button.2. When I used HotKeySet("{PAUSE}", "_PUhks") it would always restart at the same location it paused at. I tried it several different ways and none of them worked.Problem with my current script: When the script first starts up it errors out on line 20 with syntax error.expandcollapse popup#include <Array.au3> #include <GUIConstantsEx.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> #include <GuiButton.au3> HotKeySet("{ESC}", "_EX");Exit Script HotKeySet("{PAUSE}", "_PUhks");Pause Script Local $a1[100][100] Local $a1[0][1] = 1;Begin Local $a1[0][2] = 20 Local $a1[0][3] = 40 Local $a1[1][1] = 15;End Local $a1[1][2] = 35 Local $a1[1][3] = 55 Local $msg GUICreate("Array Test");Create a centered dialog box GUICtrlCreateLabel('Keboard Keys: "Esc" = Exit Script' & @LF & @LF & ' and "Pause/Break" = Pause Script', 30, 5, 175, 50, $SS_CENTER) $LBC = GUICtrlCreateLabel("125", 10, 75, 25, 25);Label Display Count $SR = GUICtrlCreateButton("Start", 40, 75, 50, 20);Start Button $PU = GUICtrlCreateButton("Pause", 95, 75, 50, 20);Pause Button $SP = GUICtrlCreateButton("Stop", 150, 75, 50, 20);Stop Button $Ex = GUICtrlCreateButton("Exit", 205, 75, 50, 20);Exit Button GUISetState();Displays an empty dialog box ; Run the GUI until the dialog is closed While 1 $msg = GUIGetMsg() Select Case $msg = $GUI_EVENT_CLOSE Or $msg = $Ex ExitLoop Case $msg = $SR _SR() Case $msg = $SP _SP() EndSelect WEnd Func _Count() For $ci = 1 to 4 For $i = $a1[0][$ci] to $a1[1][$ci] GUICtrlSetData($LBC, $i) Next Next EndFunc;==> Main Counter Func _SR() EndFunc;==> Start Counter Func _SP() EndFunc;==> Stop Counter Func _PU() EndFunc;==> Pause Counter With Button Func _PUhks() EndFunc;==> Pause Counter With HotKeySet Func _EX() Exit 0 EndFunc;==> Exit CounterThank you for your help,jfcby Edited December 19, 2008 by jfcby Determined -- Devoted -- Delivered Make your mind up -- to seriously apply yourself -- accomplishing the desired results. **** A soft answer turneth away wrath: but grievous words stir up anger. Proverbs 15:1 KJB **** Link to comment Share on other sites More sharing options...
PsaltyDS Posted October 8, 2008 Share Posted October 8, 2008 Problem with my current script: When the script first starts up it errors out on line 20 with syntax error. Local $a1[100][100] Local $a1[0][1] = 1;Begin Local $a1[0][2] = 20 Local $a1[0][3] = 40 Local $a1[1][1] = 15;End Local $a1[1][2] = 35 Local $a1[1][3] = 55 Thank you for your help, jfcby Take the "Local" keyword off the lines where you are only setting values: Local $a1[100][100] $a1[0][1] = 1;Begin $a1[0][2] = 20 $a1[0][3] = 40 $a1[1][1] = 15;End $a1[1][2] = 35 $a1[1][3] = 55 Valuater's AutoIt 1-2-3, Class... Is now in Session!For those who want somebody to write the script for them: RentACoder"Any technology distinguishable from magic is insufficiently advanced." -- Geek's corollary to Clarke's law Link to comment Share on other sites More sharing options...
jfcby Posted October 8, 2008 Author Share Posted October 8, 2008 Hi, In the following code: 1. How can I read a variable between functions? 2. Using the For Next statement is there a way to modify the code so that the Pause and Stop button will work? expandcollapse popup#include <Array.au3> #include <GUIConstantsEx.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> #include <GuiButton.au3> HotKeySet("{ESC}", "_EX");Exit Script HotKeySet("{PAUSE}", "_PUhks");Pause Script Global $Paused, $ci, $i Local $a1[100] Local $a2[100] $a1[1] = "1";Begin $a1[2] = "20" $a1[3] = "40" $a2[1] = "15";End $a2[2] = "35" $a2[3] = "55" Local $msg GUICreate("Array Test", 300, 300);Create a centered dialog box GUICtrlCreateLabel('Keboard Keys: "Esc" = Exit Script' & @LF & @LF & ' and "Pause/Break" = Pause Script', 30, 5, 175, 50, $SS_CENTER) $LBC = GUICtrlCreateLabel("", 10, 75, 25, 25);Label Display Count $SR = GUICtrlCreateButton("Start", 40, 75, 50, 20);Start Button $PU = GUICtrlCreateButton("Pause", 95, 75, 50, 20);Pause Button $SP = GUICtrlCreateButton("Stop", 150, 75, 50, 20);Stop Button $Ex = GUICtrlCreateButton("Exit", 205, 75, 50, 20);Exit Button GUISetState();Displays an empty dialog box ;Run the GUI until the dialog is closed While 1 $msg = GUIGetMsg() Select Case $msg = $GUI_EVENT_CLOSE Or $msg = $Ex ExitLoop Case $msg = $SR;Start Counter _SR() Case $msg = $PU;Pause Counter _PU() Case $msg = $SP;Stop Counter _SP() EndSelect WEnd Func _Count_ci() For $ci = 1 to 4 _Count_i() Next GUICtrlSetData($LBC, "") EndFunc;==> Main Counter Func _Count_i() For $i = $a1[$ci] to $a2[$ci] Sleep(200) ;MsgBox(0,"", $a1[$ci] & " - " & $a2[$ci]) GUICtrlSetData($LBC, $i) Next EndFunc Func _SR() _Count_ci() EndFunc;==> Start Counter Func _SP() EndFunc;==> Stop Counter Func _PU() ;Contimue count at same location that $a1[$ci] was paused. $Paused = NOT $Paused While $Paused sleep(100) ToolTip('Script is "Paused"',0,0) WEnd ToolTip("") EndFunc;==> Pause Counter With Button Func _PUhks() ;Continue count from the $ci value EndFunc;==> Pause Counter With HotKeySet Func _EX() Exit 0 EndFunc;==> Exit Counter Thank you for your help, jfcby Determined -- Devoted -- Delivered Make your mind up -- to seriously apply yourself -- accomplishing the desired results. **** A soft answer turneth away wrath: but grievous words stir up anger. Proverbs 15:1 KJB **** Link to comment Share on other sites More sharing options...
PsaltyDS Posted October 8, 2008 Share Posted October 8, 2008 Hi, In the following code: 1. How can I read a variable between functions? 2. Using the For Next statement is there a way to modify the code so that the Pause and Stop button will work? Thank you for your help, jfcby You need to start working with GuiOnEventMode instead of the GuiGetMsg() loop. It looks a little bit more complicated at first, but when you want one thing to interrupt another, it's actually easier: CODE#include <Array.au3> #include <GUIConstantsEx.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> #include <GuiButton.au3> Opt("GuiOnEventMode", 1) HotKeySet("{ESC}", "_Exit") ; Exit Script HotKeySet("{PAUSE}", "_Pause") ; Pause Script Global $fRun = False, $fPause = False Global $avArray1[5] = [4, 1, 20, 40, 60] ; Start values, [0] = number of values Global $avArray2[5] = [4, 15, 35, 55, 75] ; Stop values, [0] = number of values Global $hGui, $Label_Count, $Start_Button, $Pause_Button, $Stop_Button, $Exit_Button $hGui = GUICreate("Array Test", 300, 300) GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit") GUICtrlCreateLabel('Keboard Keys: "Esc" = Exit Script' & @LF & @LF & _ ' and "Pause/Break" = Pause Script', 30, 5, 175, 50, $SS_CENTER) $Label_Count = GUICtrlCreateLabel("", 10, 75, 25, 25);Label Display Count $Start_Button = GUICtrlCreateButton("Start", 40, 75, 50, 20);Start Button GUICtrlSetOnEvent(-1, "_ButtonHit") $Pause_Button = GUICtrlCreateButton("Pause", 95, 75, 50, 20);Pause Button GUICtrlSetOnEvent(-1, "_ButtonHit") $Stop_Button = GUICtrlCreateButton("Stop", 150, 75, 50, 20);Stop Button GUICtrlSetOnEvent(-1, "_ButtonHit") $Exit_Button = GUICtrlCreateButton("Exit", 205, 75, 50, 20);Exit Button GUICtrlSetOnEvent(-1, "_ButtonHit") GUISetState();Displays an empty dialog box ;Run the GUI until the dialog is closed While 1 If $fRun Then For $i = 1 To 4 If Not $fRun Then ExitLoop ; If stopped while running _Count_i($i) _CheckPause() Next EndIf Sleep(20) WEnd Func _ButtonHit() Switch @GUI_CtrlId Case $Start_Button ; Start Counter _Start() Case $Pause_Button ; Pause/Unpause Counter _Pause() Case $Stop_Button ; Stop Counter _Stop() Case $Exit_Button _Exit() EndSwitch EndFunc ;==>_ButtonHit Func _Start() $fRun = True $fPause = False EndFunc ;==>_Start Func _Pause() $fPause = Not $fPause EndFunc ;==>_Pause Func _Stop() $fRun = False $fPause = False EndFunc ;==>_Stop Func _Exit() Exit 0 EndFunc ;==>_Exit Func _CheckPause() While $fPause ToolTip('Script is "Paused"', 0, 0) Local $iTimer = TimerInit() Do Sleep(20) Until (TimerDiff($iTimer) >= 1000) Or ($fPause = False) WEnd ToolTip("") EndFunc ;==>_CheckPause Func _Count_i($iInput) For $i = $avArray1[$iInput] To $avArray2[$iInput] If Not $fRun Then Return ; Test for stop while running _CheckPause() ; Test for pause while running GUICtrlSetData($Label_Count, $i) Sleep(200) Next EndFunc ;==>_Count_i Valuater's AutoIt 1-2-3, Class... Is now in Session!For those who want somebody to write the script for them: RentACoder"Any technology distinguishable from magic is insufficiently advanced." -- Geek's corollary to Clarke's law Link to comment Share on other sites More sharing options...
jfcby Posted October 8, 2008 Author Share Posted October 8, 2008 You need to start working with GuiOnEventMode instead of the GuiGetMsg() loop. It looks a little bit more complicated at first, but when you want one thing to interrupt another, it's actually easier: CODE#include <Array.au3> #include <GUIConstantsEx.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> #include <GuiButton.au3> Opt("GuiOnEventMode", 1) HotKeySet("{ESC}", "_Exit") ; Exit Script HotKeySet("{PAUSE}", "_Pause") ; Pause Script Global $fRun = False, $fPause = False Global $avArray1[5] = [4, 1, 20, 40, 60] ; Start values, [0] = number of values Global $avArray2[5] = [4, 15, 35, 55, 75] ; Stop values, [0] = number of values Global $hGui, $Label_Count, $Start_Button, $Pause_Button, $Stop_Button, $Exit_Button $hGui = GUICreate("Array Test", 300, 300) GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit") GUICtrlCreateLabel('Keboard Keys: "Esc" = Exit Script' & @LF & @LF & _ ' and "Pause/Break" = Pause Script', 30, 5, 175, 50, $SS_CENTER) $Label_Count = GUICtrlCreateLabel("", 10, 75, 25, 25);Label Display Count $Start_Button = GUICtrlCreateButton("Start", 40, 75, 50, 20);Start Button GUICtrlSetOnEvent(-1, "_ButtonHit") $Pause_Button = GUICtrlCreateButton("Pause", 95, 75, 50, 20);Pause Button GUICtrlSetOnEvent(-1, "_ButtonHit") $Stop_Button = GUICtrlCreateButton("Stop", 150, 75, 50, 20);Stop Button GUICtrlSetOnEvent(-1, "_ButtonHit") $Exit_Button = GUICtrlCreateButton("Exit", 205, 75, 50, 20);Exit Button GUICtrlSetOnEvent(-1, "_ButtonHit") GUISetState();Displays an empty dialog box ;Run the GUI until the dialog is closed While 1 If $fRun Then For $i = 1 To 4 If Not $fRun Then ExitLoop ; If stopped while running _Count_i($i) _CheckPause() Next EndIf Sleep(20) WEnd Func _ButtonHit() Switch @GUI_CtrlId Case $Start_Button ; Start Counter _Start() Case $Pause_Button ; Pause/Unpause Counter _Pause() Case $Stop_Button ; Stop Counter _Stop() Case $Exit_Button _Exit() EndSwitch EndFunc ;==>_ButtonHit Func _Start() $fRun = True $fPause = False EndFunc ;==>_Start Func _Pause() $fPause = Not $fPause EndFunc ;==>_Pause Func _Stop() $fRun = False $fPause = False EndFunc ;==>_Stop Func _Exit() Exit 0 EndFunc ;==>_Exit Func _CheckPause() While $fPause ToolTip('Script is "Paused"', 0, 0) Local $iTimer = TimerInit() Do Sleep(20) Until (TimerDiff($iTimer) >= 1000) Or ($fPause = False) WEnd ToolTip("") EndFunc ;==>_CheckPause Func _Count_i($iInput) For $i = $avArray1[$iInput] To $avArray2[$iInput] If Not $fRun Then Return ; Test for stop while running _CheckPause() ; Test for pause while running GUICtrlSetData($Label_Count, $i) Sleep(200) Next EndFunc ;==>_Count_i PsaltyDS, Thank you for your help! How can the code be modified when it counts from 1 to 15 it will stop until the Start button is clicked then it will count from 20 to 35 and will stop until the start button is clicked (etc. 40 to 55, 60 to 75)? Thank you for your help, jfcby Determined -- Devoted -- Delivered Make your mind up -- to seriously apply yourself -- accomplishing the desired results. **** A soft answer turneth away wrath: but grievous words stir up anger. Proverbs 15:1 KJB **** Link to comment Share on other sites More sharing options...
jfcby Posted October 9, 2008 Author Share Posted October 9, 2008 You need to start working with GuiOnEventMode instead of the GuiGetMsg() loop. It looks a little bit more complicated at first, but when you want one thing to interrupt another, it's actually easier: CODE#include <Array.au3> #include <GUIConstantsEx.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> #include <GuiButton.au3> Opt("GuiOnEventMode", 1) HotKeySet("{ESC}", "_Exit") ; Exit Script HotKeySet("{PAUSE}", "_Pause") ; Pause Script Global $fRun = False, $fPause = False Global $avArray1[5] = [4, 1, 20, 40, 60] ; Start values, [0] = number of values Global $avArray2[5] = [4, 15, 35, 55, 75] ; Stop values, [0] = number of values Global $hGui, $Label_Count, $Start_Button, $Pause_Button, $Stop_Button, $Exit_Button $hGui = GUICreate("Array Test", 300, 300) GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit") GUICtrlCreateLabel('Keboard Keys: "Esc" = Exit Script' & @LF & @LF & _ ' and "Pause/Break" = Pause Script', 30, 5, 175, 50, $SS_CENTER) $Label_Count = GUICtrlCreateLabel("", 10, 75, 25, 25);Label Display Count $Start_Button = GUICtrlCreateButton("Start", 40, 75, 50, 20);Start Button GUICtrlSetOnEvent(-1, "_ButtonHit") $Pause_Button = GUICtrlCreateButton("Pause", 95, 75, 50, 20);Pause Button GUICtrlSetOnEvent(-1, "_ButtonHit") $Stop_Button = GUICtrlCreateButton("Stop", 150, 75, 50, 20);Stop Button GUICtrlSetOnEvent(-1, "_ButtonHit") $Exit_Button = GUICtrlCreateButton("Exit", 205, 75, 50, 20);Exit Button GUICtrlSetOnEvent(-1, "_ButtonHit") GUISetState();Displays an empty dialog box ;Run the GUI until the dialog is closed While 1 If $fRun Then For $i = 1 To 4 If Not $fRun Then ExitLoop ; If stopped while running _Count_i($i) _CheckPause() Next EndIf Sleep(20) WEnd Func _ButtonHit() Switch @GUI_CtrlId Case $Start_Button ; Start Counter _Start() Case $Pause_Button ; Pause/Unpause Counter _Pause() Case $Stop_Button ; Stop Counter _Stop() Case $Exit_Button _Exit() EndSwitch EndFunc ;==>_ButtonHit Func _Start() $fRun = True $fPause = False EndFunc ;==>_Start Func _Pause() $fPause = Not $fPause EndFunc ;==>_Pause Func _Stop() $fRun = False $fPause = False EndFunc ;==>_Stop Func _Exit() Exit 0 EndFunc ;==>_Exit Func _CheckPause() While $fPause ToolTip('Script is "Paused"', 0, 0) Local $iTimer = TimerInit() Do Sleep(20) Until (TimerDiff($iTimer) >= 1000) Or ($fPause = False) WEnd ToolTip("") EndFunc ;==>_CheckPause Func _Count_i($iInput) For $i = $avArray1[$iInput] To $avArray2[$iInput] If Not $fRun Then Return ; Test for stop while running _CheckPause() ; Test for pause while running GUICtrlSetData($Label_Count, $i) Sleep(200) Next EndFunc ;==>_Count_i PsaltyDS, I modified your script some and want to make sure that my modifications will not cause any unforseen problems in the future. I needed the script to count from 1 to 15 then stop until the a button is clicked then it will count from 20 to 35 and will stop until the a button is clicked (etc. 40 to 55, 60 to 75)? The changes made are: 1. a previous button added 2. If statement added at lines 40-44 If Not $fRun Then Do Sleep(20) Until $fRun EndIf 3. Func _Previous Added at lines 81-85 4. At line 109 a _Stop Added Are these changes correct and could they give problems in the future? expandcollapse popup#include <GUIConstantsEx.au3> #include <GuiButton.au3> #include <StaticConstants.au3> Opt("GuiOnEventMode", 1) HotKeySet("{ESC}", "_Exit"); Exit Script HotKeySet("{PAUSE}", "_Pause"); Pause Script Global $fRun = False, $fPause = False Global $avArray1[5] = [4, 1, 20, 40, 60]; Start values, [0] = number of values Global $avArray2[5] = [4, 15, 35, 55, 75]; Stop values, [0] = number of values Global $hGui, $Label_Count, $Start_Button, $Pause_Button, $Stop_Button, $Exit_Button, $Previous_Button $hGui = GUICreate("Array Test", 300, 100) GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit") GUICtrlCreateLabel('Keboard Keys: "Esc" = Exit Script' & @LF & @LF & _ ' and "Pause/Break" = Pause Script', 30, 5, 175, 50, $SS_CENTER) $Label_Count = GUICtrlCreateLabel("", 10, 75, 25, 25); Label Display Count $Start_Button = GUICtrlCreateButton("Next", 40, 75, 50, 20); Start Button GUICtrlSetOnEvent(-1, "_ButtonHit") $Pause_Button = GUICtrlCreateButton("Pause", 95, 75, 50, 20); Pause Button GUICtrlSetOnEvent(-1, "_ButtonHit") $Stop_Button = GUICtrlCreateButton("Stop", 150, 75, 50, 20); Stop Button GUICtrlSetOnEvent(-1, "_ButtonHit") $Exit_Button = GUICtrlCreateButton("Exit", 205, 75, 50, 20); Exit Button GUICtrlSetOnEvent(-1, "_ButtonHit") $Previous_Button = GUICtrlCreateButton("Previous", 40, 55, 50, 20); Previous Button GUICtrlSetOnEvent(-1, "_ButtonHit") GUISetState(); Displays an empty dialog box ; Run the GUI until the dialog is closed While 1 If $fRun Then For $i = 1 To 4 ;If Not $fRun Then ExitLoop; If stopped while running If Not $fRun Then Do Sleep(20) Until $fRun EndIf _Count_i($i) _CheckPause() Next EndIf Sleep(20) WEnd Func _ButtonHit() Switch @GUI_CtrlId Case $Start_Button; Start Counter _Start() Case $Pause_Button; Pause/Unpause Counter _Pause() Case $Stop_Button; Stop Counter _Stop() Case $Exit_Button; Exit Counter Script _Exit() Case $Previous_Button; Previous Count _Previous() EndSwitch EndFunc;==>_ButtonHit Func _Start() $fRun = True $fPause = False EndFunc;==>_Start Func _Pause() $fPause = Not $fPause EndFunc;==>_Pause Func _Stop() $fRun = False $fPause = False EndFunc;==>_Stop Func _Previous() $fRun = True $fPause = False $i = $i-1 EndFunc;==>_Previous Func _Exit() Exit 0 EndFunc;==>_Exit Func _CheckPause() While $fPause ToolTip('Script is "Paused"', 0, 0) Local $iTimer = TimerInit() Do Sleep(20) Until (TimerDiff($iTimer) >= 1000) Or ($fPause = False) WEnd ToolTip("") EndFunc;==>_CheckPause Func _Count_i($iInput) For $i = $avArray1[$iInput] To $avArray2[$iInput] If Not $fRun Then Return; Test for stop while running _CheckPause(); Test for pause while running GUICtrlSetData($Label_Count, $i) Sleep(200) Next _Stop() EndFunc;==>_Count_i Thank you for your help, jfcby Determined -- Devoted -- Delivered Make your mind up -- to seriously apply yourself -- accomplishing the desired results. **** A soft answer turneth away wrath: but grievous words stir up anger. Proverbs 15:1 KJB **** Link to comment Share on other sites More sharing options...
PsaltyDS Posted October 9, 2008 Share Posted October 9, 2008 (edited) PsaltyDS,I modified your script some and want to make sure that my modifications will not cause any unforseen problems in the future. I needed the script to count from 1 to 15 then stop until the a button is clicked then it will count from 20 to 35 and will stop until the a button is clicked (etc. 40 to 55, 60 to 75)? The changes made are: 1. a previous button added 2. If statement added at lines 40-44 If Not $fRun Then Do Sleep(20) Until $fRun EndIf 3. Func _Previous Added at lines 81-85 4. At line 109 a _Stop AddedAre these changes correct and could they give problems in the future?Thank you for your help,jfcbyGlad I could help, but I don't have time to do in-depth analysis of other people's scripts. The only test that matters is "Does it work?" So, does it? Edited October 9, 2008 by PsaltyDS Valuater's AutoIt 1-2-3, Class... Is now in Session!For those who want somebody to write the script for them: RentACoder"Any technology distinguishable from magic is insufficiently advanced." -- Geek's corollary to Clarke's law Link to comment Share on other sites More sharing options...
jfcby Posted October 9, 2008 Author Share Posted October 9, 2008 (edited) Glad I could help, but I don't have time to do in-depth analysis of other people's scripts. The only test that matters is "Does it work?" So, does it? PsaltyDS,I understand. Yes, it works.Thank you for your help it has added to my AutoIT scripting knowledge, but still learning. jfcby Edited October 9, 2008 by jfcby Determined -- Devoted -- Delivered Make your mind up -- to seriously apply yourself -- accomplishing the desired results. **** A soft answer turneth away wrath: but grievous words stir up anger. Proverbs 15:1 KJB **** Link to comment Share on other sites More sharing options...
TehWhale Posted October 10, 2008 Share Posted October 10, 2008 Hello, It appears you have found your answer to your question. Please take the time to edit your thread title with [RESOLVED] so others know that is it resolved. You can do this by scrolling to the top of your thread, clicking EDIT and then Full Edit and adding: "[RESOLVED]" to the front of your thread title. Thanks for your cooperation. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now