Jump to content
Sign in to follow this  
Pedro Pinheiro

Movendo texto na label

Recommended Posts

Fiquei procurando um modo de fazer um texto se mover na label, mas sem sucesso. Só consegui criando uma janela filha que não se move com a janela principal do programa. Aqui um script que estou tentando modificar, mas que não seja criada uma janela filha. Com o controlmove o label só fica andando pela tela de um ponto ao outro, eu queria que ele sumisse e reaparecer em outro lado.

#include <GUIConstants.au3>


$AboutGUI = GUICreate("About iDFree", 800, 600, -1, -1, $WS_BORDER)
WinSetOnTop("About iDFree", "", 1)
GUISetBkColor(0xFFFFFF)
GUICtrlSetState(-1, $GUI_DISABLE)

$close = GUICtrlCreateButton(" Ok! ", 380, 75, 35, 22)
$win = WinGetPos("About iDFree")
$child = GUICreate("About scroller", 175, 20, $win[0]+260, $win[1]+125, $WS_POPUP, $WS_EX_TRANSPARENT, $AboutGUI)
GUISetBkColor(0x00FF00)
$AboutLabel = GUICtrlCreateLabel("Era um garoto que como eu amava os Beatles  -- Próxima música: Como Tudo Deve Ser", 1, -80, 370, 15, BitOr($SS_NOTIFY, $SS_RIGHT))
GUISetState(@SW_SHOW, $AboutGUI)
GUISetState(@SW_SHOW, $child)

While 1
    For $i = -105 to 130
        $msg = GUIGetMsg()
        ControlMove("About scroller", "", $AboutLabel, 30-$i,1 )
        If $msg = $close Then

            GUIDelete($AboutGUI)
Exit
        EndIf
        sleep(50)
    Next
WEnd
Edited by Pedro Pinheiro

Share this post


Link to post
Share on other sites

Pedro, tô no celular agora , mas é só usar GUICtrlSetPos e pronto.

Nada desse ControlMove.

Mais tarde posto um exemplo.

 

 

Eu fiz um exemplo do que eu queria. Só que o único problema é que a label só faz o efeito na GUI inteira e não só na região que eu quero.

#include <GUIConstantsEx.au3>



    GUICreate("M",300,80,-1,-1)

    GUISetFont(16)
    Local $idLabel = GUICtrlCreateLabel("Movendo Label TEXTO TEXTO TEXTO", 1, 1)
GUICtrlSetBkColor(-1,0xff00ff)
    GUISetState(@SW_SHOW)
Local $x=1
      While 1
        $idMsg = GUIGetMsg()

        If $idMsg = $GUI_EVENT_CLOSE Then Exit
			$a=ControlGetPos("","",$idLabel)

			if $a[0] >= 290 Then
			$x-=650
			GUICtrlSetPos($idLabel, $x, 20)

			Else
               GUICtrlSetPos($idLabel, $x, 20)
			$x+=1

			EndIf
        Sleep(10)
    WEnd

Share this post


Link to post
Share on other sites

 

Fiquei procurando um modo de fazer um texto se mover na label, mas sem sucesso. Só consegui criando uma janela filha que não se move com a janela principal do programa. Aqui um script que estou tentando modificar, mas que não seja criada uma janela filha. Com o controlmove o label só fica andando pela tela de um ponto ao outro, eu queria que ele sumisse e reaparecer em outro lado.

 

 

 

Pedro Pinheiro, em 11 Mar 2017 - 10:24 PM, disse:

Eu fiz um exemplo do que eu queria. Só que o único problema é que a label só faz o efeito na GUI inteira e não só na região que eu quero.

#include <GUIConstantsEx.au3>



    GUICreate("M",300,80,-1,-1)

    GUISetFont(16)
    Local $idLabel = GUICtrlCreateLabel("Movendo Label TEXTO TEXTO TEXTO", 1, 1)
GUICtrlSetBkColor(-1,0xff00ff)
    GUISetState(@SW_SHOW)
Local $x=1
      While 1
        $idMsg = GUIGetMsg()

        If $idMsg = $GUI_EVENT_CLOSE Then Exit
			$a=ControlGetPos("","",$idLabel)

			if $a[0] >= 290 Then
			$x-=650
			GUICtrlSetPos($idLabel, $x, 20)

			Else
               GUICtrlSetPos($idLabel, $x, 20)
			$x+=1

			EndIf
        Sleep(10)
    WEnd

 

Pedro o negócio é bem isso mesmo , só que não tem jeito , você vai ter que fazer uma Gui (Filha) ai para que dê certo esse esquema.

 

Já fiz um Projeto assim uns 2 anos Atrás e pelo que me lembro fiz assim.

 

Vou achar e confirmo Ok.

Edited by Fábio iGames

Share this post


Link to post
Share on other sites

 

Muito bom esse UDF, eu procurei ela lá no forum gringo com base no seu comentario lá, mas não tinha achado. O mau dessa UDF que não tem como colocar um background transparente, mas mesmo assim ela é perfeita.

Share this post


Link to post
Share on other sites

@Pedro Pinheiro, dê um olhadinha aqui.

Acredito que o texto se mover, de forma legal, é só com GDI.

 

Achei esse exemplo beeem antigo... tenta mexer no eixo 'x', acredito que conseguirá o efeito desejado.

;#AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
#include <GUIConstantsEX.au3>
#include <WindowsConstants.au3>
#include <FontConstants.au3>
#include <WinAPI.au3>

Opt("MustDeclareVars", 1)

Local $hFont2, $hBmp1, $hBmp2, $hDC1, $hDC2, $hMemDC1, $hMemDC2, $tRECT1, $tRECT2, $pRECT1, $pRECT2
Local $iTextFlags = BitOR($DT_CENTER, $DT_VCENTER, $DT_SINGLELINE)

_DrawShadowTextDemo()

Func _DrawShadowTextDemo()
	Local Const $CLEARTYPE_QUALITY = 0x05
	Local $hGUI, $Msg, $sTime, $hFont1
	Local $cLabel1, $cLabel2, $cLabel3, $cLabel4, $cLabel5
	Local $hLabel4, $hLabel5, $hBitmap1, $hBitmap2, $hBitmap3

	$hGUI = GUICreate("DrawShadowText API Demo", 400, 420)
	_GuiSetDropShadow($hGUI, False)
	If @OSVersion == "WIN_VISTA" Then
		GUICtrlCreatePic(@WindowsDir & "\Web\Wallpaper\img25.jpg", -1, -1, 401, 300)
	Else
		GUICtrlCreatePic(@WindowsDir & "\Web\Wallpaper\Windows XP.jpg", -1, -1, 401, 300)
	EndIf
	GUICtrlSetState(-1, $GUI_DISABLE)
	GUISetBkColor(0xFFFFFF)


	;$hFont1 = _WinAPI_CreateFont(60, 0, 0, 0, 400, False, False, False, $DEFAULT_CHARSET, _
	;$OUT_DEFAULT_PRECIS, $CLIP_DEFAULT_PRECIS, $CLEARTYPE_QUALITY, BitOR($DEFAULT_PITCH, $FF_DONTCARE), "Arial Bold")

	$hFont1 = _WinAPI_CreateFont(60, 0, 0, 0, 400, False, False, False, $DEFAULT_CHARSET, _
			$OUT_DEFAULT_PRECIS, $CLIP_DEFAULT_PRECIS, $ANTIALIASED_QUALITY, BitOR($DEFAULT_PITCH, $FF_DONTCARE), "Arial Bold")

	$hFont2 = _WinAPI_CreateFont(70, 0, 0, 0, 400, False, False, False, $DEFAULT_CHARSET, _
			$OUT_DEFAULT_PRECIS, $CLIP_DEFAULT_PRECIS, $ANTIALIASED_QUALITY, BitOR($DEFAULT_PITCH, $FF_DONTCARE), "Comic Sans MS Bold")

	$cLabel1 = GUICtrlCreatePic("", 10, 20, 380, 50)
	$cLabel2 = GUICtrlCreatePic("", 10, 80, 380, 50)
	$cLabel3 = GUICtrlCreatePic("", 90, 140, 220, 50)

	$cLabel4 = GUICtrlCreateLabel("", 80, 305, 240, 50)
	$hLabel4 = GUICtrlGetHandle(-1)
	$cLabel5 = GUICtrlCreateLabel("", 80, 365, 240, 50)
	$hLabel5 = GUICtrlGetHandle(-1)

	$tRECT1 = _WinAPI_GetClientRect($hLabel4)
	$tRECT2 = _WinAPI_GetClientRect($hLabel5)
	$pRECT1 = DllStructGetPtr($tRECT1)
	$pRECT2 = DllStructGetPtr($tRECT2)
	$hDC1 = _WinAPI_GetWindowDC($hLabel4)
	$hDC2 = _WinAPI_GetWindowDC($hLabel5)
	$hMemDC1 = _WinAPI_CreateCompatibleDC($hDC1)
	$hMemDC2 = _WinAPI_CreateCompatibleDC($hDC2)
	$hBmp1 = _WinAPI_CreateCompatibleBitmap($hDC1, 240, 50)
	$hBmp2 = _WinAPI_CreateCompatibleBitmap($hDC2, 240, 50)
	;AdlibEnable("_Time", 100)
	AdlibRegister("_Time", 100)
	GUISetState()

	$sTime = StringFormat("%02d:%02d:%02d", @HOUR, @MIN, @SEC)
	$hBitmap1 = _CreateShadowTextBitmap($cLabel1, $hFont1, 380, 50, "Shadow Text", $iTextFlags, 0x00FFFFFF, 0x00000000, 6, 6) ;White text/Black shadow
	_SetBitmapToCtrl($cLabel1, $hBitmap1)

	Local $sText = "The quick brown fox jumps over the lazy dog"
	$hBitmap2 = _CreateShadowTextBitmap($cLabel2, 0, 380, 50, $sText, $iTextFlags, 0x00FFFFFF, 0x00000000, 3, 3) ;White text/Black shadow
	_SetBitmapToCtrl($cLabel2, $hBitmap2)

	$hBitmap3 = _CreateShadowTextBitmap($cLabel3, $hFont1, 220, 50, $sTime, $iTextFlags, 0x0000D7FF, 0x00000000, -3, -3) ;Gold text/Black shadow
	_SetBitmapToCtrl($cLabel3, $hBitmap3)
	Sleep(2000)
	$hBitmap3 = _CreateShadowTextBitmap($cLabel3, $hFont1, 220, 50, $sTime, $iTextFlags, 0x00000001, 0x0000D7FF, 3, 3) ;Black text/Gold shadow
	_SetBitmapToCtrl($cLabel3, $hBitmap3)
	Sleep(2000)
	$hBitmap3 = _CreateShadowTextBitmap($cLabel3, $hFont1, 220, 50, $sTime, $iTextFlags, 0x0000001, 0x0000CC00, 3, 3) ;Black text/Green shadow
	_SetBitmapToCtrl($cLabel3, $hBitmap3)
	Sleep(2000)
	$hBitmap3 = _CreateShadowTextBitmap($cLabel3, $hFont1, 220, 50, $sTime, $iTextFlags, 0x0000001, 0x00FF0000, 3, 3) ;Black text/Blue shadow
	_SetBitmapToCtrl($cLabel3, $hBitmap3)
	Sleep(2000)
	$hBitmap3 = _CreateShadowTextBitmap($cLabel3, $hFont1, 220, 50, $sTime, $iTextFlags, 0x00000001, 0x00C0C0C0, 3, 3) ;Black text/Grey shadow
	_SetBitmapToCtrl($cLabel3, $hBitmap3)

	While 1
		$Msg = GUIGetMsg()
		Switch $Msg
			Case -3
				ExitLoop
			Case $cLabel1
			Case $cLabel2
			Case $cLabel3
			Case $cLabel4
			Case $cLabel5
		EndSwitch
	WEnd

	GUIDelete()
	_WinAPI_ReleaseDC($hLabel4, $hDC1)
	_WinAPI_ReleaseDC($hLabel5, $hDC2)
	_WinAPI_DeleteDC($hMemDC1)
	_WinAPI_DeleteDC($hMemDC2)
	_WinAPI_DeleteObject($hFont1)
	_WinAPI_DeleteObject($hFont2)
	_WinAPI_DeleteObject($hBmp1)
	_WinAPI_DeleteObject($hBmp2)
	_WinAPI_DeleteObject($hBitmap1)
	_WinAPI_DeleteObject($hBitmap2)
	_WinAPI_DeleteObject($hBitmap3)
	Exit
EndFunc   ;==>_DrawShadowTextDemo


;#FUNCTION#========================================================================================
; Name...........: _WinAPI_DrawShadowText
; Description ...: Draws formatted text in the specified rectangle with a drop shadow
; Syntax.........: _WinAPI_DrawShadowText($hDC, $szText, ByRef $tRect, $iFlags, $crText, $crShadow, $ixOffset, $iyOffset)
; Parameters ....: $hDC - Identifies the device context
; $sText - The string to be drawn
; $tRect - $tagRECT structure that contains the rectangle for the text
; $iFlags - Specifies the method of formatting the text: *** See Remarks ***
; |$DT_BOTTOM - Justifies the text to the bottom of the rectangle
; |$DT_CALCRECT - Determines the width and height of the rectangle
; |$DT_CENTER - Centers text horizontally in the rectangle
; |$DT_EDITCONTROL - Duplicates the text-displaying characteristics of a multiline edit control
; |$DT_END_ELLIPSIS - Replaces part of the given string with ellipses if necessary
; |$DT_EXPANDTABS - Expands tab characters
; |$DT_EXTERNALLEADING - Includes the font external leading in line height
; |$DT_HIDEPREFIX - Ignores the ampersand (&) prefix character in the text.
; | The letter that follows will not be underlined, but other mnemonic-prefix characters are still processed.
; |$DT_INTERNAL - Uses the system font to calculate text metrics
; |$DT_LEFT - Aligns text to the left
; |$DT_MODIFYSTRING - Modifies the given string to match the displayed text
; |$DT_NOCLIP - Draws without clipping
; |$DT_NOFULLWIDTHCHARBREAK - Prevents a line break at a DBCS (double-wide character string),
; so that the line breaking rule is equivalent to SBCS strings.
; | For example, this can be used in Korean windows, for more readability of icon labels.
; | This value has no effect unless $DT_WORDBREAK is specified
; |$DT_NOPREFIX - Turns off processing of prefix characters
; |$DT_PATH_ELLIPSIS - For displayed text, replaces characters in the middle of the string with ellipses
; | so that the result fits in the specified rectangle.
; | If the string contains backslash (\) characters,
; | $DT_PATH_ELLIPSIS preserves as much as possible of the text after the last backslash.
; | The string is not modified unless the $DT_MODIFYSTRING flag is specified
; |$DT_PREFIXONLY - Draws only an underline at the position of the character following the ampersand (&) prefix character.
; | Does not draw any other characters in the string
; |$DT_RIGHT - Aligns text to the right
; |$DT_RTLREADING - Layout in right to left reading order for bi-directional text
; |$DT_SINGLELINE - Displays text on a single line only
; |$DT_TABSTOP - Sets tab stops. Bits 15-8 of $iFlags specify the number of characters for each tab
; |$DT_TOP - Top-justifies text (single line only)
; |$DT_VCENTER - Centers text vertically (single line only)
; |$DT_WORDBREAK - Breaks words
; |$DT_WORD_ELLIPSIS - Truncates any word that does not fit in the rectangle and adds ellipses
; $crText - Color of the text in hexadecimal COLORREF format: (ABGR) 0x00FFFFFF
; $crShadow - Color of the text shadow in hexadecimal COLORREF format: (ABGR) 0x00FFFFFF
; $ixOffset - Drop shadow X offset integer - positive and negative values
; $iyOffset - Drop shadow Y offset integer - positive and negative values
; "The low-order byte contains a value for the relative intensity of red
; the second byte contains a value for green; and the third byte contains a value for blue.
; The high-order byte must be zero. The maximum value for a single byte is 0xFF".
; Return values .: Success - The height of the text*
; Failure - 0 and error set
; Author ........: rover
; Modified.......:
; Remarks .......: *** Detailed remarks are absent on the MSDN web page, so it is an assumption that the following applies to DrawShadowText as well.
; * "If the function succeeds, the return value is the height of the text in logical units.
; If DT_VCENTER or DT_BOTTOM is specified, the return value is the offset from lpRect->top to the bottom of the drawn text".
; "The DrawText function uses the device context&#39;s selected font, text color, and background color to draw the
; text. Unless the $DT_NOCLIP format is used, DrawText clips the text so that it does not appear outside the
; specified rectangle. All formatting is assumed to have multiple lines unless the $DT_SINGLELINE format is
; specified. If the selected font is too large, DrawText does not attempt to substitute a smaller font".
;+
; Needs WindowsConstants.au3 for pre-defined constants
; Related .......: DrawText, $tagRECT
; Link ..........; @@MsdnLink@@ DrawShadowText
; Example .......; Yes
; ===================================================================================================
Func _WinAPI_DrawShadowText($hDC, $szText, ByRef $tRect, $iFlags = 0, $crText = 0, $crShadow = 0, $ixOffset = 0, $iyOffset = 0)
	If IsDllStruct($tRect) = 0 Or DllStructGetSize($tRect) <> 16 Then Return SetError(1, 1, 0)
	Local $aResult, $iError

	$aResult = DllCall("ComCtl32.dll", "int", "DrawShadowText", "hwnd", $hDC, "wstr", $szText, "int", -1, "ptr", _ ;StringLen($szText)
			DllStructGetPtr($tRect), "dword", $iFlags, "dword", $crText, "dword", $crShadow, "int", $ixOffset, "int", $iyOffset)
	$iError = @error
	If @error Or UBound($aResult) <> 10 Then Return SetError($iError, 2, 0)
	Return SetError($iError, 0, $aResult[0])
EndFunc   ;==>_WinAPI_DrawShadowText

Func _CreateShadowTextBitmap($CtrlId, $hFont, $iWidth, $iHeight, $sText, $iFlags, $iColText, $iColShadow, $ixOffset, $iyOffset)
	Local $hDC, $hMemDC, $hBMP, $hOldhBMP, $hOldFont, $tRect, $hWnd, $hBMP
	Local Const $STM_GETIMAGE = 0x173
	$hWnd = GUICtrlGetHandle($CtrlId)
	$hBMP = GUICtrlSendMsg($CtrlId, $STM_GETIMAGE, 0, 0)
	If $hBMP <> 0 Then
		_WinAPI_DeleteObject($hBMP)
		GUICtrlSetState($CtrlId, $GUI_SHOW)
	EndIf
	$tRect = _WinAPI_GetClientRect($hWnd)
	$hDC = _WinAPI_GetWindowDC($hWnd)
	$hMemDC = _WinAPI_CreateCompatibleDC($hDC)
	$hBMP = _WinAPI_CreateCompatibleBitmap($hDC, $iWidth, $iHeight)
	$hOldhBMP = _WinAPI_SelectObject($hMemDC, $hBMP)
	$hOldFont = _WinAPI_SelectObject($hDC, $hFont)
	_WinAPI_DrawShadowText($hDC, $sText, $tRect, $iFlags, $iColText, $iColShadow, $ixOffset, $iyOffset)
	_WinAPI_BitBlt($hMemDC, 0, 0, $iWidth, $iHeight, $hDC, 0, 0, $MERGECOPY)
	_WinAPI_SelectObject($hMemDC, $hOldFont)
	_WinAPI_SelectObject($hMemDC, $hOldhBMP)
	_WinAPI_ReleaseDC($hWnd, $hDC)
	_WinAPI_DeleteDC($hMemDC)
	Return $hBMP
EndFunc   ;==>_CreateShadowTextBitmap

; from Zedna&#39;s Resources.au3
Func _SetBitmapToCtrl($CtrlId, $hBitmap)
	Local Const $STM_SETIMAGE = 0x0172
	Local Const $IMAGE_BITMAP = 0
	Local Const $SS_BITMAP = 0xE
	Local Const $GWL_STYLE = -16

	Local $hWnd = GUICtrlGetHandle($CtrlId)
	If $hWnd = 0 Then Return SetError(1, 0, 0)
	; set SS_BITMAP style to control
	;Local $oldStyle = DllCall("user32.dll", "long", "GetWindowLong", _
	;"hwnd", $hWnd, "int", $GWL_STYLE)
	;If @error Then Return SetError(2, 0, 0)
	;DllCall("user32.dll", "long", "SetWindowLong", "hwnd", $hWnd, _
	;"int", $GWL_STYLE, "long", BitOR($oldStyle[0], $SS_BITMAP))
	;If @error Then Return SetError(3, 0, 0)
	Local $oldBmp = DllCall("user32.dll", "hwnd", "SendMessage", _
			"hwnd", $hWnd, "int", $STM_SETIMAGE, "int", $IMAGE_BITMAP, "int", $hBitmap)
	If @error Then Return SetError(4, 0, 0)
	If $oldBmp[0] <> 0 Then _WinAPI_DeleteObject($oldBmp[0])
	Return 1
EndFunc   ;==>_SetBitmapToCtrl

Func _Time()
	Local $obj_orig1 = _WinAPI_SelectObject($hMemDC1, $hBmp1)
	Local $obj_orig2 = _WinAPI_SelectObject($hMemDC2, $hBmp2)
	Local $hOldFont1 = _WinAPI_SelectObject($hMemDC1, $hFont2)
	Local $hOldFont2 = _WinAPI_SelectObject($hMemDC2, $hFont2)
	_WinAPI_FillRect($hMemDC1, $pRECT1, 0)
	_WinAPI_FillRect($hMemDC2, $pRECT2, 0)
	Local $sTime = StringFormat("%02d:%02d:%02d", @HOUR, @MIN, @SEC)
	_WinAPI_DrawShadowText($hMemDC1, $sTime, $tRECT1, $iTextFlags, 0x00000001, 0x00C0C0C0, -3, -3)
	_WinAPI_DrawShadowText($hMemDC2, $sTime, $tRECT2, $iTextFlags, 0x00FFFFFF, 0x00C0C0C0, 3, 3)
	_WinAPI_BitBlt($hDC1, 0, 0, 240, 50, $hMemDC1, 0, 0, $SRCCOPY)
	_WinAPI_BitBlt($hDC2, 0, 0, 240, 50, $hMemDC2, 0, 0, $SRCCOPY)
	_WinAPI_SelectObject($hMemDC1, $obj_orig1)
	_WinAPI_SelectObject($hMemDC2, $obj_orig2)
	_WinAPI_SelectObject($hMemDC1, $hOldFont1)
	_WinAPI_SelectObject($hMemDC2, $hOldFont2)
EndFunc   ;==>_Time


;#FUNCTION#========================================================================================
; Name...........: _GuiSetDropShadow
; Description ...: Sets the drop shadow effect on forms and dialogs for current process
; Syntax.........: _GuiSetDropShadow($hwnd, $fDisrespectUser = True)
; Parameters ....: $hWnd - Handle to parent form or child dialog (GuiCreate(), MsgBox(), FileOpenDialog(), etc.)
; $fDisrespectUser - True: (Default) - set system option for drop shadow if disabled by user
; - False: - do not set system option for drop shadow if disabled by user
; Return values .: Success - 1
; Failure - 0 @error set and @extended set to point of failure
; Author(s) ........: rover, (lod3n, Rasim for Get/SetClassLong, Kip - RegisterclassEx() for drop shadow idea, ProgAndy - xMsgBox hook)
; Remarks .......: Note: drop shadow is lost if parent form clicked on (If MsgBox created with parent handle)
; hiding, then restoring MsgBox to foreground or moving MsgBox off of form restores drop shadow.
; use 262144 or 4096 flags with MsgBox if using with hParent handle to prevent loss of drop shadow if parent clicked on.
; this behaviour is apparently by design.
;+
; Minimum Operating Systems: Windows XP
; Related .......:
; Link ..........; @@MsdnLink@@ SetClassLong Function
; Example .......; Yes
; ===================================================================================================
Func _GuiSetDropShadow($hWnd, $fDisrespectUser = True)
	If Not IsHWnd($hWnd) Then Return SetError(1, 1, 0)

	;check if hWnd is from current process
	Local $aResult = DllCall("User32.dll", "int", "GetWindowThreadProcessId", "hwnd", $hWnd, "int*", 0)
	If @error Or $aResult[2] <> @AutoItPID Then Return SetError(@error, 2, 0)

	If Not IsDeclared("SPI_GETDROPSHADOW") Then Local Const $SPI_GETDROPSHADOW = 0x1024
	If Not IsDeclared("SPI_SETDROPSHADOW") Then Local Const $SPI_SETDROPSHADOW = 0x1025
	If Not IsDeclared("CS_DROPSHADOW") Then Local Const $CS_DROPSHADOW = 0x00020000
	If Not IsDeclared("GCL_STYLE") Then Local Const $GCL_STYLE = -26

	$aResult = DllCall("user32.dll", "int", "SystemParametersInfo", "int", $SPI_GETDROPSHADOW, "int", 0, "int*", 0, "int", 0)
	Local $iErr = @error
	If $iErr Or Not IsArray($aResult) Then Return SetError($iErr, 3, 0)

	;if &#39;Show shadows under menus&#39; option not set, try activating it.
	If Not $aResult[3] And $fDisrespectUser Then
		;turn on drop shadows
		$aResult = DllCall("user32.dll", "int", "SystemParametersInfo", "int", $SPI_SETDROPSHADOW, "int", 0, "int", True, "int", 0)
		$iErr = @error
		If $iErr Or Not IsArray($aResult) Or $aResult[0] <> 1 Then Return SetError($iErr, 4, 0)
	EndIf

	;get styles from WndClassEx struct
	$aResult = DllCall("user32.dll", "dword", "GetClassLong", "hwnd", $hWnd, "int", $GCL_STYLE)
	$iErr = @error
	If $iErr Or Not IsArray($aResult) Or Not $aResult[0] Then Return SetError($iErr, 5, 0)
	Local $OldStyle = $aResult[0]

	;add drop shadow style to styles
	Local $Style = BitOR($OldStyle, $CS_DROPSHADOW)

	If StringRight(@OSArch, 2) == "64" Then
		;if 64 bit windows (NOT TESTED)
		;see MSDN SetClassLong remarks
		;$aResult = DllCall("user32.dll", "ulong_ptr", "SetClassLongPtr", "hwnd", $hWnd, "int", $GCL_STYLE, "long_ptr", $Style)
		;$iErr = @error
		;If $iErr Or Not IsArray($aResult) Or Not $aResult[0] Then Return SetError($iErr, 6, 0)
	Else
		$aResult = DllCall("user32.dll", "dword", "SetClassLong", "hwnd", $hWnd, "int", $GCL_STYLE, "long", $Style)
		$iErr = @error
		If $iErr Or Not IsArray($aResult) Or Not $aResult[0] Then Return SetError($iErr, 7, 0)
		If $aResult[0] = $OldStyle Then Return SetError($iErr, 0, 1)
		Return SetError($iErr, 8, 0)
	EndIf
EndFunc   ;==>_GuiSetDropShadow

Edited by Luigi
  • Like 1

Share this post


Link to post
Share on other sites

Achei o exemplo que fiz para um projeto a quase dois anos atrás ... em 09/08/2015.

 

Essa UDF do Melba23 eu não tinha visto ainda , muito boa. :up:

 

Acredito que em GDI seja mais complexo e usaria umas linhas a mais ai. :P

 

Esse que fiz é bem simples e tem toda transparência que precisa para esse tipo de coisa, e ainda pode-se fazer com a Janela com borda para mover que o texto acompanha como Janela filha e tal. :up:

 

Veja ai:

#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.14.2
 Author:: Fábio iGames
     Criado em: 09/08/2015

 Script Function:
	 Mover Label Dentro da Janela Principal ...
	 ... Surgindo numa Extremidade e Sumindo em outra.

#ce ----------------------------------------------------------------------------

#include <WindowsConstants.au3> ; Usado para Parâmetros da GuiCreate.
#include <ColorConstantS.au3> ; Usado Para Cores.
#include <WinAPI.au3> ; Usado Para a Função _WinAPI_SetLayeredWindowAttributes

HotKeySet("{Esc}", "_Fechar") ; Instala a Tecla pra Chamar a Função _Fechar().

Global $GuiPrincipal,  $Gui_Mensagens , $Propaganda
Local $Mensagem , $j = 1

If Not FileExists(@ScriptDir & "\Mensagens.ini") Then ; Se Não Existir o Arquivo Então...
	 IniWrite(@ScriptDir & "\Mensagens.ini", "Mensagens", "1", "Para o Brother PedroWarlock")
	 IniWrite(@ScriptDir & "\Mensagens.ini", "Mensagens", "2", "E pra galera do AutoIt Brasil")
	 IniWrite(@ScriptDir & "\Mensagens.ini", "Mensagens", "3", "Desenvolvedor: Fábio iGames ©")
	 IniWrite(@ScriptDir & "\Mensagens.ini", "Mensagens", "4", "Contatos:(11) 94140-2390 / WhatsApp")
	 IniWrite(@ScriptDir & "\Mensagens.ini", "Mensagens", "5", "Email:fabioigames@hotmail.com")
	 IniWrite(@ScriptDir & "\Mensagens.ini", "Mensagens", "6", "iGames Divertindo Você !")
	 IniWrite(@ScriptDir & "\Mensagens.ini", "Mensagens", "7", "Que DEUS abençoe a todos.")
EndIf

; Testa com Borda e sem Borda.
; Obs: Com a Borda Tem Que Ajustar ... ou o Fundo ou a Janela Filha e Seus Elementos, no Caso a Label.

;~ $GuiPrincipal = GUICreate(" By: Fábio iGames", 193, 96, -1 , -1, "", BitOR($WS_EX_TOPMOST, $WS_EX_TOOLWINDOW,$WS_EX_COMPOSITED)) ; Janela Principal Com Borda etc ...
$GuiPrincipal = GUICreate(" By: Fábio iGames", 187, 76, -1 , -1, $WS_POPUP, BitOR($WS_EX_TOPMOST, $WS_EX_TOOLWINDOW,$WS_EX_COMPOSITED)) ; Janela Principal Sem Borda etc ...

GUICtrlCreatePic(_Fundo_iGames(True), 0, 0, 187, 76) ; Imagem de Fundo.
GUISetBkColor($Color_Black, $GuiPrincipal ) ; Cor Fundo da Janela.
GUISetState(@SW_SHOW , $GuiPrincipal) ; Mostra a Janela.

$Gui_Mensagens  = GUICreate(" Label Move", 161, 19, 17, 17, $WS_POPUP, BitOR($WS_EX_COMPOSITED, $WS_EX_LAYERED,$WS_EX_MDICHILD), $GuiPrincipal) ;  Mostra Gui sem Borda e Transparente e Filha da Gui Principal.
GUISetBkColor($Color_Black, $Gui_Mensagens) ; Cor de Fundo da Janela.

$Propaganda = GUICtrlCreateLabel("", 0, 0, 280, 18) ; Label Vazia que vai Receber Propaganda ou as Próximas Músicas ai.
GUICtrlSetColor($Propaganda, $Color_White) ; Cor da Fonte.
GUICtrlSetFont($Propaganda, 11, 600, 1, "Tahoma") ; Parâmetros da Fonte.

_WinAPI_SetLayeredWindowAttributes($Gui_Mensagens, $Color_Black, 255) ; Transparência do Texto Parâmetro vai de 0 à 255. == > RETIRE AQUI PAR VER COMO FICA.

GUISetState(@SW_SHOW, $Gui_Mensagens) ; Mostra a Janela.

While 1 ; Loop pra Mater a Janela Aberta.
     GUIGetMsg()
	 $Mensagem = IniRead(@ScriptDir&"\Mensagens.ini", "Mensagens", $j, "") ; Lê o Número da Mensagem.
	 GUICtrlSetData($Propaganda, $Mensagem) ; Seta Mensagem do Número Lida no ini.
     For $i = 180 To -280 Step -1 ; Loop Para Mudar a Posição X da Label.
         GUICtrlSetPos($Propaganda, $i, 0) ; Muda a Posição da Label no eixo X Movimentando-a.
         Sleep(15) ; Delay Para a Label Mover Devagar ==> Aumentando Fica Mais Lento.
	 Next
     $j += 1 ; Aumenta a Variável em + 1
     If $j > 7 Then $j = 1 ; Se a Variável For Maior Que 7 Volta a Ser 1 Para Ler a 1ª Mensagem Novemante e Mostra-lá.
WEnd

Func _Fechar() ; Função só para Fechar com a Tecla Esc.
     Exit(0) ; Sai/Fechar
EndFunc

#Region ; Imagem Embutida com CreateFilesEmbedded ;==> Créditos By: JScript  <=> OBRIGADO.
#include-once
Func _Fundo_iGames( $lToSave = False, $sPath = @ScriptDir, $lExecute = False)
	 Local $hFileHwnd, $bData, $sFileName = $sPath & "\Fundo_iGames.jpg"

	 $bData = "/z//2P/gABBKRklGAAECAQBkAGQAAP/hD5pFeGlmAABNTQAqAAAACAAHARIAAwAAAAEAAQAAARoABQAAAAEAAABiARsABQAAAAEAAABqASgAAwAAAAEAAgAAATEAAgAAABQAAAByATIAAgAAABQAAACGh2kABAAAAAEAAACcAAAAyAAAAGQAAAABAAAAZAAAAAFBZG9iZSBQaG90b3Nob3AgNy4wADIwMTc6MDM6MTIgMjA6MDQ6NDMAAAAAA6ABAAMAAAAB//8AAKACAAQAAAABAAAAu6ADAAQAAAABAAAATAAAAAAAAAAGAQMAAwAAAAEABgAAARoABQAAAAEAAAEWARsABQAAAAEAAAEeASgAAwAAAAEAAgAAAgEABAAAAAEAAAEmAgIABAAAAAEAAA5sAAAAAAAAAEgAAAABAAAASAAAAAH/2P/gABBKRklGAAECAQBIAEgAAP/tAAxBZG9iZV9DTQAC/+4ADkFkb2JlAGSAAAAAA"
	 $bData &= "f/bAIQADAgICAkIDAkJDBELCgsRFQ8MDA8VGBMTFRMTGBEMDAwMDAwRDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAENCwsNDg0QDg4QFA4ODhQUDg4ODhQRDAwMDAwREQwMDAwMDBEMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM/8AAEQgANACAAwEiAAIRAQMRAf/dAAQACP/EAT8AAAEFAQEBAQEBAAAAAAAAAAMAAQIEBQYHCAkKCwEAAQUBAQEBAQEAAAAAAAAAAQACAwQFBgcICQoLEAABBAEDAgQCBQcGCAUDDDMBAAIRAwQhEjEFQVFhEyJxgTIGFJGhsUIjJBVSwWIzNHKC0UMHJZJT8OHxY3M1FqKygyZEk1RkRcKjdDYX0lXiZfKzhMPTdePzRieUpIW0lcTU5PSltcXV5fVWZnaGlqa2xtbm9jdHV2d3h5ent8fX5/cRAAICAQIEBAMEBQYHBwYFNQEAAhEDIT"
	 $bData &= "ESBEFRYXEiEwUygZEUobFCI8FS0fAzJGLhcoKSQ1MVY3M08SUGFqKygwcmNcLSRJNUoxdkRVU2dGXi8rOEw9N14/NGlKSFtJXE1OT0pbXF1eX1VmZ2hpamtsbW5vYnN0dXZ3eHl6e3x//aAAwDAQACEQMRAD8A1srqVuP6lluQa62HVzjAHZUD9cOnsJDs5wcOQWWf+kll/W97G4oIc4TcRMn/AEdu3/pLBGHhgD9Xr4H5o8Fz+HloTx+5knk9UpADHKq4f73E7ufJOOT24Qx+mMSTON3xf3XtB9dOl/8Ac8/5lv8A6SRG/XXpI5z/APoW/wDpJcQMTD/7j1/5rVIYmF/3Gq/zWonk8H7+f/Hh/wB4wnJmP6OL/FP/AHz3TPrv0Yc9QE+bLf8A0irFf166CPpdRaP7F3/pBefjFwe+PV/mBTGN04c49P8A22CmS5Hlz+nzH/hkP+8YZnIdxD6RfRP+fv1aLYPUgD4+nb/6SVTK+u3QXD9"
	 $bData &= "F1OT5V2f+klxleP0vvi0n/rY/uRLcHphZubi0j4Vj+5RDk+XjL5+Z/wAeH/qtoc3i44SEu36Hpk7o+uPTtx/X3R/Us/8ASaOz65dIET1A+css/wDSa41uHglx/V6/8wf3Io6fgf8Acev/ADR/ct74fy8YjijxS/2p4v8Ao8Ly8+U5Yk3PmfpOH/ePYD669GH/AGvP+ZZ/6TT/APPbov8A3PP+ZZ/6TXHfYMAf9pqz/ZCY4WD/ANxav81q1oymNow+wsf3HlT/AJTmv/DIf+q3sv8Anv0f/ucf8y3/ANJKJ+uvSP8Auef8y3/0muO+x4P/AHGq/wA1qicLB/7j1j4NCeJ5O0PsKRyHK/5zmv8AwyH/AKrez/559JPGefP2Wf8ApJWMvqltnTbrqLy9j6i6uysyCCNHNcFwTsLCDXEY9cgGDtC3+jms/Vi70gdk3BomI+ju/wCnuUmOcjLhlGOsTIGI/dY+Z5PHjxxyYsmY1khjlHLKMhKO"
	 $bData &= "Ti/d4P3H/9DP+tjBZjhr9B6riPiKrS3/AKSwxZVA9w4HceC6XqNWPf69eSGmkn373QBGu7dI2bf3lms6X0N52VlrnESGsyHk6fyW3LEw5oRx8EhP0ykbgBIer/Cg9Nn5LLLLxwOOpxgKnKUJXH+7HI5nqVeLfvH96f1Kv3mfMhaJ6b0NrC8ugNO1x9ezQgbo/nf3fcpno3SR2d4n9Nb/AOlU85sXUZB/gR/9WMY5HmDt7J8sk/8A1U5nq0+LPvH96kMiscPYP7QV9vSujPYHsJc0/Rc260g/Ai5MeldJH5rz4xbb/wClUvdw/wCs/wAWH/qxI+G80dhi/wAfJ/6parMtg/wjP84K3R1Cg+x9rADpJcNEC3C6PWNzmvaOJNto1PHNqCcHp7jO2xjBy422D/qrE6GLHmkIx9y5Gh6Y/wDfol8G5mYIPsjTW8k//VLY9SphdutZyYhzfH4qJya+1jf84Kga8GnNdW6t9lLv5siyyB/aZZ7lq"
	 $bData &= "U4XRrAP1d48T61//pVddj+DcxgxwA9uQ4R6hOXq/wDG3hec5eHLZsmPJ7hMJGNwjAw0/d4skEBvr/0jf84KJuq5L2n+0P71ot6N0d2von/t+7/0sifsPo0a0kf9fu/9LJfcuYHSH+NL/vGn945Yf57/ABMf/q5yfVp8W/5w/vS9Wvs9n+cFsfsDov8Aoj/2/d/6WT/sHonahx/69d/6WS+6Z+0P8aX/AHijzfLD/Pf4mP8A9XOK+2vY73t4P5w8PitjpDax9WrmsBc3ddBH9n/vya3on1fYQy9jKy/6LLMmxpd/Va/IbuVu+inG6ZZjUhtNVdbgxgOgnXuUcfLzjMykY+mMo1E8Xzf4MWPPzOKeOOPGMlyyQnxZIxgKhxR04J5P33//0Qgk9XwtAWnqGID5g5FDT/0VX6o+/wC1349t7rwcm4VejaLgwutsx2eljtsZ6eR6dvo4tH6Kz/B07K0rbTVn15LWhzsbJqyGsJ2hxpsryPTL9t"
	 $bData &= "mzf6e3f6b1HEzbsXqVfU2Na+2u2241bnNafXFrbq2W1/pqdrMl/o3t99aycOSEcXtyNcWW5fN8lfpcPzRer5rk88+Y97HAS4OW4YEiF+/xT4Y45ZP5vJH5+N2On4uTX9Yeg5WQ55bnOtbXVdSMeylmKyzBdhfZay6mrEay79XZX6f6N932ir1vUWA7Hpb0JuVj5BvoqNeNa2ykV2AOr9bGyq9l1rbab66n/orfTuru+n7FaxerWYf7KGNj1Vjotlz8aXucHsyIdbTkDY39LvG/7XT6X/hL01RusB6cOmY7RRiMcbSHO9ax9mz7PU+3I9LG/R4+P+iooqop/wALbb6tyszy4CDqJa8Q+bi4/T8rT5fkfiEZwAxSxjhGORvF7ZxQnklKM48U/V7c4Qh/XdDNw8pmX1Z+Vket9hvAyMkVtD7rbn+ljtZS010U+ptfZkWf4BlX8xe+zYquRj+ljY2Wy3fj5fqtbubtsrtpc1l1Fuxz67GbbK7"
	 $bData &= "aMiv+dr/naMd6lf1h9+T1G2yhv2fqpa/JxQ8yLK/0tWRjZZrL6bK8n1LvfRfT6dv2W2q6tV78o31Y+OGCvGxGvFFU7nTa4WZN1922v1773tZ/g6aaqq66qKKkzIMEuIiiZE/vcfGZb8X7nA3uRw/EYZMEZxlCEBAS1xex93jh4JY+CHr9/wB9ngMvsyi2nI9Cw0ZJDwxtktbRbZbS5tvta2+lltXqfzlaDTWC6qTHqG0teCQ5rafRr2Nd9Kv1LLrLLLGbLNno/wCC9X1DYdzcbIbd6IuaG212VFxZuZdVZi2NFrG2Oqdsu+n6b0zKbRUGh26IeZG0+oG+l61T27vT9RntsY+u6r/g1rfCOXPFGXBx8Gtf4Ub/AObFZ8T5XmZ8xKccPvYOPlsmXF+rH3nDhjnhkxeuUeP28mTDn9rN+rn7Tm5tVduZXufYGvd6bH11brH7Xvr9nuq+23+t+re+z1P5r/rm1V0G1nVOlYPrZGPV1cP9P7VR"
	 $bData &= "syKXVmyp7L8X1dj2OsrrfXZ6lf6C3+b/ANJVxeoW9KzasoUi70a7qtoe5j4yN3r21ZTGb8XK/Sfo76K/Yh4n1npwr+jvr6cAOiuvNLRc79Iy4vsY23dW/bbVfZ6z7a/0d/8AN/Z6K/5velD4kQI4cU44owyVGBx8PHkGWUZcOSXHGXu8H8v1bynM4AJSGXBHB6pcOKPywh7kuD+blkj/ADf6HE3mDE/ZDesDMtdjC84tjBjM9Qv9L7a23G3Zfpei7F32frD/AFt/6JXLcDOoyOpY/wDP/slzGX2VVlznm5zK8JlOMHOe193qfpv577P6Vv6PI/R1Lm6Mx/7CHRS0Cn7R9q9bXfv+znp/p7Po+nsd6q2LetvzM7qGTfjVuxurtqbnYBsdsc6kM9PIpyQxt2Pay2v1av0eRWz6H6VRz5b4nDi+eV8YFnHL0xlj4Zfo+qUPec6WPkrHFCIrhOgl81Sv/B+RvNxst+U/DoLb72Yjcz0WMaL9x"
	 $bData &= "LBb019PqPazOxGP9fJ2etZ6Hp+lhetdsVezIc2m57Cd1e9rPVZ6bg4ez9Zxt9voPqu3Mtp9T/B/4L+Zrosbikn9DFYA9Gtt7q3VPadwvqyG0WVet9Jv/J1df+hrpu/TW2r7zl3X3ZAD3ZO0WAlzpa2qvEa11lrnW2P9Civ1bn++27fb+j/m2HBh5wZCMnHwe3QlP241P9H0455OJqc1HlOAGEYiXuWYw45cUP0vVOMOFuZht6e54oy341T8jLx6RXZW1pOG9uE5/UvVx7v2jl5dn63bjXemz7F+ip/RenXTXvcBiWtrraxr8c2FjQBWHtuy+n3fZ6/o049z+nfa6sdv6PH+0ejV+iS9d7i91wsssvj7S9mVfjNv2gVsdn4mMHVZV2xv6W+q3B9X/jf0ihmOc/GvfZG417QGjYxrGNFVNFFUu9Giipvp1V7v+NstvsttfW5bk88JmU4cHCJcc+L+d020ZOd5jDkxiEJ8dmHBDg/muGUfVx"
	 $bData &= "f3fRwv/9Lnsv8Abn2izd6H0j4oDv2z/wAB+K5JJZA/6l9Xth/6df4Hy/4H9V6o/tf/AIH8VE/tbv6MfNcuknD/AKmyD/07enH7W7ej+Kl/lnt6K5ZJTY9/0PoiX/p49Y39s/8AA/ijj9uRp6H4rjEl0Xwz/qn/AFJint/4L+r0uX+1Nd/o/KVm2fat2uyfKVmJLosO3/gv/BeW+KfOfm/6ru69f2/ts8plWq/2p29P8VzySGT/ANOnDy/9T+r1TP2xpHox80Zn7cnT0PnK49JV5f8Apw1J/wDUfq9oP2/P/af8VG/9t+jZ6noentO6JmPJcakoZ/Kf5/Y7sY+YfzG483//2f/tFEBQaG90b3Nob3AgMy4wADhCSU0EBAAAAAAABxwCAAACAAIAOEJJTQQlAAAAAAAQRgzyiSa4VtqwnAGhsKeQdzhCSU0D7QAAAAAAEABkBb4AAAAAAQACAGSBA3A4QklNBCYAWBgAAA4CKAIgP4AAqgA"
	 $bData &= "CZA0COAQAFHgCPEoZBjweAR4D8wIeCasCCgAIAQNqCgIeAQOGNCcQAhoKAOoCEAACBQI59QIMSAAvZmZVABlsAAUGAhEBBBGhKJmaAAURMgAZAQDWWgAFBRE1AhEtBxECUwL4AA8AAHAAAP85EgAD6AEfTxuBPQQIh4I9gXWAewJAAACBAV2Eoh6CDYGig48agQcDWj+AAgaBBIQBTIADuwGAAQUARgB1AG79gNBvgAaAJoACCwGJCYEYH4EcihARGgRNgRNudWwKbMABAsAABmJvdYBuZHNPYmpjQANhxA1SY3QxQAMCLFSAb3AgbG9uZ8ADIYIATGVmdMkDQnSMb23EA4IhUmdoxQcBgSYGc2xpY2VzUFZsTHOADwHKGQUrwgaABRLAAAcCA0lEgcgWB2dyb3VwigQABm9yaWdpbmWIbnVtwAwMRVNBFwZPwgTAAw1hdXRvAEdlbmVyYXRlQQG4AFR5cGUECwoHAwtBBIAKAEltZyAH"
	 $bData &= "wAH/P9s/A3VybFR4RVhUgBoEVwFfSwRNCHNnZUoEBmFsdAhUYWfKBA5jZWwAbFRleHRJc0iAVE1MYm9vbAEUBgiFBQoLCWhvcnpQQWxpZ0VKDwM/SAOFBcARB2RlZmF1BGx0QAEJdmVydA3QBVbFAssFC2JnQ1BvbG9yiCsR4wtCBkcGA0AGAE5vbmUB4AAJdG9wT3V0ZHNlCUcKbABJrgIMWGJvdAAq7gILQDxolnTMAuJuEQENAAEkj1YUogEBV3yiAwzhAQ7OiKAAgSWgmgA0wJ/gAAJOQAIObAAYAAEA/9j/4AAQSkYASUYAAQIBAEgBIAAA/+0ADEFkAG9iZV9DTQACkP/uAA6iAQBkIQgAAf/bAIQADAgACAgJCAwJCQwAEQsKCxEVDwwADA8VGBMTFRPwExgRDAIAxACDAa0AAAENCwsNDg0QAA4OEBQODg4U6YEADhRDBhEkB8QAEwgg/8AAEQjAGYADAAEiAAIRAQMRAAH/3"
	 $bData &= "QAEAAj/xMQBQIsBBQECAOAcBUEAA4AbBAUGBwhgCQoLAQCMA+DBAwGFAxAAAQQBAwIABAIFBwYIBQMEDDOAAxEDBCESADEFQVFhEyJxAIEyBhSRobFCACMkFVLBYjM0AHKC0UMHJZJTAPDh8WNzNRaiALKDJkSTVGRFAMKjdDYX0lXiAGXys4TD03XjAPNGJ5SkhbSVAMTU5PSltcXVAOX1VmZ2hpamALbG1ub2N0dXAGd3h5ent8fXAOf3EQACAgEChAQEYhIHBgU1QhAQITESBCAQcSITIAUygZEUIRDBUgDR8DMkYuFyggCSQ1MVY3M08QQlBgEQByY1wtIBgBCjF2RFVTZ0LGXiRhA3ECdHEP/aCAAMA2IOEQA/AADWyupW4/qWWwCQa62HVzjAHQCVA/XDp7CQ7ADnBw5BZZ/6SQBl/W97G4oIcwCE3ETJ/wBHbgDf+ksEYeGAPwBXr4H5o8Fz+AB5aE8fuZJ5PQBSkAMcqrh/vQ"
	 $bData &= "DE7ufJOOT24QAMfpjEkzjd8QB/de0H106X/wAAc8/5lv8A6QAkRv116SOc/wgA+hagASXEDEwAP/uPX/mtUhgAmF/3Gq/zWokA5PB+/n/x4f8AAHjCcmY/o4sA/FP/AHz3TPoA79GHPUBPmy0A/wDSKsV/XroACPpdRaP7F38A6QXn4xcHvj0AX+YFMY3ThzgA9P8A22CmS5EA5c/p8x/4ZD8A7xhmch3EPpEAfRP+fv1aLYMA1IA+Pp2/+kkAVMr67dBcP0UA1OT5V2f+klwAZXj9L74tJ/4Atj+5EtwemFkAubi0j4Vj+5QAQ5Pl4y+fmf8AAB4f+q2hzeIA44SEu36Hpk4A6Prj07cf190AH9Sz/wBJo7MA65dIET1A+csCLAAKa41uHglxAP1ev/MH9yKOAJ+B/wBx6/8AADR/ct74fy8YAI4o8Uv9qeL/AACjwvLz5TliAE3PmfpOH/ePAGA+uvRh/wBrAZASf+k0/wDz20Ci/wD"
	 $bData &= "c8/5wGE0Acd9gwB/2mrMg/ZCY4WBQAVq/AM1q1oymNow+AMLH9x5U/wCUAOa/8Mh/6reyAP8Anv0f/ucfAvOREkon669I/wAAuef8y3/0mhDjvseDoAiq/wAANaonCwf+49YAPg0J4nk7Q+wAKRyHK/5zmv8AAMMh/wCq3s8A/nn0k8Z58/YAWf8ApJWMvqkAbZ0266i8vY8AqLq7KzIII0cANcFwTsLCDXEAGPXIBg7Qt/oAOaz9WLvSB2QA3BomI+ju/wAAp7lJjnIy4ZQAY6xMgYj91j4AZ5PHjxxyYskAmNZIY5RyyjIAEo5OL93g/ccA/9DP+tjBZjgAa/Qeq4j4iq0BMAuksMWVQPcOAAdx4Lpeo1Y9AP69eSGmkn37AN0ARru3SNm3APeWazpfQ3nZAFlrnESGsyHkAOn8ltyxMOaEAHHwSE/TKRuAABIer/Cg9Nn5ACyyy8cDjqcYAAqcpQlcf7scAI5nqVeLfvH9AOn9Sr95"
	 $bData &= "nzIWAInpvQ2sLy6AANO1x9ezQgboAP53933KZ6N0QJHZ3if01rApVADzmxdRkH+BHwD9WMY5HmDt7ACfLJP/ANVOZwCrT4s+8f3qQwAiscPYP7QV9gD0roz2B7CXNAD9FzbrSD8CLgBMeldJH5rz4wAW2/8ApVL3cAD/AKz/ABYf+gCxI+G80dhi/wAAHyf+qWqzLQCD/CM/zgrdHQBCg+x9rADpJQDDRAtwuj1jcwCa9o4k22jU8QDNqCcHp7jO2wAYwcuNtg/6qwAToYseaQjH3AC5Gh6Y/wDfogBfBuZmCD7I0wBbyT/9Utj1KgBhdutZyYhzfAB+KicmvtY3/ADgqBrwac11bgCt9lLv5siyyAAf2mWe5alOFwBGsA/V3jxPrQB//pVddj+DcwAYMcAPbkOEegCE5er/AMbeFwCc5eHLZsmPJwC4TCRjcIwMNAD93iyQQG+v/QAjf84KJuq5LwBp/tD+9aLejQDR3a+if+37vwD0s"
	 $bData &= "ifsPo0a0gBH/X7v/SyX3AC5gdIf40v+8QCn945Yf57/AAATH/6ucn1afABb/nD+9L1a+4A9n+cFsfsDsC0Aoj/2/d/6WT8A7B6J2ocf+vUBsAAvumftD/GlAdA/o83yw/z3+AGgDvVzivtr2O8Ae3g/nDw+K2MApDax9WrmsBcAN3XQR/Z/78kAreifV9hDL2MAKy/6LLMmxpcAf1WvyG7lbvoAKcbplmNSG00AVdbgxgOgnXsAlHHy84zMpGMA6YyjUTxfN/gAMWPPzOKeOOMAxjJcskJ8WSMAGAqHFHTgnk8A33//0Qgk9XwALQFp6hiA+YMAkUNP/RVfqj4A/wC1349t7rwAHJuFXo2i4MIA62zHZ6WO2xkA6eR6dvo4tH4Ais/wdOytK20ANWfXktaHOxsAJqyGsJ2hxpsAK8j0y/bZs38Ap7d/pvUcTNsAsXqVfU2Na+0ArttuNW5zWn0AcWturZbX+moAdrMl/o3t99YAsnDkhH"
	 $bData &= "F7cjUAxZbl83yV+lwAPzRer5rk888AmPexwEuDluEAgSIX7/FPhjgA5ZP5vJH5+N0Ajp+Lk1/WHoMAlZDnluc61tcAVdSMeylmKywAwXYX2WsupqwARrLv1dlfp/oAN932ir1vUWAAOx6W9CblY+QAG+io141rbKQAV2AOr9bGyq8AZda22m+up/4Ait9O6u76fsUAaxerWYf7KGMAY9VY6LZc/GkAe5wezIh1tOQADY39LvG/7XQA+l/4S9NUbrAAHpw6ZjtFGIwAcbSHO9ax9mwA+z1PtyPSxv0AHj4/6KiiqikA/wALbb6tyswA8uAg6iWvEPkAuLj9PytPl+QAfiEZwAxSxjgARjkbxe2cUJ4ASUozjxT9XtwA4Qh/XdDNw8oAZl9WflZHrfYAG8DIyRW0PusAbn+ljtZS010AFPqbX2ZFn+AAGVfzF77Niq4ARj+ljY2Wy3cA4+X6rW7m7bIAu2lzWXUW7HMA67GbbK7aMisA/na"
	 $bData &= "/52jHepUA/WH35PUbbKEAv2fqpa/JxQ8AMiyv9LVkY2UAmsvpsryfUu8AfRfT6dv2W2oAurVe/KN9WPgA4YK8bEa8UVQA7nTa4WZN190Atr9e+97Wf4MAppqqrrqooqQAzIMEuIiiZE8A73HxmW/F+5wADe5HD8RhkwQAZxlCEBAS1xcAsfd44eCWPggAev3/AH2eAy8Asyi2nI9Cw0YASQ8MbZLW0W0AltLm2+1rb6UAltXqfzlaDTUAguqkx6htLXgAJDmtp9GvY10A9Kv1LLrLLLEAmyzZ6P8AgvUAfUNh3Nxsht0A6IuaG212VFwAWbmXVWYtjRYAsbY6p2y76foAb0zKbRUGh24AiHmRtPqBvpcArVPbu9P1Ge0AsY+u6r/g1rcAwjlzxRlwcfAAa1/hRv8A5sUAZ8T5XmZ8xKcAHD72Dj5bJlwAX6sfecOGOeEAkxeuUeP28mQAw5/azfq5+04Abm1V25le59gAGvd6bH11brEA"
	 $bData &= "+176/Z7qvtsAf636t77PU/kAr/rm1V0G1nUATpWD62Rj1dUAw/0/tVGzIpcAVmyp7L8X1dgA9jrK6312epUQ/oLf5rBxVcXqABb0rNqyhSLvAEa7qtoe5j4yADd69tWUxm/FAMr9J+jvor9iAB4n1npwr+jvAK+nADorrzS0AFzv0jLi+xjbAHdW/bbVfZ6zAO2v9Hf/ADf2AHor/m96UPiRAAI4cU44owyVABgcfDi3ADx5BllGXDklAMcZe7wfy/VvACnM4AJSGXBHAAeqXDij8sIeAOS4P5uWSP8AADf6HE3mDE/ZAA3rAzLXYwvOAC2MGMz1C/0vALa23G3ZfpeiAOxd9n6w/wBbAH/olctwM6jIAOpY/wDP/slzABl9lVZc55ucAMrwmU4wc57XAN3qfpv577P6AFb+jyP0dS5uAIzH/sIdFLQKAH7R9q9bXfv+AM56f6ez6Pp7AB3qrYt62/MzALqGTfjVuxurALam52AbHbHOA"
	 $bData &= "KQz08inJDG3AGPay2v1av0eAEVs+h+lUc+WAPicOL55XxgWAHHL0xlj4ZfoAPqlD3nOlj5KAMcUIiuE6CXzAFSv/B+RvNxsALflPw6C2+9mACNzPRYxov3EALBb019PqPazADsRj/XydnrWAHoen6WF612xAFezIc2m57CdANXvaz1Wem4OAB7P1nG32+g+AKu3Mtp9T/B/AOC/ma6LG4pJAP0MVgD0a23uAK3VPadwvqyGANFlXrfSb/ydAF1/6Gum79NbAGr7zl3X3ZADAN2TtFgJc6WtAKq8RrXWWudbAGP9Civ1bn++ANu32/o/5thwAGHnBkIycfB7AHQlP241P9H0AOOeTianNR5TAIAYRiJe5ZjDAI5cUP0vVOMOABbmYbenueKMALfjVPyMvHpFAHZW1pOG9uE5AP1L1ce79o5eAF2frduNd6bPALF+ip/RenXTAF73AYlra62sAGvxzYWNAFYeANuy+n3fZ6/oANOPc/p32u"
	 $bData &= "rHAG/o8f7R6NX6ACS9d7i91wssALL4+0vZlX4zAG/aBWx2fiYwAHVZV2xv6W+qANwfV/439IoZAI5z8a99kbjXALQGjYxrGNFVADRRVLvRooqbAOnVXu/42y2+AMttfW5bk88JAJlOHBwiXHPiAP53TbRk53mMADkxiEJ8dmHBAA4P5rhlH1cXAPd9HC//0ueyAP8Abn2izd6HANI+KA79s/8AAAH4rkklkD/qAF9Xth/6df4HAMv+B/VeqP7XAP8AgfxUT+1uAP6MfNcuknD/AACpsg/9O3pxAPtbt6P4qX+WAHt6K5ZJTY9/AND6Il/6ePWNAcESA/ijj9uRpwCh+K4xJdF8MwD+qf8AUmKe3wD4L+r0uX+1NQDf6PylZtn2rQDa7J8pWYkuiwIOQAb8F5b4p84Afm/6ru69f28A7bPKZVqv9qcAb0/xXPJIZP8AANOnDy/9T+oA9Uz9saR6MfMARmftydPQ+coA49JV5f8Apw0ASf8"
	 $bData &= "A1H6vaD8Ab8/9p/xUb/0At+jZ6noentMAuiZjyXGpKGcA8p/n9juxj5gAfzG483//2ThAQklNBCEAAQBVCQABAQEAAQ8AQQAAZABvAGIAZQCgIABQAGjAAnTAACpzQgJwQAgTXAggACA3AC4AMEAKAQAFQhgGgAIAAAcACAGBBAEA/+ESSGgAdHRwOi8vbnMALmFkb2JlLmMAb20veGFwLzEALjAvADw/eHAAYWNrZXQgYmUAZ2luPSfvu78AJyBpZD0nVzUATTBNcENlaGkASHpyZVN6TlQAY3prYzlkJz9QPgo8P0IJLcAILQBmaWx0ZXJzIABlc2M9IkNSIgnBA3g6IANtZXRhACB4bWxuczp4ND0nAgY6YAHBAi8nAiBCBHRrPSdYTQBQIHRvb2xraQB0IDIuOC4yLQAzMywgZnJhbQBld29yayAxLgQ1JyAOcmRmOlJMREYECqABPScEG3cAd3cudzMub3IAZy8xOTk5LzAgMi8y"
	 $bData &= "Mi0gBC1zAHludGF4LW5zZiPgDQIRaVjGBuohaUZYwiEADQogPEAHOgJEwBlyaXB0aW8AbiBhYm91dD0AJ3V1aWQ6NDIANGM0YzgzLTAANzc4LTExZTcALWFmNDYtOWEAYzA2OThlM2IgOGQnCiDlHmFwHE1NMw4AJEIObW0vEaAOICA8AAJNTToARG9jdW1lbnSISUQ+IyZkb2PADgBwaG90b3NobwBwOjE4MmVmNYA5ZC0zZWZkARAANS05Zjg3LWIAZWUxZmQzNGJwNmFmPOE7iwnAGi/h7Bo+Cgo8YgLAKgAs6i+GNj7gFyAfAD8EOgT/nwwfDD4EnwyfDJ8Mfwg/BP89BD8Zfww+BE8GLwMfAR8B/x8BGAFPBu8CHwEfAR8BGAH/TwbvAh8BHwEfARgBTwbvAv8fAR8BHwEYAU8G7wIfAR8B/x8BGAFPBu8CHwEfAR8BGAH/TwbvAh8BHwEfARgBTwbvAv8fAR8BHwEYAU8G7wIfA"
	 $bData &= "R8B/x8BGAFPBu8CHwEfAR8BGAH/TwbvAh8BHwEfARgBTwbvAv8fAR8BHwEYAU8G7wIfAR8B/x8BGAFPBu8CHwEfAR8BGAH/TwbvAh8BHwEfARgBTwbvAv8fAR8BHwEYAU8G7wIfAR8B/x8BGAFPBu8CHwEfAR8BGAH/TwbvAh8BHwEfARgBTwbvAg8fAR8BHwETAa26+iABAAoCUFxA/8k/mFcQ/3+XYCc/GT8ZYBA/GT8IPwT8ICDfJb8IPgSfDJ8Mnwz/fwg/BD0EPxl/DD4EnwxTCAAKPD94cGFjawBldCBlbmQ9JwB3Jz8+/+4ADgBBZG9iZQBkQAAAAAAB/9sAhKwAAR8AJQQCBwADBgDByAcCAgECAicDPwEBIgT/wAARCABMAAC7AwERAAIRAAEDEQH/3QAEQAAY/8QBosAUBhgCAwHAAEQABwgGAAUECQMKAgEAcgvAAgYD4A+mA0ADAwAHAggBCQAKCwAQAAIBAwQBAwIDIR"
	 $bData &= "ICBgl1AQIAAwQRBRIGIQcAEyIACDEUQTIAIxUJUUIWYSQAMxdScYEYYpEAJUOhsfAmNHIAChnB0TUn4VMANoLxkqJEVHMARUY3R2MoVVYAVxqywtLi8mQAg3SThGWjs8MA0+MpOGbzdSoAOTpISUpYWVoAZ2hpanZ3eHkAeoWGh4iJipQAlZaXmJmapKUApqeoqaq0tbYAt7i5usTFxscAyMnK1NXW19gA2drk5ebn6OkA6vT19vf4+foBwB8BAwIEBAMFgAQEBAYGBW1AFgARBCESBTEGAAAiE0FRBzJhFABxCEKBI5EVUgChYhYzCbEkwQDRQ3LwF+GCNAAlklMYY0TxogCyJjUZVDZFZIAnCnODk0Z08QqAVWV1VjeEhQILAPMpGpSktMTUAOT0laW1xdXlAPUoR1dmOHaGAJamtsbW5vZnAHeHl6e3x9fnAPdIWGh4iJioALjI2Oj4OUlZAGl5iZmpucnZAOn5KjpKWmp6AIqaqrr"
	 $bData &= "K2ur6EP/aAAzgGQIRAwARAD8Atb3R3gDdk0WcqYYs0gClPBDF41MSEgA9NgeWsbj/AAB59/OTzR7qewCDZ7tcxRbrSACRVoCo4U67twCxe1fJdztkEgBJthMrMa5PTADRfIrsZyFGdQB+lj/k6C/0+gDzwT7CUvvH7gAhApu4A/0o/wAAP0Yv7P8AJQCpNdrNf9MengCg+QXYgQBs9ABXNif20tz/AADIX4HtJJ7w+wCKFKjel/3kfwCfotm9o+TgxAD+6mp9p6dYPgBCb2LqJNwE/QAJtAp/NzazHwDp7LpfeD3GZgCrbwxHyUf5TwBFc3tRymoOnQCwV/0x/wA3SgAqb5EbsZ1iTADk2q97fbLYcQDJJ+hHtHc+8AD7iaNS7w4A/gCK/wDQXRFL7QBnKwJ/3XLX7QBv83Sto/kHuwBHjH8aZnN+DQA4NvT/AGtP0ABfj2RXHvL7lgADmPemr81X/AD9EF37XcrqSAA7fj5E/wCbpQDW"
	 $bData &= "O783SE8suQBdQFjZack82wDpY2/P+HsPSwDvX7pq5H76yQT+iKAPQWv/AGwAuWwDosT+0/4AboQsN39n5WQAU1k5v9CKKS0BQBFbSPYbv/e/AN3FDad/jH5LAP5+gJuPt7y+AKG02b/z6GjAAHbW5agoTPqVAIcXhcH8ckf4AFvYA3P7wPu2AIWP9ZhX/SL/AACfqPt25G2qADDFLQhR8+hdAKfe+4MljtdIAPHJUgchwUQLAG4sbAmx/wAfAGDX+8r7v2lwAGObmikR/wCFAIJ/w/5Ooo37AJXs40cJAQegAId3bs7BhimZACooIgqueNbNAKhcabF7D6f1APY02P7zHubIAMo/rQ5yOKIOALEL3W226sbaAOntWKkA9EL7AEe3u0sa1QY8AKU0IUvpAQG9AL6c3PN/eQ/KAH79e4d4Ii/MAAx4fgXri994AL9xOc+X3vDZAG7MlCfwjovuADu9e25ZG/3PAMPLn+woH+8MAG/HvMD2m"
	 $bData &= "9xeAHjd7uJZt2ZlACw8l/z9c4NyAPvBe6MbS6OYANglT+FP8/QjAOI7g7RdA8+fAIiSeNCC1rf0ANdz9PfU/wBqACHeL+K3NzMWAK09OgBuP3ivAHWjq0fMzU+YAEr/AC6XVF2zANkFVvmEJI4/AGx/tybn8D3nAG8p8rRyxx+NAB1OOgxJ95D3gHagLzIxB9VAHgAoF7d37CNJywACbL/ulbajxwD1+nub9o5L2wAdYybY9IJfvADPu/Cxj/rICQCn8A6mQ9s77AD6jl0459US/QB/2/sdWvI+ygBC1tD+3pEv3gBj3fYljzKuPQBQf5+uUnce8gCH/OZhQTf/AAB1A/T8DST7PgCHkbYBTVafzwCvH7y3vBJURQDMFT/pB/LPUQAl7x3PTxm+agBNR4BFNcXP0wDoT9Pa1eSdhACR/iY0/af83QAstfvE+7pVqwDMDmX/AEiU/wAAj3TbN3dvcwDK5kgE3UeICwDf9IIvzcezKAD5D5"
	 $bData &= "fxWx/n1gDH3ifd4kAcygDaQeGgf5+oAwC6uwWLMMwllAASLwr9Qf6E+wBR/UPlsUBsTgB+Z6M7f7wvvAAS0Ycx1UDzQQBOm2bvbft9AwAwAxJNvAp/3gB+n49qk9vuXAD/AJQv5npYPgDxnu6w7eYBTwD0g/z9Rn7y3wDKpvmowT9T4wBb8/19X+Ht8QDt/wAtkj/ETQA+3pUn3hvdsCCgf1iXUSIxVdcA/s1Xbn94rf0A7xp/2bL+A6cAxr4/4X/ot18A2VvLb7by+v8AAK+Xm9/Yd8EAtfH8L6aLw/0A4fR0pjwPB8QA0cf4+/V8WrMAXqYPA3T93fUAf7yvPqv6sfsA716+795fXfQA31FdPH6f9HQAf2fhdumnX/8A0DD969tUWzIAHe+6KjDZmekAtq7Yyu4qtI4AllIkp8Li6vIAU0avospeOlIAL/i/v5ubvYUA+beb7Pa7aVIAGS7u4bdfEYAAYNI6oDp9KuMA7evoojuY+Vs"
	 $bData &= "AlK83S6ieaG0ALWa4bw1JGmMARnI1cK0U/Z0Aa1vavyz+VHYAdurMw7N3ZuEAxtRSiHJzriMAsPevXmBw1FkAW74vFYeg2ZkAPHJlGp6IIZoAWvNRIZWaxAsAAdXts9j/ALsAt7Q7Fsm1cycAIlrum7zQI0kANcwx3Ll9OpgAjXQIKnGkAUoACnHrlPuHu14A/Puvve87py4A843G27TFOwgA4reV7dAmoqoADoqWNBnVU1oAmvQTR7/+eE0Aye297C1/r8gADtXn62/VmBwAD26bL7q6cfYgf2qvy23wGiVlAPvIN8fuhuP5AN/N/m6mRdgfAD2Q2i7i3wv4ALr8gu0wP9a/APGPbLWX3U2HAHeze1H/AKlsAB/n6bMf3jFxAP6524f9l0v+AG6cYewP5gKcAMfde+ULDkj5ABHagNv8ScyPAOvtNJY/dOOHAPZXaiB/0jIOAJlovvD+fuZfEGf+X6WwWVOg7AAv5hSXeLvHfAChsOV+"
	 $bData &= "RvawNgD/AF/4wT7Ye4Afujth/ZLaMFMEpVzQBivbe/8AAFJb3GvSf+e2AF/zdOtP2V/MAHVF4O/OwIvpAPT5IdsAf4/8AL6PtDLtn3PTIP2nsbtBYApVvwBI3g996d/uDQDh/wCoyT/N0wD1J2n/ADNv9wBHyN7GhtYC3wAm+2U4/H0zPACfaKXbPuZgdwB7DbMf+pTbdABZNae9Jr4vOwBdH7buQ/5OlAD0faf81O6/bQDye7Kiv9NPygBu3k/6FzI9lgDPtH3JDXxfuwDuyt/1KLU/5QDokubL3VoRNwA13Df9RDn/ACAnS1x3Z4AOZlAAKT5adowXHIUA+f8/Y9xICLHj05o8eyC72P7iC5uPu4bC3/UltT/l6DN3ac9Cv1O+St9srHqbkN4fzd5oL1fyr7KqYiCdL/K3t6UH/YNlyB7TQ2/3DIHAi+7rsav8tmtf8/QC3va7yaNzuoE8dMhjq/w9Ajurdn8yiJZP7wd976yC+oyCX"
	 $bData &= "5KdrVOr6k3Vsxc39jraE+5u5U7d7G7TEfKm1W6/5esSvcbbPYi38V+cvbOwvTmuuyilr6/F0HdPvb58p/wH7i3ulm58fyD7UJ1c/wCpzHucOTdq9hbh0PLvtjt9s9cFbKGP/B1jncW33JGY+P7BbKT89otv8p6e4N/fzE0UNF3X2Gl+Rb5C9sr/AL1lh+feTnL+yWkaJ+59vigTy0qE/wAA6KpbH7iLMRJ93vYD/wBSi1/z9T17N/mQqbJ3r2YPoBp+Q/btv9e4y3PuTbO05wjA+m3SVB8pGH+AdMHavuFDj93fl7/uUWn+fqRH2R/Mmc3/ANO/ZgJtyfkT25c2v9W/ix9n8Ke5C08PmW4X/m+4/wAnSeTavuBg1/4HTl4n/pT2n+frk/YP8yQ3Dd8djcjm/wAje2wef/It7XqPdP8ADzbdKP8Anofqi7d9wQU0/dx5f/7k1p/n6wNvr+Y0tmPeu/r/AFH/ADkd2ySPz9BluPb6p7r4K8"
	 $bData &= "4XOr/npk6eWz+4War/AMDlsVP+lNa/5+sTb+/mMvbV3tv4qvA1fI3tni/6bBsv9fb6j3dxTnS6/wCyqT/N1ddv+4cPh+7lsWfTZrX/AD9RpeyP5isXrbvTsA/8F+RXbTEW4+gyx93De8A4c7Xn/ZVJ0+m0/cQftH3dNh/PZ7Uf5eoTdr/zErlf9N/ZTcc/85C9t/8AEZj34S+8X4edr2v/AD0yf5ulq7J9xbTQfd85fC/9Ki0/z9dt3f8AP7ARHL1ncHYYjoWR5Klu9e08yy6nCq5w+TzE2MyCITcxyoUYcEG/vb7j7y2Eb3rc63hWPNDcSMDT1UihHT9tyV9xnmGeLY4vYLYo3uToDJtltEy1xVZFOpD6EZ62J/g/3fvPvfpCHMdoY+Ub62nuOs2VuTIUEMlPR5mqocLgc5S5gUyDxwTVeO3BCJEH+7FJtz7zC9nebLznzku13jdIqbgkrwyMuFdkCnUB5VDCvzFeuL/3zfYvZPu/e+G"
	 $bData &= "7cncoXWrlu4tIr23SQhpIo53lTwi3EhTExUnyIHl0DHgw394bfa5P/srzx3vL/nf9GGrV+n6fj2x9Jb/V00P/AMl+nnx+mr0IfF3L90f28H/TvK8Bw/efX//RX/y83LVt1n3vHGWUP1Hv2K5Ia6nZ2YBt9TyCffz57PLK3uxyhkhTu9j/ANpEfX0Zb3ssC+z/ADm5SpGzX5/7Npf8HWsr1ruFc1uTd9VTPFTImP25SsObNJTUkaOw4F7kc++qHvkurcNh76D6df8Ajg+XXJH2LhD7dvx0E0uG8v6Z6GYVsoUj+Iw3uAeCbH3BRjYDD9v5/wCbqdGt1rmDP2f7PWVK8RrZshASSfobfT+vIPtg2z1BRv8AD/m6aaFCaNFn8h/l6zDJMbf7kIPUf9cAc8cnj2y1s1PM/t/zdMNbpkin8v8AP1MjysEYC/xCnueDZxc/7z7SvYsakKafYf8AN0meFSRUCv2j/P05xZ+nj0g1UNvp+teeB/jz"
	 $bData &= "7TvZSkaVQ0+w9I5bWPuqRX7R070+5qJF1axIBzZGB1NxwPaF9tJIDQn/AAdFVxZihIcdP+P3glxoxdbpH0YaCD+b/q/PtBdbVDQ6mjr/AKY/9A9B+5sZGrSN6f6Uf5+hAxO95kZfFicg/wCkWBS/Jt9bmw9ha/2KKStLiNf2n/J0Edz2x9JrA5/LoZMNueoyEBibDVxJWy+qO97W+gNjf2Bb7ZxbS+It4vH0PUW75tj6JFeE0Nege7PmrY4JX/guQj/Xy4it/X8OfY85S0tIi/WITj1/zdc/vvDbKbWyuJ/hFDxr0CuFlrZLE4+qW5J/s2959+y/L8lxFDL8QNDw6507mGQsRdCv2H/N0IVO9WIwft5QSQADpvb8/n8e87+XdkWGKKsXQVmnnqR4pp60P+bpwFU6AB0kU2vyq2/1vr7ka2sUUAac9I/HmIoHB/1fZ1Ekr6hmbTPGi2FtS3P1/JuLezNLUcNGOlMXiyHukOr7aD8sHptlr"
	 $bData &= "JVILVsKE/UlbA24sQTx7VLb1Boh/Z/s9GEVuxIIkFT8+H/Gem6WvYSHXkINIb9IUgf7z7UiFRTtx/q+fStLZmFPEz65P+TqBLkgxslfAqj6+oG/1/x/N/ahYRnGfy/z9PJbSioNT+RH+TqKch+fuI3sLekgf73ce1CwpTI6sIZFaua/n/m64HJyEExlgSLBja1/960+7i2U+XShDKhFWoOkdvmvqF2nlZXqEJSJHsVI/RIrW+n0NvZZvcCrtN+NH+hny/2ehfyRrPNexnxceOuCfmPl1bp/K43tU7t6F7B3CuUo6A5DurNoaZhdh9lsDrXHeQEECzik/p9fcx/dghV/beYmAn/dnPmnDsh+Y6xG/vOIpD94+0ZbkL/yG7LFTn9a8/on/D1197U/3g/4+ih/7K48n0/3Z/oxtq/V+q3sdeEfq/8Ac1P+Vi/7VuoW+mh/dH/JCl/6d7T8v3l1/9Lv5eVUjdfd2gs1PGvVW+vRxbnaWX4DG/"
	 $bData &= "J98CdqttPuryiWip/u2sv+0iPr6Xd7th/rM87sGqf3LuFfn/isvWuTtvbUO0937qxvkCCbDbVyAHFia7HxTMTb/g3vqJ71oWv9jz/oC/8AHB1x29gIte28w44XLf8AH26XyijUFnq4xe5s31uf96t7hTwmYfF/I9T6bdQaeF/MdZIzjLBi0EzfXm5AvfgH3opIooXb7Mjps2ascRLT1weuQmoybJDHpH9B+r8aTc+2GEla1P7T1f8Ad8bYKfyHWeCSjBB/hkcw4A9IH6f8SeLe/ESnizH82/ydJJNtiqaKoP2L/l6mipoBJc4uJbWsLC1+R/xHtpg9MVp/pm6aO1qwyB9ulenCPJU0WkriIwF4vxyb/j1cce2ngLHKH9r9JG2upNCPyCdPNPn6o6QlG6Ac+lhxpHtHNtxNSiU/I9I5NtXIYV/Mf5+lJj91VsJW8UiEWtZlv/X8t+PZNc7RIagE/sPRRd7JHIKGMftHQuba3/UQSQ65WUa"
	 $bData &= "gTdx+n+n19g/ddhvHR6Bv2dADeuUxMjlIh0JG/K0bh2XV5ShJeWkh1VGhl1LxcOVBvp9hbl394bdv0FncM4V2ouD1gH96rk+5tuRt53CKIhoIyxI/h9egOwtJWpTJJPNImpQwDWFr/wCw4+nvtr7F8gzWfLW13V1CQ7xq2fmAeuKu6380kzIpcmvqeplZk5YfTHUOQPrpCW4P9Cf98PeUdptSxqoVQB9g6SQQXU4PiB6fa3+TphnzMjMwMhPp+rEG5/4n2exWBAAC46XR7eR5HV+fTRLkufVVG5+g+tuP9b2rW09QadL0sBQERj+fTZLPTSuvkq1+v6T+OPrz9Le3PpfVf8HRnDasBQAAHzoesEkmLYhGmhfmxJBBJv8AT8n24LZCPgH7R0pW3lRgRK2n5A/5usDy4xb+KCntcD0gm55v+fbq2mK6QD+XV2STyZiftPXEzxrwlONNvoCAOOfb3g6ado/l02Ymb8RB/M9cPOXUi5iABNuP"
	 $bData &= "974+gHu/hGg9evCDS2RUdJTexSfbGUh8y+uOKMD+peQL+Bbm/sp32P8A3T3/APzTPQt5KhUc07KcV8dfI+o6ta/lk7fw23+j9+YqfIU8H2vcmbYBubibYvXVY30Fv1zsP9ce5m+6rCre2Ep8LUf3pP5gfgh9esT/AO8rgkl+8XaEXGkDlyzxpZj/AG136dR/Dtn+Pf8AF1ov+ysvJ9D+n/Rva/8Axr2Mvo9v+s/t0/5WT/tV6i7xN7/dX/JPl/5UCn/dR6//083fVWm6qjeG0snQQLj9x7er9v1siuwlFHmMbU4+peP8eQR1JI/x98FL+/m23mq03WOBBc2k8UqAitWjZXWufUdfU1tPKdtvXI95sss0htb61ngcggELMjRtTByFbrX83h8a/lrid65l8Fs1N3Yz7elxNFuPBbu69xS5PEY5pDiTU43eeWSsoq2mppBE+mPS5S9yLe+hae/vsRzrs2y3fOe7XFlvUUIV4vp7qSjABSQ8E"
	 $bData &= "TIQaVGcDyr1ydn+6L96j245i5jsvbrly13Plqe4Zop/q7GKqFiygx3M6SKwrQ9uSKg0p02t0T8v1W46f3I1v1luyOg/1H62HnNh7YHuP91qopzdcV/55dx/609P/wCsV9+Slf8AW6tKf89+0f8AbT1gbpH5eD0/6ItxqSfqOx+hAePxbyE+7/64f3XSP+VruP8Asl3D/rT02PY378SN/wBO8tfs+v2j/tp64jpX5e8r/ol3IDa//MyehL2vb/jr/X37/XA+69Sv9a7j/sk3D/rT04PY378bHHt5aV/579o/7aesg6X+YK+leqNzi3Bt2X0IBx/0+A9+/wBcL7rwH/K23P8A2S7h/wBaet/6w/35HqP9bi0J/wCe/aP+2nrC3UHy8W5bqrc40/W/ZPQ34/6ec/T3Yc+fdgan/IquT/1C7h/1p6q3sR9+MBtXtzaUH/L/ALR/209Y16n+XEkmhOr90s1zZR2T0R+Pr/bt7cbnr7sgXU3NVz"
	 $bData &= "p/55dw/wCtPXo/Yf78UreHH7b2ZY/8v+0f9tPUg9RfMO9v9Fm7hb/U9k9EW/24k+vug58+7C/Dmy5/7Jdw/wCtPSlfu6/frpj2vtP+y/Z/+2rrE3VnzAhF26w3Yh4F/wDSR0OeRz+JL393XnT7ssuF5muj/wBQu4f9aenk+7Z9+6XC+1lmf+phs4/7WuoUuzfltR63k683dGIxdj/pD6NIUA3H0ve3tTHvf3bbs0Tfrpj/AM81/wD5YulKfdU+/vdaUT2ksjXh/ux2X/ts6n4bL/MaliydLjNjbznpTQVf8Qhl3Z0vU0r0KQO85LPAAxSNCV0Nr1AW59zN7Nfd29v/ALwfOuz8te2GyXW68xiVZEQtLaL2HUdU10YYUBpQ6nyDToCe6f3D/vlb9yRzHa89+zlkvL8llMJmTdtl8RY9DF2VY70yFlFSAq1JAoK9Me0t6fJ7saIybb2juSuWKR4Hhk3h0viJIXiYxvE8GSpaSRWRlI5HvsB"
	 $bData &= "uH3Nvvk8mxRWl57TW0EKoNIXcdpddNMUMd2wpSnXz2808k/di5Bv57LmS83G3vImIYG33CWhBoRqjjcGh9D0KFN1T85MjF9xT9T7nliY8P/pM6ARTfjgSVCsQfYYl9jfvUWz+FLyHbq48vrNtP+C46Ac3OP3LbYMZObr9VHH/ABHdv+2fqV/oT+dK2LdPbjPH1btD49f0/wAan2yfZn70pH/Kjwf9le3f9b+i4+6f3G4G0vzzeBvnYbv/ANs3XAdH/OWQ2HTe4mJYi/8ApP8Aj0LH88/dAD20ff8/pPvQgkf1Lh/7K9v/AOt/VD7sfcXUEtz3df8AZBu//bN1k/0BfOhjf/QxuC//AIlD48C/P05qfej7TfefH/Omwf8AZXt//W/pk+733FK/8r/ef9kG7/8AbN1wPQvzkRuemM8Gvbns/wCPH1/pf7r20/tb95xDRuT4B/1Fbf8A9bunV93/ALi9K/1+vCP+eDd/+2brkOgfnO3I6X3A"
	 $bData &= "bkkf8ZQ+PP1H1t/lV/fh7YfebGByhBT/AJ6rD/rd03/rv/cVBzz/AHn/AGQbv/2zdSx8d/nm1ivSu5OQLW7T+O4+v+vV8e7/AOtX956lf6mwU/56tv8A+t3TJ96vuHg59xLuv/PBvH/bN1yf47/PRBZukdwi1+T2j8dvqR/X7s/j3Q+1f3nhkcnwf9le3/8AW7q497fuIEaR7h3f/cv3j/tm6T24PjP8/M1SHG0XTdfSxTSQiqlyXZXQ80YRZVYkNjctR1CRp9W0anKg6Re3tPde0v3mL63ls5eU4VikwT9VYYB88TVx50z6dLtv9+fuL7Re2+52/Pl080J1Kv7v3buI4DNtSp4Amg9cdXS/Cvq/cfQvSMO2N/8A8Nr9857cOS3fumOjq2yGOoMhX0WMxMOPo63wU5qoafG4OAs2mwldgCwAY5j+yXtruHtzyDZ7Bu06ndGmeaYIQyK7hV0q1BUBUU8OJIBIFTzE+9h7ubT75e8e585cv"
	 $bData &= "2Lry/HbRWts0qlJHiiLvrdAx0kvKwA1ZUKSATQBF/eCg/jl/wCDY7/sqXyW0v8AT/R3p/1P1/Pss1QfW/7hxf8AKzf9qvR3+6Lr91/8lKb/AJUSnEf9HDr/1GbtOtxj72yZqZ6lAqU9/DEW+qeoLzyffB7mGCM7zckk0x5D0+fX1t8l2s45asaRKT3cSfX5DoKsbmY85B/ENsde9/bxwb1VfSQ7j2R8eu7t97XrqjGVtRjMlHit17P2Dmtt5Y4/J0c1NOaaqmWKphkiYiRHUSPtf3fPdbetvsd227kq8fb7iNZI3LQJqRhVWCvKrgMKFaqKggjBB6hXmD73X3deVN53blze/dPa4t7sp3hnjVLuURyoSroXit5IyyMCrhXOlgymjAgN9VvbEYzK5TbOd212fsXcGKwOE3fPie0+p+xuqsnNtLcWQ3JisNujG0fZW19qVOY25kMns3K0yV1Is1IajHVEXk8kMiqRc3+0fOnIg2n+tewSWk"
	 $bData &= "l+0ggUyQO7+Fo19sUrstDKgGoLqJ7a0NBx7Y++/tV7wPzI3t5zlBuUGzpCbxlgu4Y4vqBMYv1Li3iR6iCUkxs+gLV9NRWJuHsah2Ltmg3Zv/ZG/wDZu29y9Q0Hf3XuYz+2YYqbs7pbLpl2xXY2w/sa6vmyuFrv4JKywzpS1yRS000lOlPWUks4j5h9hueOU5uT7bfdrjjn3uRY4B4kfZKzIoinYkLE/wCopNSVpqo1UcKDuRvvT+0HuVa+51/yhzBPPacpW73F4RBMTLbRpK7XFmiKz3MR8GRQVUPq0VQCWJnfsxmMpsTdOc2L2V17vTrPf2BocHk8rszfWDpKbKw4fdFE2S2zn8ZkcRX5na+59sZ+iikajymIyFfj53hmiWYywTRxlvPXtLzR7Z7rBtfNG3xh54y8UkbpJHIoNGKmoYFThlZVYVBppZSRh7Le+Pt194Pl295i9u97meKzmEVzDNFJDPA7LqQSJRlYOtSjxvJGaMurWjq"
	 $bData &= "rfT72oqzIYjD4Pb25t1bm3LlqTAbW2js/aGY3bu3dW4a4SNQ4Lbe19vUWQzeby1UkLssNPBIwjR3bSiMylXKvI2983bzb7Dy7s5ud1lqQg8MAAfEzMzBVReJZiAOhp7h878ne1nKV/wA78+8ypt/LNtQNK4mZizV0RxxpG0kkjkUREUsT8gSGWm7SwtTHVyfwuupaiiymXw+Sxeb27k9v5vD5vb+VrsFn8HncBn6LHZvB5zB5rGz0dbRVlPDU0tTDJFKiOrKN7typunLm7Xmyb5tH0+6QOFkjbQSpIDDKllNVIIIJBBBBp0IOS945b9xOWNn5x5L5kF9yxfRF4LiMShZFVmRiFdEdSroysrKrBlIIBHTXN2Zj4X81PRwGc30RtSoqWPAuR6uAfbMO20OpbVAfsFOh3FsKyqkL3cpU/wCnr/MU6SeR7JyMSnTT0KM3qIVVHLG4/p+PZhb7erfgWn+l6FFvyihCnRIx4UL/AJenSHl39vXO"
	 $bData &= "ZnB7Z2ttbJ7x3ZunLU2A2ls7Zu3cvu3d26M9WiV6XDbe2xt2jyObzOUnWB3WKnhdhGjO1kRmEgcp8lblzRudvtOy2Rnv5MhQFAAHFmZiAqiuSSAOiP3D5j9v/ZXkzdPcH3O3xNr5UtNIeZ2kcs7VEcUUccbySyyEUSONWZjXFASAkn3lvLcFZX0E+MnxFTjsrlsHmcPmsTkdu53DZzA5WrwmewWewWcpMfmcHmsLmaCelrKKrghqaWpheOVFdGUSlsXtxuKb2+y31k0V/G4V0otQTQ8QSDUEEEEgg1HUie3nMfJvPfJ2w+4HIG4wblyjuMRktrpWlCyKrtGxCPGkilXRkZXRWVlKsAR11g+38JT43Mx47+MbkjFLXUFTmNk7A7C37tuhqlWSnnpsjuzZO1dwbZxstPKGSRairiKOjK1irAfQf/dzcp8re0Mn9bd7sL5daBRPFt243UKZGrxJrO0niipQg+I6cD6Hrnh95b+8e+5JyNuO9"
	 $bData &= "e1vNP3meT7XnSaCaH6X61pmEhTSY2kgjkhRwWoyvIpVqqwBBArzxm+9w7Z31V1W28lQ1GFyGSqY5DRVtNohrI5SKinqY9azUlZC3olhlVJY3Gl1DXHv6aeVd/5T93eRbTfuVt227c9vSsZmhlaUJIlA8ThQTHNGTSSGQLJGe11U46+RD70XIXLfMPMG77tsdxBebJeSPNBNAyyRSI5LBkcYIINePVjvW/bm7q2jpUeqp/GTGLNkoeLAXsPPfjn3B/NfJiQzymO3iHz0vWn+8dcr+dfa+GCSceC+nOO3/P0a/BdgtMsaV9dY3GrwSib/AAIBElr2PuKdw5YKpVYO77CB/gr1jlu3JaW8zDwSB9gP+x0KmN3hgiE/y2sBNrhorgn/AF9RFrewZc7FcRkgW6U+0/5ugdecsQg5D/sX/P0sqbdW300StV1jsbEJ4TpJ/wBYEjn2SXG1XKHMKD55P+Tohl5ftACP1DTyoo/nX/L070e98GXk1G"
	 $bData &= "pYa+f8k1FR+QCTyLeyyXb3b4WXUPk3/QPRe+wRISXtzpPD4OH+9dO53pgNSND52Kp+lqQogJP9fze3tAbSVQQ7j7aN/wBA9I59khDaorY09Dop/wAePU47tjrZh440jjVIwNMei/Fvobc392i20KGGpieOa/5eim8sCSCIlVR5ACuOm/P702ntzGZDcG7dw0e2sBioPusnmsvWU2LxVBTh0jE1ZXVs0FJTRGWRV1OwBZgPqQCWbvPZbJt9zum7XsFrtsC6pJZpBFFGv8TyPRVFTxJGTTp/ZOWNz5g3Wz2fY9qur3drl9EUFvEZppHIrpjjQF2agJooJoCfLrhV73x+I2+d6Z3rv5H7a67RRLL2tuv4wfIjavT0MDxmVamfuHcPWGM6xgpXpx5VlfKiMwgyAlLt7g6H7x/snc7iNqj9wbAXRNNTpcpDxp/uRJCtuB8zLSma0z1kPefcp+8fabS29ze1O5GxArpSSzluOFcWkVw90T8hCTX"
	 $bData &= "FK46UVHuradbjY8jhciuUx+Qp4qqhyNAYqyjraWdRLDU0tVTvJBUU8yMCrozKwIINvc1W8i3MMF3BNFJaOoZWjOtWUioKstQwIyCCQR1jZe7FLZXNzYXVpPFfRuUZJV0OjKaMrI1GVgcEEAgjI6Ib/HsJ/Gr/AL//AGUxr/4Bn6/6P7X+n6r+4U1WP13Bv+Vmp8P/AC6dZJfunc/3Z+D/AJUmnx/8v/X/1Ql7bylZT7zysUSJI3igXUYy4PpIuOG+p98N97tQd1uPENOHp6fPr7BOS4CeW7BokJrqPnjPy6M3u/YXbnZP8lj+Ww3XvV/fvbNLtr52/wAwCs3njOges+5e1dy7f25B8g/nLgNu1mQwnSu39ybuxW36HNSUFHBP4Y6WBzDFqUFR76gX9nzzuH3eeTYPbqWYc2nZ9qMbJLHE5UQwGWskrolCmqoZu7yBNOvnn2PcfZrYfvz+68/vxBa/62Cc08ypcLNbT3MQc3V6tuBDaxTT"
	 $bData &= "VE2jSY07OJIWvVV+aGEo81PsjcFBuTrLMT7hQdh/6Zepu48xu2jrth1eDyUXXvYfWeb2dle1M9m89Dk6aGDauTgxkc+Hqaqetqcfioa6rixp5S2LnM+6Sbr718zWcFxsFsk5Xc5knUrMD4Qt4orhFko5qzxuyJKFEiu5VD0Q9zeZPaZvu3Ny99z/ANuN23C0543CWzjfl60ms3Eloym5N9c3FjM9tqiXTHFcRxzTWzSPA8UKyTIY/wCV+xeyv9AuJ+c2Z+UuG+ZezflVk98/HR+w8r0rlvjr2D1N2F1R1z2hujC9BZHoSo3t2HtLYewMBtDZG4qvDx7dqcbiuTViif8AiiVtRLfvjyjc80jk73R2rmx73ly1u7bTCVjEcST3MMfiQFUViWk0LIJdUgAUa6JQYz/cw9yNr9vbn3W+7TzV7XxbP7h7jtW4l7sPOZ7iWx267uDb3qySyIAluJpYGt/DtyWkIi1ShmO7/MN2Dtqs77+Eu8exv"
	 $bData &= "lJ198btudl/yzvhb1jS5nc3SO+fkHkMVJ1/uDuPOZDsXsDF7V331jhusepajI920mO/juRzc9W1TQV8y42Skopqj3J/vF7e8j+4F9yXac48xT2MqyXEVqkRjV55Z/AqoMkUo7fCXAUV1U1DHWOf3RffT3n9j9k94949pPbqz3u0NvYXe5z3K3DxWNrZG9pIy29zbN+p9TJ3F20eFXw2GqhUX+Nvy16i/mMdNfECv7i2d8afklhO9dpUvXHyY2TsyPtvb+2Yt5dW77zvW3bWzuv94z7KpNzYvftZQVmzshiMyz0tLUVGTp5kyMECfeQ/7fe0U/th737fYwb3M23y7bNLDKEjXx1DIsltKtWpoqHZloSVjZdNSFzI9+fvTbT95T7jvMnM1zyRZpzBZcy2NneWpnnkNg8kc0lvuVtKBHXxqNAkcutV1zxv4oUFwU2D0r8iu3fkT3D0FQZnZ25O29l9tfLvI/I/u3fecmxHW224Og+698bV+Q"
	 $bData &= "3yY7E3EMK+apNm5rf9HLWU0EOONdUTZempxFCiyywB3dPZjfvcP3k51st13otDavC892Y8FJYomhhjjBoJFiIWmoIPDZq5AM0cq/fE9tvu3/cp9i+aOW+R9N9vMN9BYbSLgFhNZ3d1DfXlzcEBmt3u08QuInlY3MaUBDuvLov48bm+WG4Nx7B+Nfe2P7C7qx2y9w9gdf8AUHbvxvq/jNR9+7V2p9vUZz/QV2pTfJP5BQ1+6Y8ZVP8/lXS4TfG3Ov8AKVFOwlkhgpo62oohBY/d/wDa3mRNzsOSeebmXfbM0kEoRo9WQO0RQsULAqZEeVVPqe0h7eP7wf72fsxc8m80+/33cdss/bffgHtGtWliuDEQGasz3l9EtwI2Ei2txDZySKD8CkyIVM1OSy2Lo8mk0VI9ZAryY7Kasdl8bUqxjq8Vl8XVaKvF5bG1aPT1dNKFlp6iN43AZSBAF7yrd7Hud7tF/AEvLeVo3AYHuUkGhoKg0qp8wQe"
	 $bData &= "B67P+2/OfLnuVybytz9yndPPy9u1jDdW8hiK1jmQOA61OiRalZEPckisjZB6Fn4nbD7j358vPihtjqPvej+NfaW6e7IsH138gKbZOH7UrOqd2ybD33Ph8vB1znM3gsBvCHctTTDbtTR5CoahejzUxmhqUU00s++wuyvHzjHdR3DwhbaThpIlFVrGwI+E/FUZqooR1g1/ewbrFYfdJ3S0veWrbclm32wTXIJo2siwnKXkDIVBnVgLcLJWNo7iQOrjtIV772Nuup+Q2/upO3t2y7y3fi/kL8t6f5I7zxtdUPW9lZjojt/eu0O4NzQ1IpMXkaTF9pdsmnqXHipZxisi9OBE7DR0c+6Z7J7Z7g++0knOYN5sllFLfXOCPFht0TRGQDhTI8MbgHKFgpUkEcjf7w/781993P+589jtu+7bYz8oc0c/3dxsluVmEksCQ3d3DvMsNwVV2kup1aVZqB1jmKyVqwOHZ/XNLvbrPEdnbmz+VxW6tybdo"
	 $bData &= "d2Yetwm9sztWl6vxOWx0WVwu1ti02EyWNxG28Ds7GTx0qLHDoqvFJLVedppS/Zn2T5G2f3B5Uj5053kvY7y9iE8MkFzPartlu6a4YLHwJI4reK1jKqKJpk0s8/ieI+qbfZD+6t+5pyP9yvlPY+evaHbd/wCbt65dt7/dt3vovGvZ7y9to7iab6lzVfCZhoY9vbqYFTpBEux9tVHY+9DuPdXbXWlZX7sy2Bw+R7Kkm/gmx8bQYHD0WFm3VuEbMo96ZOpmo8Vh3ra5MTQZDJ5Ksb7TF4+SaSix/vMHkDnJPu1ex/uF7rctfXe5nMm57jbmOLaYSi3U5S1222i02RvURwqLJe3SoxeQlIoEQW1snGHmH7sXInsVylb+3nIG/S33KMd/dzQzyOJgiXE7yiJGDMuiFSI17qmmpyXZmJ+9jfBjZW4/hn3V8yPjL80NufImg+K2W2JS/JbpjM9B766C3rsDbfYWbgwe3987O3FubsDelJ2Rt2eVK"
	 $bData &= "+pVanF7cqJaXD1oVRVRx0suKJ/vAvfnl3315U9tPvL+wljy5t2+zWohjiN5Fe2tve3DW0V3KZrm5ju41lVw6pDbP+nJQFwEONHOPsty7vWw7puOx7pI+4QI7EMEZHZF1FBRVKEjgSzCpFcZ6HHr3425z/ZK9j/O7PfJbqzYXU+6O+N//H3P7Uz3VnYO6ewdqbx2vWZSXaNJsHGbX3VVDvzcm/Ns4mXKti0i2hRYShiqJqrKslJMQCvcv76vu/snv77h+xHKPs3t+77zbX8tntqJLcfUO8QMvjzhXZZke3BkMMf0piFS8xCsvUPRfdi9vt05M2bnPfucLqxtTEJbpikXhhW7dEdVBjYSEDWwmDcBGKg9GL7j+MNT0FsLojvjc3zc6Yz/AMUvkjtWj3F1N3ttn4ydxZLtXMVNPDVVu8sRP8PKPsioytBR9dYyFJs1lK7sOgjpp5o6Nad6ySOAwvsf36ffPmpd85S2f2Z2y69xrITyy+Ebn6"
	 $bData &= "eGC21C5aW1acy1hYKCwvdJqRprQEv5g+5p7QbdNt++7r7h39tyfcGONQwg8Z5ZiPBCTiHw6OK0BtSRjupWkf5BdS9o/FTvig+O+V3BtX5B7i33sHojs3oXd/T+3sxg6fu7anyT3Ruzr/qakoNi7hzG4qvaG8Nw9h7GyOOjx7ZrKQGBqWqNUqzvHDMnsr973afcD2w9xuefcPbLfa7nlj6Y3BtzIYZ1vPES28FHLSLJJNE8Xh+JLko2qjEDH33j+5/ccqe4HJHKfId/Nf2vMHjiHxxGJYWttDT+K6BUaNIpFk8TRHgMunFSJGw+iOzd3fLih+D9H371Xhfktk63dO2KLa0nQ+590dAf6WNjdb5/tjeXSVf8qcd3fi95Rb52ns7a+S/iddQdO5TbdNXUE9JHkairQU7QBvf3zfd2LarP3Lg9p9ui9pbncHtIHlml+omlQO5QSLOKMEjbU4sniVwU1s1AZR237j/s7cbhd+30/ufuL+6UFgt"
	 $bData &= "1MsUMX08UbFFDmJ7c6l1uulDeJKykNoUVIBpMh2jU9Ib2+QO8ZouoeuOtvkvR/Dfc89J1lj+8N+V3yZh2vNvDdex9t7QyPdPxo61TZeyMXD4avdua7AwuPr8nJFjsZDXV8iU7HvMv3zdy3jduWeVvZ3lC0uOY7+1hlc7jN4UMc0sAnNqpa4tUd0U6fFaeNHeiRqzEdAnl37iWwbTtfNPNPvJzdeW/LVhdTRINthEs0kMUxgF0wFvdOiO3d4S28jolXdlUHp7wuemrs1l8XjN9be7LwePx+18jRdiYHY+7er6etq8/h/4hl9m5zr7etdmsptLfuwaxfss3R02VzmNiqXVYMjO4mjhyO9ivcHnj3H5e3q5595Ek2PebC+a2YaJFinKgF2iWUmQeG9UbvkQmmiVjqVMVfvC+zXIPtnzHslt7ec9JvuybhYrcrVomltwzHQszQgRt4iUdOyKQCoeJRoZ1PhN27j2dtTcvcmx8Pjdy957h+Wvx"
	 $bData &= "+/l5/DRMrjsTlcZ138hu4dmL3B2H29Qw5ugymLfsqn2ZnNnbV2hkqinnj2nl9znKCGoL6I8Jfvgc+NvHu1a+3G730sfIeyWsdzeRRHS88zxfUBGbyaRGtreHUCsUkplINcZ0/cl9rY+WPZ2/9z9l22GT3K368ltbGeYakt7dJfpi6pXKxOl1cz6SrzRQiEEU7kbuKl7d6c7r7Nquo/lR85ar5C9W9obm6yqfkRD3jj8v1pvnufqvtiHrvvjFbl6j3ZtWu7OHXeIqMFudcVnt1dhb4ps/X4WBK7akUNXT08sd8jew3PnujtXKXNG18nbJD7d7veyQBYiUubKCCSSOW6edgZ3YGKVYmlluVknVfFtvDdVaTfcH7w3t97QbvzpypuvPPMNx7obLYR3JaYB7S/uZ44pYrNLZCLaNCJYmmWGG0eO3dzDd+KjMoxbqzWMyFb0T3RtrZm0eux8uuvu9Mx2h1zsPCxYHYGA+U3w87rxvx++R289g7"
	 $bData &= "WgaSLZuzO64d1bT3TTYhWl+3q62qqJJZairnYT390Ld985b529zvYver36iPZ5ZpIGyAot7gWs5SpJEcpeCREJ7e7+I0xY+/Zyny1zlyF7RfeN2Dbhaz73BBDcp2kt9TateWweigGWDw7mKRwBr7eGkVIz/ABrI/wAav4Iv+ylLf8BD+j+4Oi/0+t/959z3W4+v/sF/5Wunw/8ALn1jF+7bP92U8Zv+VK/j8/r69f/WAHtrN5Oh3lkYqWpjDNHT6n0BwAAxHJBuR74qbwjR7pOWc0oOFP8AL19kXJG3R3XLViyQCupvirj8gR0PXcFVM38l/wDlY4urqqmKbN/PD+YduKSip66txlXX4yn73+cGUoc/TihqaSuNBS5LK42ogq420RS1NM6OGkiLdDOdd73fln7t3Km5bNuU1lu0e2bQqOjaHBMcAZfnVdWpSDgGooOuC3sjyByp7nf3jnunynzfy5a7xyvNzJzW8sMqeLCQk98Y5MfCFk"
	 $bData &= "8MxyAghiulqkVDj4J9FbF71zny62zWbU2h2j3P1P8AFHcva3ww+KW+K6GPYPyb+QGcrOwp96Zjfu16vO4BO6a3ruvw+3ZpMDmKyfHZip3jLVZBWeCOphDH3bbDb+a4+bOduYZhuvPKXKIHuaSvCgiBidCwOjxG1xgqAUSHShCkgyl/eTbjv/tBee03sryDYvyt7Hz7bLM8e26raK7nN0yXUMyRlTN9NEYZ2R2ZZpbwySh5ArgRvkbiO3twfyMNk1+Wi64zu8/j3/Md3/u/uXZ/TmF+PW15+kNi7t+KXyJ6y2ljd89afHDH4HrvZm6qrLdq4HyYOhpGy9JHmIIaqFKyGppoJy5u2zmbfPbSS03WO1j5iL2k8ypIFhjEN5BcygSSkKFjhjYFmahKnuNQesJPZzmX2u5G+8/b7nytc7pce26xbtY2Uk1u819cPe7Le7das1taq8he5vbiMrHFHqVZBWMEFBM/mP8ASPbPym3f8RtxdEYg7y6"
	 $bData &= "T7q/lbfET43V/yJxqrl/jt1JvHaO4/kL/AKVJ+6e2YJk6+62i692z23i8lWUOXydBkclHFLS0cU1VGY1Jfc3kbdudua/anc9rZf3Rt13JPPKHQUQvaSR6ATVzIInClAwUkM2KVkH7rHvvyV7Fe0n3u+WOckkHO3MezW1ht1o9vMxknEO721wJmCaIFt2vIXlSZ42kAKR1YHSoe1fld1P8j/55PxX7o653rSZPoPrLt74l/GPZPaWerKbHYvfmC6izPZ003YP8brIsbRV+J3N2n3NksXi8kdMeZjgpZ6YtBVUqlHd82bZvPvpyvsdlcpJ+79vvAzKylTNOiO0YIJ1MkcKlh+ElhSqt0NNl9iOcORf7uj3e9zuYtnubYcx8zbI0UUkUqOllYTzwx3Uiuo8OOe5vZI43IpIBEwYiSOqe6L3Fgut/mz/O0+HvyY3Ttjobevz52j88Ogdhdk70rqfC9dbT7O7x7o7+3v1zDVbrrZ5Ytr7a7h25"
	 $bData &= "31T5bCSVrJLUR42lp6gJWTUsUwu2C5G3e4XO207l4cd9uDW93bUZazQpbx2zACurVG0BLKR+IstVqRD3udy5LzZ91T7vHuDygt3d8ucrpuexbvWGXTYbjcbpc7vAzuE8Ew3cO4osMquaNGkEumbSGCn+Xvtnsf4ffNDrH5YfNvZG+PjD1N8R8H3B2Rnqzs/ASbZk7j3puro3srpDaXUvxrkyNRBjvknnt0VnaU2SoqvZlRmMGaXGrJNXRCaDXGvtP7abt7ccwczb/wAwyRQ7VHavCkniKwlVpY5PFoMoAIwKOFcs1Ap49Zsffl+957f/AHvvab2S9pPZqxvty9wr7e7e/uLNbOWJ7KaOzurUWGt1WOd3e8Z/Etmmt1ig1yTITpFXuR/vJvLcO6t5ZenosFluwt8b67Jy+Dp5vuafA5TsfeWd3xkMDTVMSrFUU+ErNwPSpIqhXSIMAAQPcOcwz23M/OG+73Bbn6e4uCUJwSigIjEeRZVDE"
	 $bData &= "eRPXbH7sXtbzH7N/d19o/bLetwQbztW0RrdKveEuZWe5uIkcGjpDLM8SOMOqBgADTo23wQSh2l88fgtuPcWdw+IwOJ+V3VIyGVylbBjcbQtlK+twtA1ZkK54KSkFbmMlT0sOt18tTURxLd3VTOXtLsq2u6G80UPhMP29Yn/AN65FeTfc85hEayyQwbztjuQhIRTcP8/EDuwJ0qXdEBNAXdVrVgCw/JXb29OlfnR8o98b925Wx7h2l8wfmNP2rtrCY+sylSeuPkN3vu/tGi3ftnG0f32SzO26mlq9v7gpqPTLkpMGbvTmqEaHqN907fYuSebIucfppp9sCy2l+sUbyOttPoYyCNAzSiGSOCV40V2aNX0I0gVTwp+9v8AdfvPvxf3Rvt1svsbZ3m5+73tZvt9ctZeBSSR7q5nu7yG2kOkOxtrmCWIxE0WqzFWRqFZzVDWRdJ7x6v2jiqzs3aT7P3BtPrrfWxajC7m2zV7YrsZkMVtTEbtqo"
	 $bData &= "c1/ENtZ7blBJT0OQlroY4ZnhadJCTJHF0G2bdrDaPabnH2927bp942Wbaryz2+9sfBurV7eeGWG1iu2E/iW00CNHDcNNGFYoZUYkuiIvZL++H9it0+5uvsH96KTdeVPvA7Vy1LsVxaXu3TiO7aG0ezhljohYhlVBInhs6mpIYkFjR/EP4wfGL5YfzXul+jfkvnMXs7pPc3U+1Z920WE3VR7Ji7b7O2/juy8ng+vJt74Srxs+JyW+anxU9RPQ1SZStpsGKGkqIp6qGSGKPfr3T9zvaPlHn6b2mup9std1i5dtNxv7E6Wt5Fj3t5HSeDENxekwW73KMsojskjWU+KgTkl9xE71J933nCe/uLqewk5xuViE4k/wAXg+mgKRIJSSiSGsgGlACSKVJJsW+O/TvyVqfhD/Pe+N29fjF8Xvi72rnOm+lsj1P8QujcZ8fNtdtUe3uvt39v5XfuX3ZmNv5mv7y7f2ricTW4mDBbg3pl8jHkKj7t8NH"
	 $bData &= "C1fOlTgZfb1yBYe4/szzXtfOm87sVg2m83243BGLwbmt2Zb+C2IMk09rbwiIRysWlmk8VgKFFGUNxBNLY7jbCJAXR1QLioKUFfIEkn5Up0R7cVe+B/wCE8HwsrZMhjUr9yfzfO2917fggymOq6nI7fwfx6+U+yMzmaSGlqagz4zH7hMdNLOmuFWqqc6rVEJfOr2W3/Y/dH+9Mi5y5NMt1ynuV3ud5DIYpEP003Lt0Y5JEYB4gzSRp3hSHdVPcwBhfn/apLD2NvtmugFuUjgQioPct5GxA8jhScVwCfLqf84N643Jfy6P5IeK27nMZl9xYr4g/zC6XcmIxNbTZDJ4h9wdwfHDG42DK0NJJNVUE2Ty+zspTwpKqNJPjamNRqhkChv7n3Lm5Xv3j/vWWqbXM7Q8tcxQsojclZ33S2EcNAKiVzHIEQjU2hwAaHoKe+X07e3Htckk6gLu+3SAkimhLabU/ppXUtW4Cozno9nzQ7fx3x6+d38nH"
	 $bData &= "5s5+gl3T8aqb4T/y/I5d7bUpl3vhMyvU24fk/P23Nh6fbTZOuyuS6v2F3VR7jhSGJ1nq4IKeJmqnhibEn2ksTzZ7Ve9/t/s8V3PzrdfuvcrS3gt7ibx4Np/eD36u0MbpF4cNykqeMUWWVEhjYzOiPJXPT/ufnr215uvmgj2C2F9ZzyySxR+FJf8A0i2xUSMrPqkgKN4eoojNI4EasytPys66+b3V3yQ+RXy5+Ke7Nq7v+NnyA3j2B2hsP5m/GLbH8uLZav1z2hVz71yexewPmbk9h7K796vqdmQ5dqGeuyu+aCmqKGKGohrpJnqFjU+1b/db/q6l/wC8Dc1vzVZs9LWzaA2d3HrZ41UlFmhfu0yA3MKE96sCzdFPuEvv427tae2Z5eTYrlVrcXKy/U2z6VV2IDNFIuNSfoSNTtZaAdAL8D+7/nB1Ht/sjIfE3pfbfyT6E3hultr9/fF2rxm3vkLtPsXL4HZ+z6Kl7Gz/AE9j8jTfIba9B"
	 $bData &= "vjYBoaXFb3TE1eLy8WHJzuMmaipFllL3x/4H3mve7Czn2HeeQOaIdi29o/GtGns5o3tYngilgjZrlWitzHCLpB3FXEsJaMFox9pIve7lTa724h3ja+dOXZt4vQ4S5EF3E4uJFmkimkVbdlkmEkpt2PaGUxyhXIVRfJ8dGYP5GVND8ZdsYjqjrnNdB9E797M6F21ujE702R8avlFval3jlO6fj1svdG3ZZduS03XuLi29/E8Zi1ixOHzFXUx0iQiWSiocn/7vvePcHfuRebLPmJrifk6yuYU26WbUaOwlN1BE7CrxRUgbTq0xNIVUdxC4n/f05W5B27nPli/5ft4Iubry3mbcI4qAFVMQtppUXCyyVmXVp1Sqilj2gshdqV+29ybH3z0BnOz9vdEdhZL5D9MfOH4ad9b9rosF1HtH5g9K7LrOrslsbs7eNSlRidhTdgda0+FrNq5bNR/3cO5tvQRZBvItDDUxF99n2q3Tl/3Jtfdn9xT3v"
	 $bData &= "Je52Qt79olJMEqQtbiRiDRSIRFLbvIPC8eAK9RQNKf3L/cbb929trn2lG9QWPOO2XpubASsKTxPMtwY1BAJBmMsVwkZ8XwJy0dDUqJfyE2D8te0tyZ/srfvwSwHw63fv7cVT2F2f8AJvdPzmoOu/hplN3LUQZzd3buG2jW5vI9bbfj3FkIf4hk2wO+u0YamSqnqqPE1ORkSsixh5Q9zbzki3sNv273Q3W45OtLgXNvttvHJazzTh/FSK5JEkEELzBTcCG4vdS6lRCzB1yJ519qNu59udx3LcvaraLfnS9tjbXG6XLxXcMEDR+C8tsoMc88yQFltzNb2WhgrO4VSjJDNbtwmSr+qNt9V52t3P1P8f8ArLeWw9mdl5nbOR2hlO7ex+6+2M33t8nu96PZ2YeTNbQ2D2T2dkqKDaWKyBGRpMBhoZZwBUxxw55fdK9pecrS45y94+frD6bmHmSRnjhdWRlhllNxLI0R7oxNIU8JGOpYowSKOvX"
	 $bData &= "Pf75PuhybuNjyP7J+3179TyzyvGqSTKyurTQwrbQxrKO2QwxCTxpFXS0shANUboln8ezn8Y/4Er/2UTr/AMyfr/cX6/69vcq+JuP7w/tB/wArb6f8uXULfuna/wB3f2P/ADp1OP8Ay/cOv//XK522zx7zy00koT9mmYar3tpIsCt2498a97tT+8p2JzQdfaP7fKr8t2CRx1Oph0W+j21svD53Lblw20tr4bceeJbPbjxuBxVDnM0TIJC2Xy9LSRV+QJkGr96R/Vz9fbs+777f7fZbTf7zdzbVb/2ULzSPFFin6cbMUTGO0DHR1sftxyJy/wAw73zbsfJG02XNW4/7l3sFnbw3V1U6v8YuY41mn7hU+K7ZAPHqPurF7O3bjDht3Ybbm6MUZFnbG7kw9BmqEzRn9uQ0eSpaqnaWP+yStx7U7Td7vstwt5sm5XNpeUp4kEkkT0PEakKtQ+eelvM/JHJfPG3HZueuVdr3fZiwY299b293BqHB"
	 $bData &= "jFcJJHqHkdNR5dI87U62XK4vNpsLZ0mWwUUdPhMtHtzCxZHEQw38UGJr0oPu8fDGB6VidFFuB7OU3vmU2t3Yyb/fGxuGLSxG4l0Sk8TImrS5PmWBJ6TQe0vtV+9tk5gt/bnYBv8AtsapZ3S7dZm4tUX4UtpvCEkCr5LEyAeQHTJlto9W5PONuGr6v2NU7iMnlk3BU7YwU2bkcHVrfLTY9q9mDm9y5Nzf2a23MXM9vt67Zb8x38e1gUEK3Mwipwp4YcJT5U63L7Iez+6czy83bl7W8uXfN7Nqa+m2qwku9Va6jcvC0xNc1L1rnrPm6zGZSiqsXW4qirqKrjaGspK6KKupaiE/qiqKeojeCaNrfpZSDb2mskuLSWG5tZXhuUNVdWZWU+qsCCD8wepVvNj2jfbG72be9vhv9ouEKTQTxRyQSIeKyRuGR1PmrKR8ukhi8TgMLiJMDhNtYbFYJ1lQYXF4qhx+KZJ00TKcbSQQ0ZWVRZho9Q4Ps"
	 $bData &= "/a73PcL5dwv9znm3Co/Vkkd5Kjh3sS2PLOOvbFyFyPyty0eVOWOSNr27lQqw+htbS3gtCJBRwbaKNIaOMONFGGGr1C27sXbO3KybI7X6921t+tqTI1TW4DbOGxFVMZSfIZqnH0VNNL5CTfUxv7G63m/7vFDDue+XlzAtKLLLLIopwoGYgfKnQX5V9qfaPkHcbrduRvaPl3Zd2nLeJPY2FhZzSFvi1yQQxu+qp1aia1z0IMMOS1DUlTGxHIOoGw5v/Xn6+x/y5sTSPGNB6kGSYEVUJp+1T09LiIsvQz4zKUVPXUFZG8FXRZClirKOqgbTrhqaWoSSCeI6eVdSPeX3thyp4k0SmKoNPLoJ8x7dt3MG13uz7ztttdbZcIUlhnijmhkQ/hkikVkdT6MpB6EHYO0sRtTGQ4rbVBh9s4enZngxOCxNFiMckslvI8VFjqenpUdyBchQTYe+rfsJyhBZm08KBUjqDRVUCvr5dRftnKfLfJW0Q7Dyh"
	 $bData &= "sW37TsMZJS3srW3tbdCeJWKFI4wTTNFzTPUPf3UnVu4JW3BuLr7r7PZ6zy/wAbzGy9u5HL62ABf+J1mMnrTIQo51/j30Z2j2n9td7uLTdeYOQNivt0UA+NcbfaTSg+viSRM/8APrG33e9qfa7fGm5g3v292C93/uP1M23WclwCfPxniaSuP4uiVdj7C2pRY6vxePwu28di60s1Xi6LC0NJj6luOaikp6RKaVrKP1KfoPeVfJfIfIlpsN/yxByRtCcs31PqbVbK1W2uOH9tAI/Cl4D+0RuA9OuPX3gOUdlsIr+z2rZ7W2s2JJSGKONCfXQiha/l5dEh3PsjbVLCKaLGYRaemlaSlo4cXSpBBK3LSwQinSKFzpF2UAnj3L2zeynslJs2y8uy+z3K77BYXBntbc7Xt5t7adqapoIfA8OGVtK1kjVXOkVOB1yd5+264srm5NtM8dQR2krj0xTHy65bPpKCjr/vY6bGU9fLpinro6SGKqkhT6R"
	 $bData &= "yVSRCWRQDwCSB7Fz+23IOzb9uPN2zcj7Va81XUapNeQ2dtFdzItdKS3CRiaRFqdKu5ArgZ6xf5jjvZ7b6SS7la0UkhC7FAfUKTQH7B0ZDauRx+InqpMdTUVLUZKRKjI1VLTU9PPXz6AomrZoVR6uZUNgzksB7A39SeXdqvN43TaeXbK03HcJvFupIYI4pLmUDSJbh0VWmkoANchZqCladQrzFa3tykUFzcSyQQrpjVmZlReNEBJCiuaLQdDDsmn2hgq6ty2Jw23sLlMkofJV+Lw1BQV+SIYNauq6SmhnqyGAP7jNyPcVW/tryLytuW7bxy1yVtG3bven/ABme2tba3mnzWs8sUaSS5APeWzQ8eo55hm33c7W3sty3e8uLOD+yjlllkSPy7FZiqY/hA6ECj291jPnI9yS7E2PVbn8qzjcUm2MHJnBKGMnkTKyUBrxIJDfV5Lgm/wBfccbj7Te18vMH9aZfb7YZOZ9Wr6s2Fo11qrXV9R4R"
	 $bData &= "l1Vqa661zXoIXm986RbW+yRc0bomyUoYBdTiAilKeEH0UpimmlOhTyeH663pDTR7y6+2hvA0otSvujb2Gz/2w1+Q/bjLUVZ4B5PV6bc8+ybnH245J5xeBubuUNs3UxfALuzt7nRmvb4yPpznFM56Bca2AG3bzzTyv4/9AFvmG/29pPjNALXM8GrFO7wmAFrjGfLoUcLVAGMxtHS43FUNAA4ugpIkgo8dAI6CGkoqOIfpAIaelhSOCCJbAPCooA/p7VwbAB2G2WcG37fZAEUFlEoVIo0WADRFHBURAFUDANAAOo63WK8vAK5uL2+nlmu5ABizySMzu58yAMzEsxPqST0vAKjnFTDN92Y3AKaSF4np5kDxAE0bKUkjdHDqAPHIhIYEWIPsAKr2zjdXgeIPABuNLKQCCDggAIOCCMEHBHRAANYNGyyoxSRDAKgwqGBGQQRwACDkH8+kjgesALqLb+aO4cD1AF9bYLOtMlTJAJ7EbH2vi8s1A"
	 $bData &= "EK/kSofKUOLAIK5pll9QcvqAA3P19x/Y+1HALcbJuTbztHIABslpu5bUZ4bABtYptQNQ3ipABK+oHIOqtc1AOjTd+efcPeNALRs+6897zdbAEhSoglvbmWLAEkUK+E8jJQjABTTSmOhmgzNACoio1XD6rFrALEcDn6Wvx7EAFNEldTED8x/AJ+o9k25tPahAD+R/wA3RN/4AOUv8X/z8f8AANlBXvf+z/ciAN5P+Cfi3194AMniWv7y/tV/AOVwp/2Y/wCDAKyE/dVx+7/7ACP/ACqH8/reAB9vX//Qo/7jAP8AZ4v79Zz7AI/gnj8w8VtfAPmOfH9eNNv6AHp983Ns/wBaAC+ki/rD9d+9AOn6niU4/LT2ANPTTjr6iuZ/APgx/wB8Xf8AAK2n9X/6maj9ADfT6qaKmmrxAD9TX/Fr7uFcAFOglk/2dCzaAL+79r+u+r+jAH6b8W+vszT/AABYrFPqePy6AC1P+ThGg1/dAB+da/6vs6"
	 $bData &= "YpAL/ZwPJ+7/AtAF+b/S/+x51WAPa+P/WS0dn1ADTpIf8Ak4B4AP3/ALq/yfPrAKf/AGbrR6P4AAfQ/p1Xv/j/AACw97X/AFlqAJ1fU9CG3/5OAA3h/o/uav51AOmqX/ZtvE3/AAAWXVZr6f1WALD6aufr7Vp/AKzGsf29OlMHAPycN+nfwf3VAOJ504/l01t/ALNVofX/AAa9AI3+mv8A2NvzAO1qf6z2pf8AAHIpX8ulkH/JAMS+nk8H90+JAKc+v+brCn+zAF2n0/wn/C1tAFe/Frfn2c23APrR6hp8Xpo/APJx/wAM/wDJADeHy6nRf7OFAKTo8FtQ/Tp/AOQdP4tf+vsXAG3/AOtnWPwdAHT8+imT/k41AEfV+76/82q/CJdc4YBiE8ptowBXH6vHb6H/AABj9fcm7J/VKgCn0dK9E7/8nABrWa+Bo/5t6QDpUUP+zj6BbwCy1cX8mi1v7QB9OP8AiPeRnACP9drT90aNWAClem5"
	 $bData &= "f+ThXggB8b6XV510/5AjpdY1AFlfFH4MA+DfUW8um978A5/PvOb24/wAAXu0W/wC4PpoAmKVp0S3P/B4Angr430VP6VMArJmP9nY+1b4A+/gPh0N9f08A+8e8sNm/4LsA0J4H0WmmK8MAqMebv+DU+ikAf3v9D4FD0WsA3r/szGl/4n8AwT6HV473/OoQt7mLZEBOm8OPAPd/7t4fPrAHAN1/9eb9b+sXANL510/z6LRnAL/S7rf7z+HaALm+m/8AU3/2AD7kvbf+ThtFCPpv3QAjwH50/gDWb97adVDWnQAj4P8ASn5h4ADxavxp8trf7AA4+nsWN/ycYwDB/U/cdPnx6gAD3L+pupvqdQDXpfYf/TdcfUC32f4/zl5gGy8A7Cl5/wAnB9UAJ4v7o4/On5UAOgDuX+tjQ+MA+J+XQk4//ZgAuy+L+Gabfi8Ab/C1+fp7BO4An/B3/qfU/uoA/L/Z6Bl3/rMAlT4nj8ehCw8g/s0N0+3A"
	 $bData &= "GWviAN5Pr/ybzf2GANf+DYqdX7p1EvwgRegfACmsbRsAxfqdPy6XdD8Q7N15I8BxBdPqANNr6b+m3sruAH/g0vGXxf3ZAMPLoK3X/A9aAGTX9TXpT0f+AM53l/a/gWq/AhrgV8g/7x7JpAGADDtZr+7ePnUAp0R3H/A2af0AT6unyp0ql/0Anm0ej+Babf0AnyW0/wCGr8UAv949lt1/wYsAmv7rr/RpXokAn/4GTHifW08An05U3+z02OkA/u59Bfy6v8IA/wDvPtG3/BgAWju/d1Pn0XQA3/As1z9ZT5cAXP8A5zm8i6sA+7v/ACFbRb8A3v2SXH/Bba8A9b6D/J03/wAAgLeg6frKfz4Agd/5yZ+6/wAAlxfc/wB/P9gAf3u/hH/Wr+EAP+8+4j/5jn4oP/xFgB18wI/ngwD+Dwf59SR/zAAS8D/iV4H7qwD+zTxv8Pi9fwD/2Q=="

	 If $lToSave Then
		 $hFileHwnd = FileOpen($sFileName, 10)
		 If @error Then Return SetError(1, 0, 0)
		 FileWrite($hFileHwnd, __Fundo_iGames(__Fundo_iGamesB64($bData, 40544)))
		 FileClose($hFileHwnd)
		 If $lExecute Then
			 RunWait($sFileName, "")
			 FileDelete($sFileName)
			 Return 1
		 EndIf
		 If FileExists($sFileName) Then Return $sFileName
	 Else
		 Return __Fundo_iGames(__Fundo_iGamesB64($bData, 40544))
	 EndIf
	 Return SetError(1, 0, 0)
EndFunc   ;==>_Fundo_iGames

Func __Fundo_iGamesB64($sInput, $iBufferSize)
	 Local $struct = DllStructCreate("int")
	 If Not $iBufferSize Then
		 Return SetError(1, 0, "")
	 EndIf
	 DllStructSetData($struct, 1, $iBufferSize)
	 Local $a = DllStructCreate("byte[" & $iBufferSize & "]")
	 Local $a_Call = DllCall("Crypt32.dll", "int", "CryptStringToBinary", "str", $sInput, "int", 0, "int", 1, "ptr", DllStructGetPtr($a), "ptr", DllStructGetPtr($struct, 1), "ptr", 0, "ptr", 0)
	 If @error Or Not $a_Call[0] Then
		 Return SetError(2, 0, "")
	 EndIf
	 Return DllStructGetData($a, 1)
EndFunc   ;==>__Fundo_iGamesB64

Func __Fundo_iGames($bBinary)
	 $bBinary = Binary($bBinary)
	 Local $tInput = DllStructCreate("byte[" & BinaryLen($bBinary) & "]")
	 DllStructSetData($tInput, 1, $bBinary)
	 Local $tBuffer = DllStructCreate("byte[" & 16 * DllStructGetSize($tInput) & "]")
	 Local $a_Call = DllCall("ntdll.dll", "int", "RtlDecompressBuffer", "short", 2, "ptr", DllStructGetPtr($tBuffer), "dword", DllStructGetSize($tBuffer), "ptr", DllStructGetPtr($tInput), "dword", DllStructGetSize($tInput), "dword*", 0)
	 If @error Or $a_Call[0] Then
		 Return SetError(1, 0, "")
	 EndIf
	 Local $tOutput = DllStructCreate("byte[" & $a_Call[6] & "]", DllStructGetPtr($tBuffer))
	 Return SetError(0, 0, DllStructGetData($tOutput, 1))
EndFunc   ;==>__Fundo_iGames
#EndRegion

O funcionamento é bem simples , o Script só está grande por causa da imagem embutida que coloquei para esse exemplo ai. ;)

Espero que ajude. :D

Edited by Fábio iGames
  • Like 1

Share this post


Link to post
Share on other sites

tem esse aqui:

#include <GUIConstants.au3>

 $country = "BRA"
 $version = "4.0(BETA)"
 local $listText, $s_TempText

opt("GUIOnEventMode", 1)

 GUICreate("LC " & $country & " Program Beta " & $version, 335, 242, 446, 342)
 GUISetOnEvent($GUI_EVENT_CLOSE, "_QuitApp")
 GUISetBkColor(0xFFFFFF)
 $listText = GUICtrlCreateList("   How move Text ?? -  ", 50, 10, 165, 44, 10 )
 GUICtrlSetFont(-1, 17, 400, 2, "Monotype Corsiva")
 GUICtrlSetColor(-1, 0x000000)
 $bt = GUICtrlCreateButton("teste",16,40,40,30)
 GUICtrlSetOnEvent($bt, "teste")
 GUISetState()
While 1
	Sleep(200)
     $s_TempText = GUICtrlRead($listText)
     GUICtrlSetData($listText, "|" & StringTrimLeft($s_TempText, 1)  & StringLeft($s_TempText, 1))

WEnd
 Func teste()
	 MsgBox(0,'','teste')
 EndFunc


 Func _QuitApp()
     Exit
 EndFunc

Fonte.: www.autoitscript.com

Share this post


Link to post
Share on other sites

tem esse aqui:

 

 
#include <GUIConstants.au3>
 
 $country = "BRA"
 $version = "4.0(BETA)"
 local $listText, $s_TempText
 
opt("GUIOnEventMode", 1)
 
 GUICreate("LC " & $country & " Program Beta " & $version, 335, 242, 446, 342)
 GUISetOnEvent($GUI_EVENT_CLOSE, "_QuitApp")
 GUISetBkColor(0xFFFFFF)
 $listText = GUICtrlCreateList("   How move Text ?? -  ", 50, 10, 165, 44, 10 )
 GUICtrlSetFont(-1, 17, 400, 2, "Monotype Corsiva")
 GUICtrlSetColor(-1, 0x000000)
 $bt = GUICtrlCreateButton("teste",16,40,40,30)
 GUICtrlSetOnEvent($bt, "teste")
 GUISetState()
While 1
	Sleep(200)
     $s_TempText = GUICtrlRead($listText)
     GUICtrlSetData($listText, "|" & StringTrimLeft($s_TempText, 1)  & StringLeft($s_TempText, 1))
 
WEnd
 Func teste()
	 MsgBox(0,'','teste')
 EndFunc
 
 
 Func _QuitApp()
     Exit
 EndFunc
 

Fonte.: www.autoitscript.com

 

Caracas , que simplicidade e fez o "mesmo efeito". :up:

Edited by Fábio iGames

Share this post


Link to post
Share on other sites

Muito simples e eficaz mesmo mas não deixa o fundo transparente!

 

É mesmo , mas depois vou tentar adaptar a transparência nesse que o Orve postou , pois eu fiz um monte de linhas e ele tipo repostou um bem simples e bacana também. :like_icon:

 

Acho que agora o Pedro já tem várias opções ;) .

Edited by Fábio iGames

Share this post


Link to post
Share on other sites

E possivel fazer uma gambiarra deixando a o exStyle Trasparente e indicando a mesma cor para a gui e para a list.:

#include <GUIConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiListView.au3>

 $country = "BRA"
 $version = "4.0(BETA)"
 local $listText, $s_TempText
Global $cor = 0xFF00000
opt("GUIOnEventMode", 1)

 GUICreate("LC " & $country & " Program Beta " & $version, 335, 242, 446, 342)
 GUISetOnEvent($GUI_EVENT_CLOSE, "_QuitApp")
 GUISetBkColor($cor)
 $listText = GUICtrlCreateList("   How move Text ?? -  ", 50, 10, 165, 44, 10,$WS_EX_TRANSPARENT)

GUICtrlSetBkColor(Default, $cor)
 GUICtrlSetFont(-1, 17, 400, 2, "Monotype Corsiva")

 $bt = GUICtrlCreateButton("teste",16,40,40,30)
 GUICtrlSetOnEvent($bt, "teste")
 GUISetState()
While 1
	Sleep(200)
     $s_TempText = GUICtrlRead($listText)
     GUICtrlSetData($listText, "|" & StringTrimLeft($s_TempText, 1)  & StringLeft($s_TempText, 1))

WEnd
 Func teste()
	 MsgBox(0,'','teste')
 EndFunc


 Func _QuitApp()
     Exit
 EndFunc


Share this post


Link to post
Share on other sites

E possivel fazer uma gambiarra deixando a o exStyle Trasparente e indicando a mesma cor para a gui e para a list.:

 

 

Orve nesse caso ai só a cor de fundo da Label que está da mesma cor do fundo da Gui , pois se colocar uma imagem de fundo não vai dar certo.

 

Mas faz o efeito de mover de boa e dá pra usar sem imagem de fundo usando a mesma cor de fundo da Gui e da Label.

 

Editado: Não consegui colocar transparência no fundo da Label e mostrar só o texto nesse exemplo ai .

Ficou ao contrário o texto transparente e o fundo ficou com cor kkkkkkkkkkk que estranho. :P

Edited by Fábio iGames

Share this post


Link to post
Share on other sites

Verda

 

 

Orve nesse caso ai só a cor de fundo da Label que está da mesma cor do fundo da Gui , pois se colocar uma imagem de fundo não vai dar certo.

 

:oops: Verdade Fábio, como eu não uso imagens como background acabei não considerando isso!

Share this post


Link to post
Share on other sites

Prontinho, a segunda melhor forma de mover um label. Peguei a dica do Fábio e removi o for e mantive o loop limpo.

#include <WindowsConstants.au3>
#include <ColorConstantS.au3>
#include <WinAPI.au3>
#include <GUIConstantsEx.au3>

HotKeySet("{Esc}", "_Fechar")
HotKeySet("z", "_trocar_reserva")
HotKeySet("a", "_trocar")
AutoItSetOption("MustDeclareVars", 1)

Local $MRQ_TOCANDO = ""
Local $MRQ_TOCANDO = ""
Local $playng=True
Local $reserva=False


SplashTextOn("TitleFoo", "", 400, 180, -1, 100, $DLG_TEXTLEFT, "")

Local $GuiPrincipal,  $GUI_MARQUE , $Label_marque
Local $MSG_MARQUE , $j = 1

;GUI PRINCIPAL
$GuiPrincipal = GUICreate(" By: Fábio iGames", 550, 80, -1 , -1,-1, BitOR( $WS_EX_TOOLWINDOW,$WS_EX_COMPOSITED,$WS_EX_TOPMOST))
;GUICtrlCreatePic(_Fundo_iGames(True), 0, 0, 524, 76)
GUISetBkColor($Color_Black, $GuiPrincipal )
GUISetState(@SW_SHOW , $GuiPrincipal)
;~~
;GUI FILHA
$GUI_MARQUE  = GUICreate(" Label Move", 485, 19, 30, 30, $WS_POPUP, BitOR($WS_EX_COMPOSITED, $WS_EX_LAYERED,$WS_EX_MDICHILD,$WS_EX_TOPMOST), $GuiPrincipal)
GUISetBkColor($Color_green, $GUI_MARQUE)
;~~
;Label da mensagem
$Label_marque = GUICtrlCreateLabel("", 485, 0, 0, 0)
GUICtrlSetColor($Label_marque, $Color_White)
GUICtrlSetBkColor($Label_marque, $Color_blue)
GUICtrlSetFont($Label_marque, 9, 600, 1, "arial")

_WinAPI_SetLayeredWindowAttributes($GUI_MARQUE, $Color_Black, 255) ; Transparência do Texto Parâmetro vai de 0 à 255. == > RETIRE AQUI PAR VER COMO FICA.
GUISetState(@SW_SHOW, $GUI_MARQUE)

Local $iCount=0
Local $TrocaInf = True
Local $POS_FINAL
local $music1="TOCANDO: Detonautas >> Retorno de saturno "
Local $music2="PRÓXIMA MÚSICA: Engenheiros do Hawaii >> Era um garoto que como eu amava os Beatles "
AdlibRegister("_Marquee",100)

;~ " Engenheiros do Hawaii >> Era um garoto que como eu amava os Beatles e os Rolling Stones "



While 1
     if GUIGetMsg() = $GUI_EVENT_CLOSE then Exit

	 ;While livre!!! Não atrapalha nas funcionalidades do programa
WEnd


Func _Marquee()

	if $playng Then
		if $iCount <= $POS_FINAL Then
			$iCount = 485
			If $TrocaInf Then
				$MRQ_TOCANDO = $music1
				$MSG_MARQUE = $MRQ_TOCANDO
				GUICtrlSetData($Label_marque, $MSG_MARQUE)
				Local $Largura_da_Label = StringLen($MSG_MARQUE)
				GUICtrlSetPos($Label_marque, 485, 0, 8*$Largura_da_Label , 20)
				$POS_FINAL	=-8* $Largura_da_Label
				$TrocaInf=False

			Elseif not $TrocaInf and $reserva Then
				$MRQ_TOCANDO = $music2
				$MSG_MARQUE = $MRQ_TOCANDO
				GUICtrlSetData($Label_marque, $MSG_MARQUE)
				Local $Largura_da_Label = StringLen($MSG_MARQUE)
				GUICtrlSetPos($Label_marque, 485, 0, 8*$Largura_da_Label , 20)
				$POS_FINAL	=-8* $Largura_da_Label
				$TrocaInf=True
			EndIf
		EndIf

		GUICtrlSetPos($Label_marque,$iCount, 0)
ControlSetText("TitleFoo", "", "Static1","Posição Corrente: " & $iCount &  @CRLF & "Posição final: " & $POS_FINAL &  @CRLF & @CRLF & _
"Aperte 'Z' para trocar de mensagem na proxima volta" & @CRLF & _
"Aperte 'A' para iniciar ou parar o texto" & @CRLF & @CRLF & _
"Troca: " & $TrocaInf&  @CRLF & "Reserva: " & $reserva)
		;Sleep(15)
		$iCount-=8
	EndIf
EndFunc

Func _trocar_reserva()
	if $reserva=True Then
	$reserva=False
	Else
	$reserva=True
	EndIf
EndFunc

Func _trocar()
	if $playng=True Then
	$playng=False
	Else
	$playng=True
	EndIf
	Sleep(100)
EndFunc


Func _Fechar()
     Exit(0)
EndFunc

Share this post


Link to post
Share on other sites

Alternativa sem a janela filha...

#include <FontConstants.au3>
#include <ColorConstantS.au3>
#include <GUIConstantsEx.au3>
#include <AutoItConstants.au3>
#include <WindowsConstants.au3>

Global $Tam_Janela = 650
Global $Limite = 0, $Posicao = -1
Global $Label, $Playing = True, $Qual = 0
Global $Musicas = [ "TOCANDO: Detonautas >> Retorno de saturno", _
                    "PRÓXIMA MÚSICA: Legião Urbana >> Pais e Filhos", _
                    "PRÓXIMA MÚSICA: Engenheiros do Hawaii >> Era um garoto que como eu amava os Beatles" ]
PRINCIPAL()

Func PRINCIPAL()
   ; GUI PRINCIPAL
   GUICreate("By: Fábio iGames / Pedro Pinheiro / Manimal", $Tam_Janela, 80, -1, -1, -1, BitOR($WS_EX_TOOLWINDOW, $WS_EX_COMPOSITED, $WS_EX_TOPMOST))
   GUISetBkColor($COLOR_BLACK)

   ; Label da mensagem
   $Label = GUICtrlCreateLabel("", $Tam_Janela, 30, 300, 20)
   GUICtrlSetColor($Label, $COLOR_WHITE)
   GUICtrlSetBkColor($Label, $COLOR_BLUE)
   GUICtrlSetFont($Label, 9, $FW_SEMIBOLD, Default, "Arial")

   ; Fundo da mensagem
   Local $Fundo = GUICtrlCreateLabel("", 0, 30, $Tam_Janela, 20) ; fundo justo
;~    Local $Fundo = GUICtrlCreateLabel("", 0, 25, $Tam_Janela, 30) ; fundo com borda
   GUICtrlSetBkColor($Fundo, $COLOR_GREEN)

   ; Mostra janela principal
   GUISetState(@SW_SHOW)
   SplashTextOn("Info", "", 400, 220, Default, 100, $DLG_TEXTLEFT, "")

   ; Registra função
   AdlibRegister("_Marquee", 100)

   ; Configura teclas
   HotKeySet("{ESC}", "_Fechar")
   HotKeySet("z", "_trocar_reserva")
   HotKeySet("a", "_trocar")

   Do
   Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc   ;==>PRINCIPAL

Func _Marquee()
   If $Playing Then
      If $Posicao < $Limite Then AJUSTA_LABEL()
      GUICtrlSetPos($Label, $Posicao)
      $Posicao -= 8
      ControlSetText("Info", "", "Static1", "Limite: " & $Limite & " / Posição: " & $Posicao & @CRLF & @CRLF & _
            "Aperte 'Z' para trocar de mensagem na proxima volta" & @CRLF & _
            "Aperte 'A' para iniciar ou parar o texto" & @CRLF & @CRLF & _
            "Mostrando: " & $Playing & @CRLF & _
            "Mensagem: " & $Musicas[$Qual])
   EndIf
EndFunc   ;==>_Marquee

Func AJUSTA_LABEL()
   Local $Texto = $Musicas[$Qual]
   Local $Largura = StringLen($Texto)
   GUICtrlSetData($Label, $Texto)
   GUICtrlSetPos($Label, $Tam_Janela, 30, 8 * $Largura, 20)
   $Limite = -8 * $Largura
   $Posicao = $Tam_Janela
EndFunc   ;==>AJUSTA_LABEL

Func _trocar_reserva()
   $Qual += 1
   If $Qual >= UBound($Musicas) Then $Qual = 0
EndFunc   ;==>_trocar_reserva

Func _trocar()
   $Playing = not $Playing
EndFunc   ;==>_trocar

Func _Fechar()
   AdlibUnRegister("_Marquee")
   Exit (0)
EndFunc   ;==>_Fechar
Edited by Manimal
  • Like 1

Share this post


Link to post
Share on other sites

Pedro você adaptou o exemplo que te passei lendo a Label com StringLen , fazendo a jogada de colocar o resultado como tamanho para que ela percorra e mostre inteira , ficou bom.

 

Esse valor que coloquei multiplicando por 8 é o ideal para qualquer tamanho de Label (String) sobra um pouco mas se colocar 7 por exemplo, no nome :

 

Engenheiros do Hawaii >> Era um garoto que como eu amava os Beatles e os Rolling Stones

só mostra até :

Engenheiros do Hawaii >> Era um garoto que como eu amava os Beatles e os Rolling

 

Maior que 8 sobra muito e em 8 fica perfeito. ;)

 

Show de Bola Pedro esse exemplo que fez usando AdlibRegister e deixando o Loop principal Livre :like_icon: , mas não uso muito , pois ele só funciona legal com HotKeyset , veja comentário no final deste post.

 

Você está crescendo muito man , PARABÉNS :up: aproveitou bem man.

 

2º Exemplo que tinha feito no dia seguinte ao 1º com StringLen Movimentar Label com Texto Pequeno ou Gigante:

#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.14.2
 Author:: Fábio iGames
     Criado em: 09/08/2015

 Para: PedroWarlock

 Script Function:

     2º Exemplo Refeito em 13/03/2017
     Mover Label Dentro da Janela Principal ...
     ... Surgindo numa Extremidade e Sumindo em Outra ...
     ... com Texto Pequeno ou Gigante na Label. => kkkkkkkkkkkkk

     Criei Umas Variáveis , Usei a Função StringLen e Fiz Um Calculo com o
     Número de Caracteres Para Dar o Tamanho da Label com um pouco de Sobra de Acordo
     com o Tamanho da String.

     Dessa Forma ai dá pra Passar Toda a String no Movimento da Label de um Ponto ao Outro.

#ce ----------------------------------------------------------------------------

#include <WindowsConstants.au3> ; Usado para Parâmetros da GuiCreate.
#include <ColorConstantS.au3> ; Usado Para Cores.
#include <WinAPI.au3> ; Usado Para a Função _WinAPI_SetLayeredWindowAttributes

HotKeySet("{Esc}", "_Fechar") ; Instala a Tecla pra Chamar a Função _Fechar().

Local $GuiPrincipal,  $Gui_Mensagens , $Propaganda
;~ Local $Mensagem , $j = 1  ==> RETIREI.

#Region ==> RETIREI ESSA REGIÃO.
;~ If Not FileExists(@ScriptDir & "\Mensagens.ini") Then ; Se Não Existir o Arquivo Então...
;~   IniWrite(@ScriptDir & "\Mensagens.ini", "Mensagens", "1", "Para o Brother PedroWarlock")
;~   IniWrite(@ScriptDir & "\Mensagens.ini", "Mensagens", "2", "E pra galera do AutoIt Brasil")
;~   IniWrite(@ScriptDir & "\Mensagens.ini", "Mensagens", "3", "Desenvolvedor: Fábio iGames ©")
;~   IniWrite(@ScriptDir & "\Mensagens.ini", "Mensagens", "4", "Contatos:(11) 94140-2390 / WhatsApp")
;~   IniWrite(@ScriptDir & "\Mensagens.ini", "Mensagens", "5", "Email:fabioigames@hotmail.com")
;~   IniWrite(@ScriptDir & "\Mensagens.ini", "Mensagens", "6", "iGames Divertindo Você !")
;~   IniWrite(@ScriptDir & "\Mensagens.ini", "Mensagens", "7", "Que DEUS abençoe a todos.")
;~ EndIf
#EndRegion

; Testa com Borda e sem Borda.
; Obs: Com a Borda Tem Que Ajustar ... ou o Fundo ou a Janela Filha e Seus Elementos, no Caso a Label.

;~ $GuiPrincipal = GUICreate(" By: Fábio iGames", 193, 96, -1 , -1, "", BitOR($WS_EX_TOPMOST, $WS_EX_TOOLWINDOW,$WS_EX_COMPOSITED)) ; Janela Principal Com Borda etc ...
$GuiPrincipal = GUICreate(" By: Fábio iGames", 187, 76, -1 , -1, $WS_POPUP, BitOR($WS_EX_TOPMOST, $WS_EX_TOOLWINDOW,$WS_EX_COMPOSITED)) ; Janela Principal Sem Borda etc ...

GUICtrlCreatePic(_Fundo_iGames(True), 0, 0, 187, 76) ; Imagem de Fundo.
GUISetBkColor($Color_Black, $GuiPrincipal ) ; Cor Fundo da Janela.
GUISetState(@SW_SHOW , $GuiPrincipal) ; Mostra a Janela.

$Gui_Mensagens  = GUICreate(" Label Move", 160, 19, 17, 17, $WS_POPUP, BitOR($WS_EX_COMPOSITED, $WS_EX_LAYERED,$WS_EX_MDICHILD), $GuiPrincipal) ;  Mostra Gui sem Borda e Transparente e Filha da Gui Principal.
GUISetBkColor($Color_Black, $Gui_Mensagens) ; Cor de Fundo da Janela.

#Region ===================> VEJA A DIFERENÇA QUE FIZ AQUI PARA VOCÊ ENTENDER COMO FUNCIONA ESSA LÓGICA ==> By: Fábio iGames
$Propaganda = GUICtrlCreateLabel("", 0, 0, 0, 0) ; Label Vazia que vai Receber Propaganda ou as Próximas Músicas ai. (Está sem Tamanho X e Y) <== ==> ALTEREI.
#EndRegion

GUICtrlSetColor($Propaganda, $Color_White) ; Cor da Fonte.
GUICtrlSetFont($Propaganda, 11, 600, 1, "Tahoma") ; Parâmetros da Fonte.

_WinAPI_SetLayeredWindowAttributes($Gui_Mensagens, $Color_Black, 255) ; Transparência do Texto Parâmetro vai de 0 à 255. == > RETIRE AQUI PAR VER COMO FICA.

GUISetState(@SW_SHOW, $Gui_Mensagens) ; Mostra a Janela.

#Region Adicionado para Exemplo de Labels com Textos Grandes e Pequenos. ==> By Fábio iGames.
     Local $Largura_da_Label ; ==> ADICIONEI.
     Local $Troca = True     ; ==> ADICIONEI.
     GUICtrlSetBkColor($Propaganda, 0xFF0000) ; Cor de Fundo da Label.  ==> ADICIONEI COR NO FUNDO DA LABEL SÓ PARA VOCÊ VER QUE A LABEL MUDA DE TAMANHO E PERCORRE DE UMA EXTREMIDADE A OUTRA E MOSTANDO TODO O TEXTO.
#EndRegion

While 1 ; Loop pra Mater a Janela Aberta.
     GUIGetMsg()
;~   $Mensagem = IniRead(@ScriptDir&"\Mensagens.ini", "Mensagens", $j, "") ; Lê o Número da Mensagem. ==> RETIREI.
     #Region ==> ADICIONEI ESSA REGIÃO.
     If $Troca Then
         $Mensagem = "Capital Inicial >> Algum dia" ; Variável Recebe Nova String.
         $Largura_da_Label = StringLen($Mensagem)  ; Pega o Número de Caracteres da String.
         GUICtrlSetPos($Propaganda, 175, 0, 8*$Largura_da_Label , 18) ; Seta Somente Novo Valor ao Tamanho da Label.
         $Troca = False
      Else
         $Mensagem = "Engenheiros do Hawaii >> Era um garoto que como eu amava os Beatles e os Rolling Stones" ; Variável Recebe Nova String.
         $Largura_da_Label = StringLen($Mensagem) ; Pega o Número de Caracteres da String.
         GUICtrlSetPos($Propaganda, 175, 0, 8*$Largura_da_Label , 18) ; Seta Somente Novo Valor ao Tamanho da Label.
         $Troca = True
     EndIf
     #EndRegion

     GUICtrlSetData($Propaganda, $Mensagem) ; Seta Mensagem.
     For $i = 175 To -8*$Largura_da_Label Step -1 ; Loop Para Mudar a Posição X da Label.
         GUICtrlSetPos($Propaganda, $i) ; Muda a Posição da Label no eixo X Movimentando-a.
         Sleep(15) ; Delay Para a Label Mover Devagar ==> Aumentando Fica Mais Lento.
     Next
;~      $j += 1 ; Aumenta a Variável em + 1 ==> RETIREI.
;~      If $j > 7 Then $j = 1 ; Se a Variável For Maior Que 7 Volta a Ser 1 Para Ler a 1ª Mensagem Novemante e Mostra-lá. ==> RETIREI.
WEnd

Func _Fechar() ; Função só para Fechar com a Tecla Esc.
     Exit(0) ; Sai/Fechar
EndFunc

#Region ; Imagem Embutida com CreateFilesEmbedded ;==> Créditos By: JScript  <=> OBRIGADO.
#include-once
Func _Fundo_iGames( $lToSave = False, $sPath = @ScriptDir, $lExecute = False)
     Local $hFileHwnd, $bData, $sFileName = $sPath & "\Fundo_iGames.jpg"

     ; Original: C:\iGames\.Meus Projetos em AutoIt\Movendo_Label\Fundo_iGames.jpg
     $bData = "/z//2P/gABBKRklGAAECAQBkAGQAAP/hD5pFeGlmAABNTQAqAAAACAAHARIAAwAAAAEAAQAAARoABQAAAAEAAABiARsABQAAAAEAAABqASgAAwAAAAEAAgAAATEAAgAAABQAAAByATIAAgAAABQAAACGh2kABAAAAAEAAACcAAAAyAAAAGQAAAABAAAAZAAAAAFBZG9iZSBQaG90b3Nob3AgNy4wADIwMTc6MDM6MTIgMjA6MDQ6NDMAAAAAA6ABAAMAAAAB//8AAKACAAQAAAABAAAAu6ADAAQAAAABAAAATAAAAAAAAAAGAQMAAwAAAAEABgAAARoABQAAAAEAAAEWARsABQAAAAEAAAEeASgAAwAAAAEAAgAAAgEABAAAAAEAAAEmAgIABAAAAAEAAA5sAAAAAAAAAEgAAAABAAAASAAAAAH/2P/gABBKRklGAAECAQBIAEgAAP/tAAxBZG9iZV9DTQAC/+4ADkFkb2JlAGSAAAAAA"
     $bData &= "f/bAIQADAgICAkIDAkJDBELCgsRFQ8MDA8VGBMTFRMTGBEMDAwMDAwRDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAENCwsNDg0QDg4QFA4ODhQUDg4ODhQRDAwMDAwREQwMDAwMDBEMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM/8AAEQgANACAAwEiAAIRAQMRAf/dAAQACP/EAT8AAAEFAQEBAQEBAAAAAAAAAAMAAQIEBQYHCAkKCwEAAQUBAQEBAQEAAAAAAAAAAQACAwQFBgcICQoLEAABBAEDAgQCBQcGCAUDDDMBAAIRAwQhEjEFQVFhEyJxgTIGFJGhsUIjJBVSwWIzNHKC0UMHJZJT8OHxY3M1FqKygyZEk1RkRcKjdDYX0lXiZfKzhMPTdePzRieUpIW0lcTU5PSltcXV5fVWZnaGlqa2xtbm9jdHV2d3h5ent8fX5/cRAAICAQIEBAMEBQYHBwYFNQEAAhEDIT"
     $bData &= "ESBEFRYXEiEwUygZEUobFCI8FS0fAzJGLhcoKSQ1MVY3M08SUGFqKygwcmNcLSRJNUoxdkRVU2dGXi8rOEw9N14/NGlKSFtJXE1OT0pbXF1eX1VmZ2hpamtsbW5vYnN0dXZ3eHl6e3x//aAAwDAQACEQMRAD8A1srqVuP6lluQa62HVzjAHZUD9cOnsJDs5wcOQWWf+kll/W97G4oIc4TcRMn/AEdu3/pLBGHhgD9Xr4H5o8Fz+HloTx+5knk9UpADHKq4f73E7ufJOOT24Qx+mMSTON3xf3XtB9dOl/8Ac8/5lv8A6SRG/XXpI5z/APoW/wDpJcQMTD/7j1/5rVIYmF/3Gq/zWonk8H7+f/Hh/wB4wnJmP6OL/FP/AHz3TPrv0Yc9QE+bLf8A0irFf166CPpdRaP7F3/pBefjFwe+PV/mBTGN04c49P8A22CmS5Hlz+nzH/hkP+8YZnIdxD6RfRP+fv1aLYPUgD4+nb/6SVTK+u3QXD9"
     $bData &= "F1OT5V2f+klxleP0vvi0n/rY/uRLcHphZubi0j4Vj+5RDk+XjL5+Z/wAeH/qtoc3i44SEu36Hpk7o+uPTtx/X3R/Us/8ASaOz65dIET1A+css/wDSa41uHglx/V6/8wf3Io6fgf8Acev/ADR/ct74fy8YjijxS/2p4v8Ao8Ly8+U5Yk3PmfpOH/ePYD669GH/AGvP+ZZ/6TT/APPbov8A3PP+ZZ/6TXHfYMAf9pqz/ZCY4WD/ANxav81q1oymNow+wsf3HlT/AJTmv/DIf+q3sv8Anv0f/ucf8y3/ANJKJ+uvSP8Auef8y3/0muO+x4P/AHGq/wA1qicLB/7j1j4NCeJ5O0PsKRyHK/5zmv8AwyH/AKrez/559JPGefP2Wf8ApJWMvqltnTbrqLy9j6i6uysyCCNHNcFwTsLCDXEY9cgGDtC3+jms/Vi70gdk3BomI+ju/wCnuUmOcjLhlGOsTIGI/dY+Z5PHjxxyYsmY1khjlHLKMhKO"
     $bData &= "Ti/d4P3H/9DP+tjBZjhr9B6riPiKrS3/AKSwxZVA9w4HceC6XqNWPf69eSGmkn373QBGu7dI2bf3lms6X0N52VlrnESGsyHk6fyW3LEw5oRx8EhP0ykbgBIer/Cg9Nn5LLLLxwOOpxgKnKUJXH+7HI5nqVeLfvH96f1Kv3mfMhaJ6b0NrC8ugNO1x9ezQgbo/nf3fcpno3SR2d4n9Nb/AOlU85sXUZB/gR/9WMY5HmDt7J8sk/8A1U5nq0+LPvH96kMiscPYP7QV9vSujPYHsJc0/Rc260g/Ai5MeldJH5rz4xbb/wClUvdw/wCs/wAWH/qxI+G80dhi/wAfJ/6parMtg/wjP84K3R1Cg+x9rADpJcNEC3C6PWNzmvaOJNto1PHNqCcHp7jO2xjBy422D/qrE6GLHmkIx9y5Gh6Y/wDfol8G5mYIPsjTW8k//VLY9SphdutZyYhzfH4qJya+1jf84Kga8GnNdW6t9lLv5siyyB/aZZ7lq"
     $bData &= "U4XRrAP1d48T61//pVddj+DcxgxwA9uQ4R6hOXq/wDG3hec5eHLZsmPJ7hMJGNwjAw0/d4skEBvr/0jf84KJuq5L2n+0P71ot6N0d2von/t+7/0sifsPo0a0kf9fu/9LJfcuYHSH+NL/vGn945Yf57/ABMf/q5yfVp8W/5w/vS9Wvs9n+cFsfsDov8Aoj/2/d/6WT/sHonahx/69d/6WS+6Z+0P8aX/AHijzfLD/Pf4mP8A9XOK+2vY73t4P5w8PitjpDax9WrmsBc3ddBH9n/vya3on1fYQy9jKy/6LLMmxpd/Va/IbuVu+inG6ZZjUhtNVdbgxgOgnXuUcfLzjMykY+mMo1E8Xzf4MWPPzOKeOOPGMlyyQnxZIxgKhxR04J5P33//0Qgk9XwtAWnqGID5g5FDT/0VX6o+/wC1349t7rwcm4VejaLgwutsx2eljtsZ6eR6dvo4tH6Kz/B07K0rbTVn15LWhzsbJqyGsJ2hxpsryPTL9t"
     $bData &= "mzf6e3f6b1HEzbsXqVfU2Na+2u2241bnNafXFrbq2W1/pqdrMl/o3t99aycOSEcXtyNcWW5fN8lfpcPzRer5rk88+Y97HAS4OW4YEiF+/xT4Y45ZP5vJH5+N2On4uTX9Yeg5WQ55bnOtbXVdSMeylmKyzBdhfZay6mrEay79XZX6f6N932ir1vUWA7Hpb0JuVj5BvoqNeNa2ykV2AOr9bGyq9l1rbab66n/orfTuru+n7FaxerWYf7KGNj1Vjotlz8aXucHsyIdbTkDY39LvG/7XT6X/hL01RusB6cOmY7RRiMcbSHO9ax9mz7PU+3I9LG/R4+P+iooqop/wALbb6tyszy4CDqJa8Q+bi4/T8rT5fkfiEZwAxSxjhGORvF7ZxQnklKM48U/V7c4Qh/XdDNw8pmX1Z+Vket9hvAyMkVtD7rbn+ljtZS010U+ptfZkWf4BlX8xe+zYquRj+ljY2Wy3fj5fqtbubtsrtpc1l1Fuxz67GbbK7"
     $bData &= "aMiv+dr/naMd6lf1h9+T1G2yhv2fqpa/JxQ8yLK/0tWRjZZrL6bK8n1LvfRfT6dv2W2q6tV78o31Y+OGCvGxGvFFU7nTa4WZN1922v1773tZ/g6aaqq66qKKkzIMEuIiiZE/vcfGZb8X7nA3uRw/EYZMEZxlCEBAS1xex93jh4JY+CHr9/wB9ngMvsyi2nI9Cw0ZJDwxtktbRbZbS5tvta2+lltXqfzlaDTWC6qTHqG0teCQ5rafRr2Nd9Kv1LLrLLLGbLNno/wCC9X1DYdzcbIbd6IuaG212VFxZuZdVZi2NFrG2Oqdsu+n6b0zKbRUGh26IeZG0+oG+l61T27vT9RntsY+u6r/g1rfCOXPFGXBx8Gtf4Ub/AObFZ8T5XmZ8xKccPvYOPlsmXF+rH3nDhjnhkxeuUeP28mTDn9rN+rn7Tm5tVduZXufYGvd6bH11brH7Xvr9nuq+23+t+re+z1P5r/rm1V0G1nVOlYPrZGPV1cP9P7VR"
     $bData &= "syKXVmyp7L8X1dj2OsrrfXZ6lf6C3+b/ANJVxeoW9KzasoUi70a7qtoe5j4yN3r21ZTGb8XK/Sfo76K/Yh4n1npwr+jvr6cAOiuvNLRc79Iy4vsY23dW/bbVfZ6z7a/0d/8AN/Z6K/5velD4kQI4cU44owyVGBx8PHkGWUZcOSXHGXu8H8v1bynM4AJSGXBHB6pcOKPywh7kuD+blkj/ADf6HE3mDE/ZDesDMtdjC84tjBjM9Qv9L7a23G3Zfpei7F32frD/AFt/6JXLcDOoyOpY/wDP/slzGX2VVlznm5zK8JlOMHOe193qfpv577P6Vv6PI/R1Lm6Mx/7CHRS0Cn7R9q9bXfv+znp/p7Po+nsd6q2LetvzM7qGTfjVuxurtqbnYBsdsc6kM9PIpyQxt2Pay2v1av0eRWz6H6VRz5b4nDi+eV8YFnHL0xlj4Zfo+qUPec6WPkrHFCIrhOgl81Sv/B+RvNxst+U/DoLb72Yjcz0WMaL9x"
     $bData &= "LBb019PqPazOxGP9fJ2etZ6Hp+lhetdsVezIc2m57Cd1e9rPVZ6bg4ez9Zxt9voPqu3Mtp9T/B/4L+Zrosbikn9DFYA9Gtt7q3VPadwvqyG0WVet9Jv/J1df+hrpu/TW2r7zl3X3ZAD3ZO0WAlzpa2qvEa11lrnW2P9Civ1bn++27fb+j/m2HBh5wZCMnHwe3QlP241P9H0455OJqc1HlOAGEYiXuWYw45cUP0vVOMOFuZht6e54oy341T8jLx6RXZW1pOG9uE5/UvVx7v2jl5dn63bjXemz7F+ip/RenXTXvcBiWtrraxr8c2FjQBWHtuy+n3fZ6/o049z+nfa6sdv6PH+0ejV+iS9d7i91wsssvj7S9mVfjNv2gVsdn4mMHVZV2xv6W+q3B9X/jf0ihmOc/GvfZG417QGjYxrGNFVNFFUu9Giipvp1V7v+NstvsttfW5bk88JmU4cHCJcc+L+d020ZOd5jDkxiEJ8dmHBDg/muGUfVx"
     $bData &= "f3fRwv/9Lnsv8Abn2izd6H0j4oDv2z/wAB+K5JJZA/6l9Xth/6df4Hy/4H9V6o/tf/AIH8VE/tbv6MfNcuknD/AKmyD/07enH7W7ej+Kl/lnt6K5ZJTY9/0PoiX/p49Y39s/8AA/ijj9uRp6H4rjEl0Xwz/qn/AFJint/4L+r0uX+1Nd/o/KVm2fat2uyfKVmJLosO3/gv/BeW+KfOfm/6ru69f2/ts8plWq/2p29P8VzySGT/ANOnDy/9T+r1TP2xpHox80Zn7cnT0PnK49JV5f8Apw1J/wDUfq9oP2/P/af8VG/9t+jZ6noentO6JmPJcakoZ/Kf5/Y7sY+YfzG483//2f/tFEBQaG90b3Nob3AgMy4wADhCSU0EBAAAAAAABxwCAAACAAIAOEJJTQQlAAAAAAAQRgzyiSa4VtqwnAGhsKeQdzhCSU0D7QAAAAAAEABkBb4AAAAAAQACAGSBA3A4QklNBCYAWBgAAA4CKAIgP4AAqgA"
     $bData &= "CZA0COAQAFHgCPEoZBjweAR4D8wIeCasCCgAIAQNqCgIeAQOGNCcQAhoKAOoCEAACBQI59QIMSAAvZmZVABlsAAUGAhEBBBGhKJmaAAURMgAZAQDWWgAFBRE1AhEtBxECUwL4AA8AAHAAAP85EgAD6AEfTxuBPQQIh4I9gXWAewJAAACBAV2Eoh6CDYGig48agQcDWj+AAgaBBIQBTIADuwGAAQUARgB1AG79gNBvgAaAJoACCwGJCYEYH4EcihARGgRNgRNudWwKbMABAsAABmJvdYBuZHNPYmpjQANhxA1SY3QxQAMCLFSAb3AgbG9uZ8ADIYIATGVmdMkDQnSMb23EA4IhUmdoxQcBgSYGc2xpY2VzUFZsTHOADwHKGQUrwgaABRLAAAcCA0lEgcgWB2dyb3VwigQABm9yaWdpbmWIbnVtwAwMRVNBFwZPwgTAAw1hdXRvAEdlbmVyYXRlQQG4AFR5cGUECwoHAwtBBIAKAEltZyAH"
     $bData &= "wAH/P9s/A3VybFR4RVhUgBoEVwFfSwRNCHNnZUoEBmFsdAhUYWfKBA5jZWwAbFRleHRJc0iAVE1MYm9vbAEUBgiFBQoLCWhvcnpQQWxpZ0VKDwM/SAOFBcARB2RlZmF1BGx0QAEJdmVydA3QBVbFAssFC2JnQ1BvbG9yiCsR4wtCBkcGA0AGAE5vbmUB4AAJdG9wT3V0ZHNlCUcKbABJrgIMWGJvdAAq7gILQDxolnTMAuJuEQENAAEkj1YUogEBV3yiAwzhAQ7OiKAAgSWgmgA0wJ/gAAJOQAIObAAYAAEA/9j/4AAQSkYASUYAAQIBAEgBIAAA/+0ADEFkAG9iZV9DTQACkP/uAA6iAQBkIQgAAf/bAIQADAgACAgJCAwJCQwAEQsKCxEVDwwADA8VGBMTFRPwExgRDAIAxACDAa0AAAENCwsNDg0QAA4OEBQODg4U6YEADhRDBhEkB8QAEwgg/8AAEQjAGYADAAEiAAIRAQMRAAH/3"
     $bData &= "QAEAAj/xMQBQIsBBQECAOAcBUEAA4AbBAUGBwhgCQoLAQCMA+DBAwGFAxAAAQQBAwIABAIFBwYIBQMEDDOAAxEDBCESADEFQVFhEyJxAIEyBhSRobFCACMkFVLBYjM0AHKC0UMHJZJTAPDh8WNzNRaiALKDJkSTVGRFAMKjdDYX0lXiAGXys4TD03XjAPNGJ5SkhbSVAMTU5PSltcXVAOX1VmZ2hpamALbG1ub2N0dXAGd3h5ent8fXAOf3EQACAgEChAQEYhIHBgU1QhAQITESBCAQcSITIAUygZEUIRDBUgDR8DMkYuFyggCSQ1MVY3M08QQlBgEQByY1wtIBgBCjF2RFVTZ0LGXiRhA3ECdHEP/aCAAMA2IOEQA/AADWyupW4/qWWwCQa62HVzjAHQCVA/XDp7CQ7ADnBw5BZZ/6SQBl/W97G4oIcwCE3ETJ/wBHbgDf+ksEYeGAPwBXr4H5o8Fz+AB5aE8fuZJ5PQBSkAMcqrh/vQ"
     $bData &= "DE7ufJOOT24QAMfpjEkzjd8QB/de0H106X/wAAc8/5lv8A6QAkRv116SOc/wgA+hagASXEDEwAP/uPX/mtUhgAmF/3Gq/zWokA5PB+/n/x4f8AAHjCcmY/o4sA/FP/AHz3TPoA79GHPUBPmy0A/wDSKsV/XroACPpdRaP7F38A6QXn4xcHvj0AX+YFMY3ThzgA9P8A22CmS5EA5c/p8x/4ZD8A7xhmch3EPpEAfRP+fv1aLYMA1IA+Pp2/+kkAVMr67dBcP0UA1OT5V2f+klwAZXj9L74tJ/4Atj+5EtwemFkAubi0j4Vj+5QAQ5Pl4y+fmf8AAB4f+q2hzeIA44SEu36Hpk4A6Prj07cf190AH9Sz/wBJo7MA65dIET1A+csCLAAKa41uHglxAP1ev/MH9yKOAJ+B/wBx6/8AADR/ct74fy8YAI4o8Uv9qeL/AACjwvLz5TliAE3PmfpOH/ePAGA+uvRh/wBrAZASf+k0/wDz20Ci/wD"
     $bData &= "c8/5wGE0Acd9gwB/2mrMg/ZCY4WBQAVq/AM1q1oymNow+AMLH9x5U/wCUAOa/8Mh/6reyAP8Anv0f/ucfAvOREkon669I/wAAuef8y3/0mhDjvseDoAiq/wAANaonCwf+49YAPg0J4nk7Q+wAKRyHK/5zmv8AAMMh/wCq3s8A/nn0k8Z58/YAWf8ApJWMvqkAbZ0266i8vY8AqLq7KzIII0cANcFwTsLCDXEAGPXIBg7Qt/oAOaz9WLvSB2QA3BomI+ju/wAAp7lJjnIy4ZQAY6xMgYj91j4AZ5PHjxxyYskAmNZIY5RyyjIAEo5OL93g/ccA/9DP+tjBZjgAa/Qeq4j4iq0BMAuksMWVQPcOAAdx4Lpeo1Y9AP69eSGmkn37AN0ARru3SNm3APeWazpfQ3nZAFlrnESGsyHkAOn8ltyxMOaEAHHwSE/TKRuAABIer/Cg9Nn5ACyyy8cDjqcYAAqcpQlcf7scAI5nqVeLfvH9AOn9Sr95"
     $bData &= "nzIWAInpvQ2sLy6AANO1x9ezQgboAP53933KZ6N0QJHZ3if01rApVADzmxdRkH+BHwD9WMY5HmDt7ACfLJP/ANVOZwCrT4s+8f3qQwAiscPYP7QV9gD0roz2B7CXNAD9FzbrSD8CLgBMeldJH5rz4wAW2/8ApVL3cAD/AKz/ABYf+gCxI+G80dhi/wAAHyf+qWqzLQCD/CM/zgrdHQBCg+x9rADpJQDDRAtwuj1jcwCa9o4k22jU8QDNqCcHp7jO2wAYwcuNtg/6qwAToYseaQjH3AC5Gh6Y/wDfogBfBuZmCD7I0wBbyT/9Utj1KgBhdutZyYhzfAB+KicmvtY3/ADgqBrwac11bgCt9lLv5siyyAAf2mWe5alOFwBGsA/V3jxPrQB//pVddj+DcwAYMcAPbkOEegCE5er/AMbeFwCc5eHLZsmPJwC4TCRjcIwMNAD93iyQQG+v/QAjf84KJuq5LwBp/tD+9aLejQDR3a+if+37vwD0s"
     $bData &= "ifsPo0a0gBH/X7v/SyX3AC5gdIf40v+8QCn945Yf57/AAATH/6ucn1afABb/nD+9L1a+4A9n+cFsfsDsC0Aoj/2/d/6WT8A7B6J2ocf+vUBsAAvumftD/GlAdA/o83yw/z3+AGgDvVzivtr2O8Ae3g/nDw+K2MApDax9WrmsBcAN3XQR/Z/78kAreifV9hDL2MAKy/6LLMmxpcAf1WvyG7lbvoAKcbplmNSG00AVdbgxgOgnXsAlHHy84zMpGMA6YyjUTxfN/gAMWPPzOKeOOMAxjJcskJ8WSMAGAqHFHTgnk8A33//0Qgk9XwALQFp6hiA+YMAkUNP/RVfqj4A/wC1349t7rwAHJuFXo2i4MIA62zHZ6WO2xkA6eR6dvo4tH4Ais/wdOytK20ANWfXktaHOxsAJqyGsJ2hxpsAK8j0y/bZs38Ap7d/pvUcTNsAsXqVfU2Na+0ArttuNW5zWn0AcWturZbX+moAdrMl/o3t99YAsnDkhH"
     $bData &= "F7cjUAxZbl83yV+lwAPzRer5rk888AmPexwEuDluEAgSIX7/FPhjgA5ZP5vJH5+N0Ajp+Lk1/WHoMAlZDnluc61tcAVdSMeylmKywAwXYX2WsupqwARrLv1dlfp/oAN932ir1vUWAAOx6W9CblY+QAG+io141rbKQAV2AOr9bGyq8AZda22m+up/4Ait9O6u76fsUAaxerWYf7KGMAY9VY6LZc/GkAe5wezIh1tOQADY39LvG/7XQA+l/4S9NUbrAAHpw6ZjtFGIwAcbSHO9ax9mwA+z1PtyPSxv0AHj4/6KiiqikA/wALbb6tyswA8uAg6iWvEPkAuLj9PytPl+QAfiEZwAxSxjgARjkbxe2cUJ4ASUozjxT9XtwA4Qh/XdDNw8oAZl9WflZHrfYAG8DIyRW0PusAbn+ljtZS010AFPqbX2ZFn+AAGVfzF77Niq4ARj+ljY2Wy3cA4+X6rW7m7bIAu2lzWXUW7HMA67GbbK7aMisA/na"
     $bData &= "/52jHepUA/WH35PUbbKEAv2fqpa/JxQ8AMiyv9LVkY2UAmsvpsryfUu8AfRfT6dv2W2oAurVe/KN9WPgA4YK8bEa8UVQA7nTa4WZN190Atr9e+97Wf4MAppqqrrqooqQAzIMEuIiiZE8A73HxmW/F+5wADe5HD8RhkwQAZxlCEBAS1xcAsfd44eCWPggAev3/AH2eAy8Asyi2nI9Cw0YASQ8MbZLW0W0AltLm2+1rb6UAltXqfzlaDTUAguqkx6htLXgAJDmtp9GvY10A9Kv1LLrLLLEAmyzZ6P8AgvUAfUNh3Nxsht0A6IuaG212VFwAWbmXVWYtjRYAsbY6p2y76foAb0zKbRUGh24AiHmRtPqBvpcArVPbu9P1Ge0AsY+u6r/g1rcAwjlzxRlwcfAAa1/hRv8A5sUAZ8T5XmZ8xKcAHD72Dj5bJlwAX6sfecOGOeEAkxeuUeP28mQAw5/azfq5+04Abm1V25le59gAGvd6bH11brEA"
     $bData &= "+176/Z7qvtsAf636t77PU/kAr/rm1V0G1nUATpWD62Rj1dUAw/0/tVGzIpcAVmyp7L8X1dgA9jrK6312epUQ/oLf5rBxVcXqABb0rNqyhSLvAEa7qtoe5j4yADd69tWUxm/FAMr9J+jvor9iAB4n1npwr+jvAK+nADorrzS0AFzv0jLi+xjbAHdW/bbVfZ6zAO2v9Hf/ADf2AHor/m96UPiRAAI4cU44owyVABgcfDi3ADx5BllGXDklAMcZe7wfy/VvACnM4AJSGXBHAAeqXDij8sIeAOS4P5uWSP8AADf6HE3mDE/ZAA3rAzLXYwvOAC2MGMz1C/0vALa23G3ZfpeiAOxd9n6w/wBbAH/olctwM6jIAOpY/wDP/slzABl9lVZc55ucAMrwmU4wc57XAN3qfpv577P6AFb+jyP0dS5uAIzH/sIdFLQKAH7R9q9bXfv+AM56f6ez6Pp7AB3qrYt62/MzALqGTfjVuxurALam52AbHbHOA"
     $bData &= "KQz08inJDG3AGPay2v1av0eAEVs+h+lUc+WAPicOL55XxgWAHHL0xlj4ZfoAPqlD3nOlj5KAMcUIiuE6CXzAFSv/B+RvNxsALflPw6C2+9mACNzPRYxov3EALBb019PqPazADsRj/XydnrWAHoen6WF612xAFezIc2m57CdANXvaz1Wem4OAB7P1nG32+g+AKu3Mtp9T/B/AOC/ma6LG4pJAP0MVgD0a23uAK3VPadwvqyGANFlXrfSb/ydAF1/6Gum79NbAGr7zl3X3ZADAN2TtFgJc6WtAKq8RrXWWudbAGP9Civ1bn++ANu32/o/5thwAGHnBkIycfB7AHQlP241P9H0AOOeTianNR5TAIAYRiJe5ZjDAI5cUP0vVOMOABbmYbenueKMALfjVPyMvHpFAHZW1pOG9uE5AP1L1ce79o5eAF2frduNd6bPALF+ip/RenXTAF73AYlra62sAGvxzYWNAFYeANuy+n3fZ6/oANOPc/p32u"
     $bData &= "rHAG/o8f7R6NX6ACS9d7i91wssALL4+0vZlX4zAG/aBWx2fiYwAHVZV2xv6W+qANwfV/439IoZAI5z8a99kbjXALQGjYxrGNFVADRRVLvRooqbAOnVXu/42y2+AMttfW5bk88JAJlOHBwiXHPiAP53TbRk53mMADkxiEJ8dmHBAA4P5rhlH1cXAPd9HC//0ueyAP8Abn2izd6HANI+KA79s/8AAAH4rkklkD/qAF9Xth/6df4HAMv+B/VeqP7XAP8AgfxUT+1uAP6MfNcuknD/AACpsg/9O3pxAPtbt6P4qX+WAHt6K5ZJTY9/AND6Il/6ePWNAcESA/ijj9uRpwCh+K4xJdF8MwD+qf8AUmKe3wD4L+r0uX+1NQDf6PylZtn2rQDa7J8pWYkuiwIOQAb8F5b4p84Afm/6ru69f28A7bPKZVqv9qcAb0/xXPJIZP8AANOnDy/9T+oA9Uz9saR6MfMARmftydPQ+coA49JV5f8Apw0ASf8"
     $bData &= "A1H6vaD8Ab8/9p/xUb/0At+jZ6noentMAuiZjyXGpKGcA8p/n9juxj5gAfzG483//2ThAQklNBCEAAQBVCQABAQEAAQ8AQQAAZABvAGIAZQCgIABQAGjAAnTAACpzQgJwQAgTXAggACA3AC4AMEAKAQAFQhgGgAIAAAcACAGBBAEA/+ESSGgAdHRwOi8vbnMALmFkb2JlLmMAb20veGFwLzEALjAvADw/eHAAYWNrZXQgYmUAZ2luPSfvu78AJyBpZD0nVzUATTBNcENlaGkASHpyZVN6TlQAY3prYzlkJz9QPgo8P0IJLcAILQBmaWx0ZXJzIABlc2M9IkNSIgnBA3g6IANtZXRhACB4bWxuczp4ND0nAgY6YAHBAi8nAiBCBHRrPSdYTQBQIHRvb2xraQB0IDIuOC4yLQAzMywgZnJhbQBld29yayAxLgQ1JyAOcmRmOlJMREYECqABPScEG3cAd3cudzMub3IAZy8xOTk5LzAgMi8y"
     $bData &= "Mi0gBC1zAHludGF4LW5zZiPgDQIRaVjGBuohaUZYwiEADQogPEAHOgJEwBlyaXB0aW8AbiBhYm91dD0AJ3V1aWQ6NDIANGM0YzgzLTAANzc4LTExZTcALWFmNDYtOWEAYzA2OThlM2IgOGQnCiDlHmFwHE1NMw4AJEIObW0vEaAOICA8AAJNTToARG9jdW1lbnSISUQ+IyZkb2PADgBwaG90b3NobwBwOjE4MmVmNYA5ZC0zZWZkARAANS05Zjg3LWIAZWUxZmQzNGJwNmFmPOE7iwnAGi/h7Bo+Cgo8YgLAKgAs6i+GNj7gFyAfAD8EOgT/nwwfDD4EnwyfDJ8Mfwg/BP89BD8Zfww+BE8GLwMfAR8B/x8BGAFPBu8CHwEfAR8BGAH/TwbvAh8BHwEfARgBTwbvAv8fAR8BHwEYAU8G7wIfAR8B/x8BGAFPBu8CHwEfAR8BGAH/TwbvAh8BHwEfARgBTwbvAv8fAR8BHwEYAU8G7wIfA"
     $bData &= "R8B/x8BGAFPBu8CHwEfAR8BGAH/TwbvAh8BHwEfARgBTwbvAv8fAR8BHwEYAU8G7wIfAR8B/x8BGAFPBu8CHwEfAR8BGAH/TwbvAh8BHwEfARgBTwbvAv8fAR8BHwEYAU8G7wIfAR8B/x8BGAFPBu8CHwEfAR8BGAH/TwbvAh8BHwEfARgBTwbvAg8fAR8BHwETAa26+iABAAoCUFxA/8k/mFcQ/3+XYCc/GT8ZYBA/GT8IPwT8ICDfJb8IPgSfDJ8Mnwz/fwg/BD0EPxl/DD4EnwxTCAAKPD94cGFjawBldCBlbmQ9JwB3Jz8+/+4ADgBBZG9iZQBkQAAAAAAB/9sAhKwAAR8AJQQCBwADBgDByAcCAgECAicDPwEBIgT/wAARCABMAAC7AwERAAIRAAEDEQH/3QAEQAAY/8QBosAUBhgCAwHAAEQABwgGAAUECQMKAgEAcgvAAgYD4A+mA0ADAwAHAggBCQAKCwAQAAIBAwQBAwIDIR"
     $bData &= "ICBgl1AQIAAwQRBRIGIQcAEyIACDEUQTIAIxUJUUIWYSQAMxdScYEYYpEAJUOhsfAmNHIAChnB0TUn4VMANoLxkqJEVHMARUY3R2MoVVYAVxqywtLi8mQAg3SThGWjs8MA0+MpOGbzdSoAOTpISUpYWVoAZ2hpanZ3eHkAeoWGh4iJipQAlZaXmJmapKUApqeoqaq0tbYAt7i5usTFxscAyMnK1NXW19gA2drk5ebn6OkA6vT19vf4+foBwB8BAwIEBAMFgAQEBAYGBW1AFgARBCESBTEGAAAiE0FRBzJhFABxCEKBI5EVUgChYhYzCbEkwQDRQ3LwF+GCNAAlklMYY0TxogCyJjUZVDZFZIAnCnODk0Z08QqAVWV1VjeEhQILAPMpGpSktMTUAOT0laW1xdXlAPUoR1dmOHaGAJamtsbW5vZnAHeHl6e3x9fnAPdIWGh4iJioALjI2Oj4OUlZAGl5iZmpucnZAOn5KjpKWmp6AIqaqrr"
     $bData &= "K2ur6EP/aAAzgGQIRAwARAD8Atb3R3gDdk0WcqYYs0gClPBDF41MSEgA9NgeWsbj/AAB59/OTzR7qewCDZ7tcxRbrSACRVoCo4U67twCxe1fJdztkEgBJthMrMa5PTADRfIrsZyFGdQB+lj/k6C/0+gDzwT7CUvvH7gAhApu4A/0o/wAAP0Yv7P8AJQCpNdrNf9MengCg+QXYgQBs9ABXNif20tz/AADIX4HtJJ7w+wCKFKjel/3kfwCfotm9o+TgxAD+6mp9p6dYPgBCb2LqJNwE/QAJtAp/NzazHwDp7LpfeD3GZgCrbwxHyUf5TwBFc3tRymoOnQCwV/0x/wA3SgAqb5EbsZ1iTADk2q97fbLYcQDJJ+hHtHc+8AD7iaNS7w4A/gCK/wDQXRFL7QBnKwJ/3XLX7QBv83Sto/kHuwBHjH8aZnN+DQA4NvT/AGtP0ABfj2RXHvL7lgADmPemr81X/AD9EF37XcrqSAA7fj5E/wCbpQDW"
     $bData &= "O783SE8suQBdQFjZack82wDpY2/P+HsPSwDvX7pq5H76yQT+iKAPQWv/AGwAuWwDosT+0/4AboQsN39n5WQAU1k5v9CKKS0BQBFbSPYbv/e/AN3FDad/jH5LAP5+gJuPt7y+AKG02b/z6GjAAHbW5agoTPqVAIcXhcH8ckf4AFvYA3P7wPu2AIWP9ZhX/SL/AACfqPt25G2qADDFLQhR8+hdAKfe+4MljtdIAPHJUgchwUQLAG4sbAmx/wAfAGDX+8r7v2lwAGObmikR/wCFAIJ/w/5Ooo37AJXs40cJAQegAId3bs7BhimZACooIgqueNbNAKhcabF7D6f1APY02P7zHubIAMo/rQ5yOKIOALEL3W226sbaAOntWKkA9EL7AEe3u0sa1QY8AKU0IUvpAQG9AL6c3PN/eQ/KAH79e4d4Ii/MAAx4fgXri994AL9xOc+X3vDZAG7MlCfwjovuADu9e25ZG/3PAMPLn+woH+8MAG/HvMD2m"
     $bData &= "9xeAHjd7uJZt2ZlACw8l/z9c4NyAPvBe6MbS6OYANglT+FP8/QjAOI7g7RdA8+fAIiSeNCC1rf0ANdz9PfU/wBqACHeL+K3NzMWAK09OgBuP3ivAHWjq0fMzU+YAEr/AC6XVF2zANkFVvmEJI4/AGx/tybn8D3nAG8p8rRyxx+NAB1OOgxJ95D3gHagLzIxB9VAHgAoF7d37CNJywACbL/ulbajxwD1+nub9o5L2wAdYybY9IJfvADPu/Cxj/rICQCn8A6mQ9s77AD6jl0459US/QB/2/sdWvI+ygBC1tD+3pEv3gBj3fYljzKuPQBQf5+uUnce8gCH/OZhQTf/AAB1A/T8DST7PgCHkbYBTVafzwCvH7y3vBJURQDMFT/pB/LPUQAl7x3PTxm+agBNR4BFNcXP0wDoT9Pa1eSdhACR/iY0/af83QAstfvE+7pVqwDMDmX/AEiU/wAAj3TbN3dvcwDK5kgE3UeICwDf9IIvzcezKAD5D5"
     $bData &= "fxWx/n1gDH3ifd4kAcygDaQeGgf5+oAwC6uwWLMMwllAASLwr9Qf6E+wBR/UPlsUBsTgB+Z6M7f7wvvAAS0Ycx1UDzQQBOm2bvbft9AwAwAxJNvAp/3gB+n49qk9vuXAD/AJQv5npYPgDxnu6w7eYBTwD0g/z9Rn7y3wDKpvmowT9T4wBb8/19X+Ht8QDt/wAtkj/ETQA+3pUn3hvdsCCgf1iXUSIxVdcA/s1Xbn94rf0A7xp/2bL+A6cAxr4/4X/ot18A2VvLb7by+v8AAK+Xm9/Yd8EAtfH8L6aLw/0A4fR0pjwPB8QA0cf4+/V8WrMAXqYPA3T93fUAf7yvPqv6sfsA716+795fXfQA31FdPH6f9HQAf2fhdumnX/8A0DD969tUWzIAHe+6KjDZmekAtq7Yyu4qtI4AllIkp8Li6vIAU0avospeOlIAL/i/v5ubvYUA+beb7Pa7aVIAGS7u4bdfEYAAYNI6oDp9KuMA7evoojuY+Vs"
     $bData &= "AlK83S6ieaG0ALWa4bw1JGmMARnI1cK0U/Z0Aa1vavyz+VHYAdurMw7N3ZuEAxtRSiHJzriMAsPevXmBw1FkAW74vFYeg2ZkAPHJlGp6IIZoAWvNRIZWaxAsAAdXts9j/ALsAt7Q7Fsm1cycAIlrum7zQI0kANcwx3Ll9OpgAjXQIKnGkAUoACnHrlPuHu14A/Puvve87py4A843G27TFOwgA4reV7dAmoqoADoqWNBnVU1oAmvQTR7/+eE0Aye297C1/r8gADtXn62/VmBwAD26bL7q6cfYgf2qvy23wGiVlAPvIN8fuhuP5AN/N/m6mRdgfAD2Q2i7i3wv4ALr8gu0wP9a/APGPbLWX3U2HAHeze1H/AKlsAB/n6bMf3jFxAP6524f9l0v+AG6cYewP5gKcAMfde+ULDkj5ABHagNv8ScyPAOvtNJY/dOOHAPZXaiB/0jIOAJlovvD+fuZfEGf+X6WwWVOg7AAv5hSXeLvHfAChsOV+"
     $bData &= "RvawNgD/AF/4wT7Ye4Afujth/ZLaMFMEpVzQBivbe/8AAFJb3GvSf+e2AF/zdOtP2V/MAHVF4O/OwIvpAPT5IdsAf4/8AL6PtDLtn3PTIP2nsbtBYApVvwBI3g996d/uDQDh/wCoyT/N0wD1J2n/ADNv9wBHyN7GhtYC3wAm+2U4/H0zPACfaKXbPuZgdwB7DbMf+pTbdABZNae9Jr4vOwBdH7buQ/5OlAD0faf81O6/bQDye7Kiv9NPygBu3k/6FzI9lgDPtH3JDXxfuwDuyt/1KLU/5QDokubL3VoRNwA13Df9RDn/ACAnS1x3Z4AOZlAAKT5adowXHIUA+f8/Y9xICLHj05o8eyC72P7iC5uPu4bC3/UltT/l6DN3ac9Cv1O+St9srHqbkN4fzd5oL1fyr7KqYiCdL/K3t6UH/YNlyB7TQ2/3DIHAi+7rsav8tmtf8/QC3va7yaNzuoE8dMhjq/w9Ajurdn8yiJZP7wd976yC+oyCX"
     $bData &= "5KdrVOr6k3Vsxc39jraE+5u5U7d7G7TEfKm1W6/5esSvcbbPYi38V+cvbOwvTmuuyilr6/F0HdPvb58p/wH7i3ulm58fyD7UJ1c/wCpzHucOTdq9hbh0PLvtjt9s9cFbKGP/B1jncW33JGY+P7BbKT89otv8p6e4N/fzE0UNF3X2Gl+Rb5C9sr/AL1lh+feTnL+yWkaJ+59vigTy0qE/wAA6KpbH7iLMRJ93vYD/wBSi1/z9T17N/mQqbJ3r2YPoBp+Q/btv9e4y3PuTbO05wjA+m3SVB8pGH+AdMHavuFDj93fl7/uUWn+fqRH2R/Mmc3/ANO/ZgJtyfkT25c2v9W/ix9n8Ke5C08PmW4X/m+4/wAnSeTavuBg1/4HTl4n/pT2n+frk/YP8yQ3Dd8djcjm/wAje2wef/It7XqPdP8ADzbdKP8Anofqi7d9wQU0/dx5f/7k1p/n6wNvr+Y0tmPeu/r/AFH/ADkd2ySPz9BluPb6p7r4K8"
     $bData &= "4XOr/npk6eWz+4War/AMDlsVP+lNa/5+sTb+/mMvbV3tv4qvA1fI3tni/6bBsv9fb6j3dxTnS6/wCyqT/N1ddv+4cPh+7lsWfTZrX/AD9RpeyP5isXrbvTsA/8F+RXbTEW4+gyx93De8A4c7Xn/ZVJ0+m0/cQftH3dNh/PZ7Uf5eoTdr/zErlf9N/ZTcc/85C9t/8AEZj34S+8X4edr2v/AD0yf5ulq7J9xbTQfd85fC/9Ki0/z9dt3f8AP7ARHL1ncHYYjoWR5Klu9e08yy6nCq5w+TzE2MyCITcxyoUYcEG/vb7j7y2Eb3rc63hWPNDcSMDT1UihHT9tyV9xnmGeLY4vYLYo3uToDJtltEy1xVZFOpD6EZ62J/g/3fvPvfpCHMdoY+Ub62nuOs2VuTIUEMlPR5mqocLgc5S5gUyDxwTVeO3BCJEH+7FJtz7zC9nebLznzku13jdIqbgkrwyMuFdkCnUB5VDCvzFeuL/3zfYvZPu/e+G"
     $bData &= "7cncoXWrlu4tIr23SQhpIo53lTwi3EhTExUnyIHl0DHgw394bfa5P/srzx3vL/nf9GGrV+n6fj2x9Jb/V00P/AMl+nnx+mr0IfF3L90f28H/TvK8Bw/efX//RX/y83LVt1n3vHGWUP1Hv2K5Ia6nZ2YBt9TyCffz57PLK3uxyhkhTu9j/ANpEfX0Zb3ssC+z/ADm5SpGzX5/7Npf8HWsr1ruFc1uTd9VTPFTImP25SsObNJTUkaOw4F7kc++qHvkurcNh76D6df8Ajg+XXJH2LhD7dvx0E0uG8v6Z6GYVsoUj+Iw3uAeCbH3BRjYDD9v5/wCbqdGt1rmDP2f7PWVK8RrZshASSfobfT+vIPtg2z1BRv8AD/m6aaFCaNFn8h/l6zDJMbf7kIPUf9cAc8cnj2y1s1PM/t/zdMNbpkin8v8AP1MjysEYC/xCnueDZxc/7z7SvYsakKafYf8AN0meFSRUCv2j/P05xZ+nj0g1UNvp+teeB/jz"
     $bData &= "7TvZSkaVQ0+w9I5bWPuqRX7R070+5qJF1axIBzZGB1NxwPaF9tJIDQn/AAdFVxZihIcdP+P3glxoxdbpH0YaCD+b/q/PtBdbVDQ6mjr/AKY/9A9B+5sZGrSN6f6Uf5+hAxO95kZfFicg/wCkWBS/Jt9bmw9ha/2KKStLiNf2n/J0Edz2x9JrA5/LoZMNueoyEBibDVxJWy+qO97W+gNjf2Bb7ZxbS+It4vH0PUW75tj6JFeE0Nege7PmrY4JX/guQj/Xy4it/X8OfY85S0tIi/WITj1/zdc/vvDbKbWyuJ/hFDxr0CuFlrZLE4+qW5J/s2959+y/L8lxFDL8QNDw6507mGQsRdCv2H/N0IVO9WIwft5QSQADpvb8/n8e87+XdkWGKKsXQVmnnqR4pp60P+bpwFU6AB0kU2vyq2/1vr7ka2sUUAac9I/HmIoHB/1fZ1Ekr6hmbTPGi2FtS3P1/JuLezNLUcNGOlMXiyHukOr7aD8sHptlr"
     $bData &= "JVILVsKE/UlbA24sQTx7VLb1Boh/Z/s9GEVuxIIkFT8+H/Gem6WvYSHXkINIb9IUgf7z7UiFRTtx/q+fStLZmFPEz65P+TqBLkgxslfAqj6+oG/1/x/N/ahYRnGfy/z9PJbSioNT+RH+TqKch+fuI3sLekgf73ce1CwpTI6sIZFaua/n/m64HJyEExlgSLBja1/960+7i2U+XShDKhFWoOkdvmvqF2nlZXqEJSJHsVI/RIrW+n0NvZZvcCrtN+NH+hny/2ehfyRrPNexnxceOuCfmPl1bp/K43tU7t6F7B3CuUo6A5DurNoaZhdh9lsDrXHeQEECzik/p9fcx/dghV/beYmAn/dnPmnDsh+Y6xG/vOIpD94+0ZbkL/yG7LFTn9a8/on/D1197U/3g/4+ih/7K48n0/3Z/oxtq/V+q3sdeEfq/8Ac1P+Vi/7VuoW+mh/dH/JCl/6d7T8v3l1/9Lv5eVUjdfd2gs1PGvVW+vRxbnaWX4DG/"
     $bData &= "J98CdqttPuryiWip/u2sv+0iPr6Xd7th/rM87sGqf3LuFfn/isvWuTtvbUO0937qxvkCCbDbVyAHFia7HxTMTb/g3vqJ71oWv9jz/oC/8AHB1x29gIte28w44XLf8AH26XyijUFnq4xe5s31uf96t7hTwmYfF/I9T6bdQaeF/MdZIzjLBi0EzfXm5AvfgH3opIooXb7Mjps2ascRLT1weuQmoybJDHpH9B+r8aTc+2GEla1P7T1f8Ad8bYKfyHWeCSjBB/hkcw4A9IH6f8SeLe/ESnizH82/ydJJNtiqaKoP2L/l6mipoBJc4uJbWsLC1+R/xHtpg9MVp/pm6aO1qwyB9ulenCPJU0WkriIwF4vxyb/j1cce2ngLHKH9r9JG2upNCPyCdPNPn6o6QlG6Ac+lhxpHtHNtxNSiU/I9I5NtXIYV/Mf5+lJj91VsJW8UiEWtZlv/X8t+PZNc7RIagE/sPRRd7JHIKGMftHQuba3/UQSQ65WUa"
     $bData &= "gTdx+n+n19g/ddhvHR6Bv2dADeuUxMjlIh0JG/K0bh2XV5ShJeWkh1VGhl1LxcOVBvp9hbl394bdv0FncM4V2ouD1gH96rk+5tuRt53CKIhoIyxI/h9egOwtJWpTJJPNImpQwDWFr/wCw4+nvtr7F8gzWfLW13V1CQ7xq2fmAeuKu6380kzIpcmvqeplZk5YfTHUOQPrpCW4P9Cf98PeUdptSxqoVQB9g6SQQXU4PiB6fa3+TphnzMjMwMhPp+rEG5/4n2exWBAAC46XR7eR5HV+fTRLkufVVG5+g+tuP9b2rW09QadL0sBQERj+fTZLPTSuvkq1+v6T+OPrz9Le3PpfVf8HRnDasBQAAHzoesEkmLYhGmhfmxJBBJv8AT8n24LZCPgH7R0pW3lRgRK2n5A/5usDy4xb+KCntcD0gm55v+fbq2mK6QD+XV2STyZiftPXEzxrwlONNvoCAOOfb3g6ado/l02Ymb8RB/M9cPOXUi5iABNuP"
     $bData &= "974+gHu/hGg9evCDS2RUdJTexSfbGUh8y+uOKMD+peQL+Bbm/sp32P8A3T3/APzTPQt5KhUc07KcV8dfI+o6ta/lk7fw23+j9+YqfIU8H2vcmbYBubibYvXVY30Fv1zsP9ce5m+6rCre2Ep8LUf3pP5gfgh9esT/AO8rgkl+8XaEXGkDlyzxpZj/AG136dR/Dtn+Pf8AF1ov+ysvJ9D+n/Rva/8Axr2Mvo9v+s/t0/5WT/tV6i7xN7/dX/JPl/5UCn/dR6//083fVWm6qjeG0snQQLj9x7er9v1siuwlFHmMbU4+peP8eQR1JI/x98FL+/m23mq03WOBBc2k8UqAitWjZXWufUdfU1tPKdtvXI95sss0htb61ngcggELMjRtTByFbrX83h8a/lrid65l8Fs1N3Yz7elxNFuPBbu69xS5PEY5pDiTU43eeWSsoq2mppBE+mPS5S9yLe+hae/vsRzrs2y3fOe7XFlvUUIV4vp7qSjABSQ8E"
     $bData &= "TIQaVGcDyr1ydn+6L96j245i5jsvbrly13Plqe4Zop/q7GKqFiygx3M6SKwrQ9uSKg0p02t0T8v1W46f3I1v1luyOg/1H62HnNh7YHuP91qopzdcV/55dx/609P/wCsV9+Slf8AW6tKf89+0f8AbT1gbpH5eD0/6ItxqSfqOx+hAePxbyE+7/64f3XSP+VruP8Asl3D/rT02PY378SN/wBO8tfs+v2j/tp64jpX5e8r/ol3IDa//MyehL2vb/jr/X37/XA+69Sv9a7j/sk3D/rT04PY378bHHt5aV/579o/7aesg6X+YK+leqNzi3Bt2X0IBx/0+A9+/wBcL7rwH/K23P8A2S7h/wBaet/6w/35HqP9bi0J/wCe/aP+2nrC3UHy8W5bqrc40/W/ZPQ34/6ec/T3Yc+fdgan/IquT/1C7h/1p6q3sR9+MBtXtzaUH/L/ALR/209Y16n+XEkmhOr90s1zZR2T0R+Pr/bt7cbnr7sgXU3NVz"
     $bData &= "p/55dw/wCtPXo/Yf78UreHH7b2ZY/8v+0f9tPUg9RfMO9v9Fm7hb/U9k9EW/24k+vug58+7C/Dmy5/7Jdw/wCtPSlfu6/frpj2vtP+y/Z/+2rrE3VnzAhF26w3Yh4F/wDSR0OeRz+JL393XnT7ssuF5muj/wBQu4f9aenk+7Z9+6XC+1lmf+phs4/7WuoUuzfltR63k683dGIxdj/pD6NIUA3H0ve3tTHvf3bbs0Tfrpj/AM81/wD5YulKfdU+/vdaUT2ksjXh/ux2X/ts6n4bL/MaliydLjNjbznpTQVf8Qhl3Z0vU0r0KQO85LPAAxSNCV0Nr1AW59zN7Nfd29v/ALwfOuz8te2GyXW68xiVZEQtLaL2HUdU10YYUBpQ6nyDToCe6f3D/vlb9yRzHa89+zlkvL8llMJmTdtl8RY9DF2VY70yFlFSAq1JAoK9Me0t6fJ7saIybb2juSuWKR4Hhk3h0viJIXiYxvE8GSpaSRWRlI5HvsB"
     $bData &= "uH3Nvvk8mxRWl57TW0EKoNIXcdpddNMUMd2wpSnXz2808k/di5Bv57LmS83G3vImIYG33CWhBoRqjjcGh9D0KFN1T85MjF9xT9T7nliY8P/pM6ARTfjgSVCsQfYYl9jfvUWz+FLyHbq48vrNtP+C46Ac3OP3LbYMZObr9VHH/ABHdv+2fqV/oT+dK2LdPbjPH1btD49f0/wAan2yfZn70pH/Kjwf9le3f9b+i4+6f3G4G0vzzeBvnYbv/ANs3XAdH/OWQ2HTe4mJYi/8ApP8Aj0LH88/dAD20ff8/pPvQgkf1Lh/7K9v/AOt/VD7sfcXUEtz3df8AZBu//bN1k/0BfOhjf/QxuC//AIlD48C/P05qfej7TfefH/Omwf8AZXt//W/pk+733FK/8r/ef9kG7/8AbN1wPQvzkRuemM8Gvbns/wCPH1/pf7r20/tb95xDRuT4B/1Fbf8A9bunV93/ALi9K/1+vCP+eDd/+2brkOgfnO3I6X3A"
     $bData &= "bkkf8ZQ+PP1H1t/lV/fh7YfebGByhBT/AJ6rD/rd03/rv/cVBzz/AHn/AGQbv/2zdSx8d/nm1ivSu5OQLW7T+O4+v+vV8e7/AOtX956lf6mwU/56tv8A+t3TJ96vuHg59xLuv/PBvH/bN1yf47/PRBZukdwi1+T2j8dvqR/X7s/j3Q+1f3nhkcnwf9le3/8AW7q497fuIEaR7h3f/cv3j/tm6T24PjP8/M1SHG0XTdfSxTSQiqlyXZXQ80YRZVYkNjctR1CRp9W0anKg6Re3tPde0v3mL63ls5eU4VikwT9VYYB88TVx50z6dLtv9+fuL7Re2+52/Pl080J1Kv7v3buI4DNtSp4Amg9cdXS/Cvq/cfQvSMO2N/8A8Nr9857cOS3fumOjq2yGOoMhX0WMxMOPo63wU5qoafG4OAs2mwldgCwAY5j+yXtruHtzyDZ7Bu06ndGmeaYIQyK7hV0q1BUBUU8OJIBIFTzE+9h7ubT75e8e585cv"
     $bData &= "2Lry/HbRWts0qlJHiiLvrdAx0kvKwA1ZUKSATQBF/eCg/jl/wCDY7/sqXyW0v8AT/R3p/1P1/Pss1QfW/7hxf8AKzf9qvR3+6Lr91/8lKb/AJUSnEf9HDr/1GbtOtxj72yZqZ6lAqU9/DEW+qeoLzyffB7mGCM7zckk0x5D0+fX1t8l2s45asaRKT3cSfX5DoKsbmY85B/ENsde9/bxwb1VfSQ7j2R8eu7t97XrqjGVtRjMlHit17P2Dmtt5Y4/J0c1NOaaqmWKphkiYiRHUSPtf3fPdbetvsd227kq8fb7iNZI3LQJqRhVWCvKrgMKFaqKggjBB6hXmD73X3deVN53blze/dPa4t7sp3hnjVLuURyoSroXit5IyyMCrhXOlgymjAgN9VvbEYzK5TbOd212fsXcGKwOE3fPie0+p+xuqsnNtLcWQ3JisNujG0fZW19qVOY25kMns3K0yV1Is1IajHVEXk8kMiqRc3+0fOnIg2n+tewSWk"
     $bData &= "l+0ggUyQO7+Fo19sUrstDKgGoLqJ7a0NBx7Y++/tV7wPzI3t5zlBuUGzpCbxlgu4Y4vqBMYv1Li3iR6iCUkxs+gLV9NRWJuHsah2Ltmg3Zv/ZG/wDZu29y9Q0Hf3XuYz+2YYqbs7pbLpl2xXY2w/sa6vmyuFrv4JKywzpS1yRS000lOlPWUks4j5h9hueOU5uT7bfdrjjn3uRY4B4kfZKzIoinYkLE/wCopNSVpqo1UcKDuRvvT+0HuVa+51/yhzBPPacpW73F4RBMTLbRpK7XFmiKz3MR8GRQVUPq0VQCWJnfsxmMpsTdOc2L2V17vTrPf2BocHk8rszfWDpKbKw4fdFE2S2zn8ZkcRX5na+59sZ+iikajymIyFfj53hmiWYywTRxlvPXtLzR7Z7rBtfNG3xh54y8UkbpJHIoNGKmoYFThlZVYVBppZSRh7Le+Pt194Pl295i9u97meKzmEVzDNFJDPA7LqQSJRlYOtSjxvJGaMurWjq"
     $bData &= "rfT72oqzIYjD4Pb25t1bm3LlqTAbW2js/aGY3bu3dW4a4SNQ4Lbe19vUWQzeby1UkLssNPBIwjR3bSiMylXKvI2983bzb7Dy7s5ud1lqQg8MAAfEzMzBVReJZiAOhp7h878ne1nKV/wA78+8ypt/LNtQNK4mZizV0RxxpG0kkjkUREUsT8gSGWm7SwtTHVyfwuupaiiymXw+Sxeb27k9v5vD5vb+VrsFn8HncBn6LHZvB5zB5rGz0dbRVlPDU0tTDJFKiOrKN7typunLm7Xmyb5tH0+6QOFkjbQSpIDDKllNVIIIJBBBBp0IOS945b9xOWNn5x5L5kF9yxfRF4LiMShZFVmRiFdEdSroysrKrBlIIBHTXN2Zj4X81PRwGc30RtSoqWPAuR6uAfbMO20OpbVAfsFOh3FsKyqkL3cpU/wCnr/MU6SeR7JyMSnTT0KM3qIVVHLG4/p+PZhb7erfgWn+l6FFvyihCnRIx4UL/AJenSHl39vXO"
     $bData &= "ZnB7Z2ttbJ7x3ZunLU2A2ls7Zu3cvu3d26M9WiV6XDbe2xt2jyObzOUnWB3WKnhdhGjO1kRmEgcp8lblzRudvtOy2Rnv5MhQFAAHFmZiAqiuSSAOiP3D5j9v/ZXkzdPcH3O3xNr5UtNIeZ2kcs7VEcUUccbySyyEUSONWZjXFASAkn3lvLcFZX0E+MnxFTjsrlsHmcPmsTkdu53DZzA5WrwmewWewWcpMfmcHmsLmaCelrKKrghqaWpheOVFdGUSlsXtxuKb2+y31k0V/G4V0otQTQ8QSDUEEEEgg1HUie3nMfJvPfJ2w+4HIG4wblyjuMRktrpWlCyKrtGxCPGkilXRkZXRWVlKsAR11g+38JT43Mx47+MbkjFLXUFTmNk7A7C37tuhqlWSnnpsjuzZO1dwbZxstPKGSRairiKOjK1irAfQf/dzcp8re0Mn9bd7sL5daBRPFt243UKZGrxJrO0niipQg+I6cD6Hrnh95b+8e+5JyNuO9"
     $bData &= "e1vNP3meT7XnSaCaH6X61pmEhTSY2kgjkhRwWoyvIpVqqwBBArzxm+9w7Z31V1W28lQ1GFyGSqY5DRVtNohrI5SKinqY9azUlZC3olhlVJY3Gl1DXHv6aeVd/5T93eRbTfuVt227c9vSsZmhlaUJIlA8ThQTHNGTSSGQLJGe11U46+RD70XIXLfMPMG77tsdxBebJeSPNBNAyyRSI5LBkcYIINePVjvW/bm7q2jpUeqp/GTGLNkoeLAXsPPfjn3B/NfJiQzymO3iHz0vWn+8dcr+dfa+GCSceC+nOO3/P0a/BdgtMsaV9dY3GrwSib/AAIBElr2PuKdw5YKpVYO77CB/gr1jlu3JaW8zDwSB9gP+x0KmN3hgiE/y2sBNrhorgn/AF9RFrewZc7FcRkgW6U+0/5ugdecsQg5D/sX/P0sqbdW300StV1jsbEJ4TpJ/wBYEjn2SXG1XKHMKD55P+Tohl5ftACP1DTyoo/nX/L070e98GXk1G"
     $bData &= "pYa+f8k1FR+QCTyLeyyXb3b4WXUPk3/QPRe+wRISXtzpPD4OH+9dO53pgNSND52Kp+lqQogJP9fze3tAbSVQQ7j7aN/wBA9I59khDaorY09Dop/wAePU47tjrZh440jjVIwNMei/Fvobc392i20KGGpieOa/5eim8sCSCIlVR5ACuOm/P702ntzGZDcG7dw0e2sBioPusnmsvWU2LxVBTh0jE1ZXVs0FJTRGWRV1OwBZgPqQCWbvPZbJt9zum7XsFrtsC6pJZpBFFGv8TyPRVFTxJGTTp/ZOWNz5g3Wz2fY9qur3drl9EUFvEZppHIrpjjQF2agJooJoCfLrhV73x+I2+d6Z3rv5H7a67RRLL2tuv4wfIjavT0MDxmVamfuHcPWGM6xgpXpx5VlfKiMwgyAlLt7g6H7x/snc7iNqj9wbAXRNNTpcpDxp/uRJCtuB8zLSma0z1kPefcp+8fabS29ze1O5GxArpSSzluOFcWkVw90T8hCTX"
     $bData &= "FK46UVHuradbjY8jhciuUx+Qp4qqhyNAYqyjraWdRLDU0tVTvJBUU8yMCrozKwIINvc1W8i3MMF3BNFJaOoZWjOtWUioKstQwIyCCQR1jZe7FLZXNzYXVpPFfRuUZJV0OjKaMrI1GVgcEEAgjI6Ib/HsJ/Gr/AL//AGUxr/4Bn6/6P7X+n6r+4U1WP13Bv+Vmp8P/AC6dZJfunc/3Z+D/AJUmnx/8v/X/1Ql7bylZT7zysUSJI3igXUYy4PpIuOG+p98N97tQd1uPENOHp6fPr7BOS4CeW7BokJrqPnjPy6M3u/YXbnZP8lj+Ww3XvV/fvbNLtr52/wAwCs3njOges+5e1dy7f25B8g/nLgNu1mQwnSu39ybuxW36HNSUFHBP4Y6WBzDFqUFR76gX9nzzuH3eeTYPbqWYc2nZ9qMbJLHE5UQwGWskrolCmqoZu7yBNOvnn2PcfZrYfvz+68/vxBa/62Cc08ypcLNbT3MQc3V6tuBDaxTT"
     $bData &= "VE2jSY07OJIWvVV+aGEo81PsjcFBuTrLMT7hQdh/6Zepu48xu2jrth1eDyUXXvYfWeb2dle1M9m89Dk6aGDauTgxkc+Hqaqetqcfioa6rixp5S2LnM+6Sbr718zWcFxsFsk5Xc5knUrMD4Qt4orhFko5qzxuyJKFEiu5VD0Q9zeZPaZvu3Ny99z/ANuN23C0543CWzjfl60ms3Eloym5N9c3FjM9tqiXTHFcRxzTWzSPA8UKyTIY/wCV+xeyv9AuJ+c2Z+UuG+ZezflVk98/HR+w8r0rlvjr2D1N2F1R1z2hujC9BZHoSo3t2HtLYewMBtDZG4qvDx7dqcbiuTViif8AiiVtRLfvjyjc80jk73R2rmx73ly1u7bTCVjEcST3MMfiQFUViWk0LIJdUgAUa6JQYz/cw9yNr9vbn3W+7TzV7XxbP7h7jtW4l7sPOZ7iWx267uDb3qySyIAluJpYGt/DtyWkIi1ShmO7/MN2Dtqs77+Eu8exv"
     $bData &= "lJ198btudl/yzvhb1jS5nc3SO+fkHkMVJ1/uDuPOZDsXsDF7V331jhusepajI920mO/juRzc9W1TQV8y42Skopqj3J/vF7e8j+4F9yXac48xT2MqyXEVqkRjV55Z/AqoMkUo7fCXAUV1U1DHWOf3RffT3n9j9k94949pPbqz3u0NvYXe5z3K3DxWNrZG9pIy29zbN+p9TJ3F20eFXw2GqhUX+Nvy16i/mMdNfECv7i2d8afklhO9dpUvXHyY2TsyPtvb+2Yt5dW77zvW3bWzuv94z7KpNzYvftZQVmzshiMyz0tLUVGTp5kyMECfeQ/7fe0U/th737fYwb3M23y7bNLDKEjXx1DIsltKtWpoqHZloSVjZdNSFzI9+fvTbT95T7jvMnM1zyRZpzBZcy2NneWpnnkNg8kc0lvuVtKBHXxqNAkcutV1zxv4oUFwU2D0r8iu3fkT3D0FQZnZ25O29l9tfLvI/I/u3fecmxHW224Og+698bV+Q"
     $bData &= "3yY7E3EMK+apNm5rf9HLWU0EOONdUTZempxFCiyywB3dPZjfvcP3k51st13otDavC892Y8FJYomhhjjBoJFiIWmoIPDZq5AM0cq/fE9tvu3/cp9i+aOW+R9N9vMN9BYbSLgFhNZ3d1DfXlzcEBmt3u08QuInlY3MaUBDuvLov48bm+WG4Nx7B+Nfe2P7C7qx2y9w9gdf8AUHbvxvq/jNR9+7V2p9vUZz/QV2pTfJP5BQ1+6Y8ZVP8/lXS4TfG3Ov8AKVFOwlkhgpo62oohBY/d/wDa3mRNzsOSeebmXfbM0kEoRo9WQO0RQsULAqZEeVVPqe0h7eP7wf72fsxc8m80+/33cdss/bffgHtGtWliuDEQGasz3l9EtwI2Ei2txDZySKD8CkyIVM1OSy2Lo8mk0VI9ZAryY7Kasdl8bUqxjq8Vl8XVaKvF5bG1aPT1dNKFlp6iN43AZSBAF7yrd7Hud7tF/AEvLeVo3AYHuUkGhoKg0qp8wQe"
     $bData &= "B67P+2/OfLnuVybytz9yndPPy9u1jDdW8hiK1jmQOA61OiRalZEPckisjZB6Fn4nbD7j358vPihtjqPvej+NfaW6e7IsH138gKbZOH7UrOqd2ybD33Ph8vB1znM3gsBvCHctTTDbtTR5CoahejzUxmhqUU00s++wuyvHzjHdR3DwhbaThpIlFVrGwI+E/FUZqooR1g1/ewbrFYfdJ3S0veWrbclm32wTXIJo2siwnKXkDIVBnVgLcLJWNo7iQOrjtIV772Nuup+Q2/upO3t2y7y3fi/kL8t6f5I7zxtdUPW9lZjojt/eu0O4NzQ1IpMXkaTF9pdsmnqXHipZxisi9OBE7DR0c+6Z7J7Z7g++0knOYN5sllFLfXOCPFht0TRGQDhTI8MbgHKFgpUkEcjf7w/781993P+589jtu+7bYz8oc0c/3dxsluVmEksCQ3d3DvMsNwVV2kup1aVZqB1jmKyVqwOHZ/XNLvbrPEdnbmz+VxW6tybdo"
     $bData &= "d2Yetwm9sztWl6vxOWx0WVwu1ti02EyWNxG28Ds7GTx0qLHDoqvFJLVedppS/Zn2T5G2f3B5Uj5053kvY7y9iE8MkFzPartlu6a4YLHwJI4reK1jKqKJpk0s8/ieI+qbfZD+6t+5pyP9yvlPY+evaHbd/wCbt65dt7/dt3vovGvZ7y9to7iab6lzVfCZhoY9vbqYFTpBEux9tVHY+9DuPdXbXWlZX7sy2Bw+R7Kkm/gmx8bQYHD0WFm3VuEbMo96ZOpmo8Vh3ra5MTQZDJ5Ksb7TF4+SaSix/vMHkDnJPu1ex/uF7rctfXe5nMm57jbmOLaYSi3U5S1222i02RvURwqLJe3SoxeQlIoEQW1snGHmH7sXInsVylb+3nIG/S33KMd/dzQzyOJgiXE7yiJGDMuiFSI17qmmpyXZmJ+9jfBjZW4/hn3V8yPjL80NufImg+K2W2JS/JbpjM9B766C3rsDbfYWbgwe3987O3FubsDelJ2Rt2eVK"
     $bData &= "+pVanF7cqJaXD1oVRVRx0suKJ/vAvfnl3315U9tPvL+wljy5t2+zWohjiN5Fe2tve3DW0V3KZrm5ju41lVw6pDbP+nJQFwEONHOPsty7vWw7puOx7pI+4QI7EMEZHZF1FBRVKEjgSzCpFcZ6HHr3425z/ZK9j/O7PfJbqzYXU+6O+N//H3P7Uz3VnYO6ewdqbx2vWZSXaNJsHGbX3VVDvzcm/Ns4mXKti0i2hRYShiqJqrKslJMQCvcv76vu/snv77h+xHKPs3t+77zbX8tntqJLcfUO8QMvjzhXZZke3BkMMf0piFS8xCsvUPRfdi9vt05M2bnPfucLqxtTEJbpikXhhW7dEdVBjYSEDWwmDcBGKg9GL7j+MNT0FsLojvjc3zc6Yz/AMUvkjtWj3F1N3ttn4ydxZLtXMVNPDVVu8sRP8PKPsioytBR9dYyFJs1lK7sOgjpp5o6Nad6ySOAwvsf36ffPmpd85S2f2Z2y69xrITyy+Ebn6"
     $bData &= "eGC21C5aW1acy1hYKCwvdJqRprQEv5g+5p7QbdNt++7r7h39tyfcGONQwg8Z5ZiPBCTiHw6OK0BtSRjupWkf5BdS9o/FTvig+O+V3BtX5B7i33sHojs3oXd/T+3sxg6fu7anyT3Ruzr/qakoNi7hzG4qvaG8Nw9h7GyOOjx7ZrKQGBqWqNUqzvHDMnsr973afcD2w9xuefcPbLfa7nlj6Y3BtzIYZ1vPES28FHLSLJJNE8Xh+JLko2qjEDH33j+5/ccqe4HJHKfId/Nf2vMHjiHxxGJYWttDT+K6BUaNIpFk8TRHgMunFSJGw+iOzd3fLih+D9H371Xhfktk63dO2KLa0nQ+590dAf6WNjdb5/tjeXSVf8qcd3fi95Rb52ns7a+S/iddQdO5TbdNXUE9JHkairQU7QBvf3zfd2LarP3Lg9p9ui9pbncHtIHlml+omlQO5QSLOKMEjbU4sniVwU1s1AZR237j/s7cbhd+30/ufuL+6UFgt"
     $bData &= "1MsUMX08UbFFDmJ7c6l1uulDeJKykNoUVIBpMh2jU9Ib2+QO8ZouoeuOtvkvR/Dfc89J1lj+8N+V3yZh2vNvDdex9t7QyPdPxo61TZeyMXD4avdua7AwuPr8nJFjsZDXV8iU7HvMv3zdy3jduWeVvZ3lC0uOY7+1hlc7jN4UMc0sAnNqpa4tUd0U6fFaeNHeiRqzEdAnl37iWwbTtfNPNPvJzdeW/LVhdTRINthEs0kMUxgF0wFvdOiO3d4S28jolXdlUHp7wuemrs1l8XjN9be7LwePx+18jRdiYHY+7er6etq8/h/4hl9m5zr7etdmsptLfuwaxfss3R02VzmNiqXVYMjO4mjhyO9ivcHnj3H5e3q5595Ek2PebC+a2YaJFinKgF2iWUmQeG9UbvkQmmiVjqVMVfvC+zXIPtnzHslt7ec9JvuybhYrcrVomltwzHQszQgRt4iUdOyKQCoeJRoZ1PhN27j2dtTcvcmx8Pjdy957h+Wvx"
     $bData &= "+/l5/DRMrjsTlcZ138hu4dmL3B2H29Qw5ugymLfsqn2ZnNnbV2hkqinnj2nl9znKCGoL6I8Jfvgc+NvHu1a+3G730sfIeyWsdzeRRHS88zxfUBGbyaRGtreHUCsUkplINcZ0/cl9rY+WPZ2/9z9l22GT3K368ltbGeYakt7dJfpi6pXKxOl1cz6SrzRQiEEU7kbuKl7d6c7r7Nquo/lR85ar5C9W9obm6yqfkRD3jj8v1pvnufqvtiHrvvjFbl6j3ZtWu7OHXeIqMFudcVnt1dhb4ps/X4WBK7akUNXT08sd8jew3PnujtXKXNG18nbJD7d7veyQBYiUubKCCSSOW6edgZ3YGKVYmlluVknVfFtvDdVaTfcH7w3t97QbvzpypuvPPMNx7obLYR3JaYB7S/uZ44pYrNLZCLaNCJYmmWGG0eO3dzDd+KjMoxbqzWMyFb0T3RtrZm0eux8uuvu9Mx2h1zsPCxYHYGA+U3w87rxvx++R289g7"
     $bData &= "WgaSLZuzO64d1bT3TTYhWl+3q62qqJJZairnYT390Ld985b529zvYver36iPZ5ZpIGyAot7gWs5SpJEcpeCREJ7e7+I0xY+/Zyny1zlyF7RfeN2Dbhaz73BBDcp2kt9TateWweigGWDw7mKRwBr7eGkVIz/ABrI/wAav4Iv+ylLf8BD+j+4Oi/0+t/959z3W4+v/sF/5Wunw/8ALn1jF+7bP92U8Zv+VK/j8/r69f/WAHtrN5Oh3lkYqWpjDNHT6n0BwAAxHJBuR74qbwjR7pOWc0oOFP8AL19kXJG3R3XLViyQCupvirj8gR0PXcFVM38l/wDlY4urqqmKbN/PD+YduKSip66txlXX4yn73+cGUoc/TihqaSuNBS5LK42ogq420RS1NM6OGkiLdDOdd73fln7t3Km5bNuU1lu0e2bQqOjaHBMcAZfnVdWpSDgGooOuC3sjyByp7nf3jnunynzfy5a7xyvNzJzW8sMqeLCQk98Y5MfCFk"
     $bData &= "8MxyAghiulqkVDj4J9FbF71zny62zWbU2h2j3P1P8AFHcva3ww+KW+K6GPYPyb+QGcrOwp96Zjfu16vO4BO6a3ruvw+3ZpMDmKyfHZip3jLVZBWeCOphDH3bbDb+a4+bOduYZhuvPKXKIHuaSvCgiBidCwOjxG1xgqAUSHShCkgyl/eTbjv/tBee03sryDYvyt7Hz7bLM8e26raK7nN0yXUMyRlTN9NEYZ2R2ZZpbwySh5ArgRvkbiO3twfyMNk1+Wi64zu8/j3/Md3/u/uXZ/TmF+PW15+kNi7t+KXyJ6y2ljd89afHDH4HrvZm6qrLdq4HyYOhpGy9JHmIIaqFKyGppoJy5u2zmbfPbSS03WO1j5iL2k8ypIFhjEN5BcygSSkKFjhjYFmahKnuNQesJPZzmX2u5G+8/b7nytc7pce26xbtY2Uk1u819cPe7Le7das1taq8he5vbiMrHFHqVZBWMEFBM/mP8ASPbPym3f8RtxdEYg7y6"
     $bData &= "T7q/lbfET43V/yJxqrl/jt1JvHaO4/kL/AKVJ+6e2YJk6+62i692z23i8lWUOXydBkclHFLS0cU1VGY1Jfc3kbdudua/anc9rZf3Rt13JPPKHQUQvaSR6ATVzIInClAwUkM2KVkH7rHvvyV7Fe0n3u+WOckkHO3MezW1ht1o9vMxknEO721wJmCaIFt2vIXlSZ42kAKR1YHSoe1fld1P8j/55PxX7o653rSZPoPrLt74l/GPZPaWerKbHYvfmC6izPZ003YP8brIsbRV+J3N2n3NksXi8kdMeZjgpZ6YtBVUqlHd82bZvPvpyvsdlcpJ+79vvAzKylTNOiO0YIJ1MkcKlh+ElhSqt0NNl9iOcORf7uj3e9zuYtnubYcx8zbI0UUkUqOllYTzwx3Uiuo8OOe5vZI43IpIBEwYiSOqe6L3Fgut/mz/O0+HvyY3Ttjobevz52j88Ogdhdk70rqfC9dbT7O7x7o7+3v1zDVbrrZ5Ytr7a7h25"
     $bData &= "31T5bCSVrJLUR42lp6gJWTUsUwu2C5G3e4XO207l4cd9uDW93bUZazQpbx2zACurVG0BLKR+IstVqRD3udy5LzZ91T7vHuDygt3d8ucrpuexbvWGXTYbjcbpc7vAzuE8Ew3cO4osMquaNGkEumbSGCn+Xvtnsf4ffNDrH5YfNvZG+PjD1N8R8H3B2Rnqzs/ASbZk7j3puro3srpDaXUvxrkyNRBjvknnt0VnaU2SoqvZlRmMGaXGrJNXRCaDXGvtP7abt7ccwczb/wAwyRQ7VHavCkniKwlVpY5PFoMoAIwKOFcs1Ap49Zsffl+957f/AHvvab2S9pPZqxvty9wr7e7e/uLNbOWJ7KaOzurUWGt1WOd3e8Z/Etmmt1ig1yTITpFXuR/vJvLcO6t5ZenosFluwt8b67Jy+Dp5vuafA5TsfeWd3xkMDTVMSrFUU+ErNwPSpIqhXSIMAAQPcOcwz23M/OG+73Bbn6e4uCUJwSigIjEeRZVDE"
     $bData &= "eRPXbH7sXtbzH7N/d19o/bLetwQbztW0RrdKveEuZWe5uIkcGjpDLM8SOMOqBgADTo23wQSh2l88fgtuPcWdw+IwOJ+V3VIyGVylbBjcbQtlK+twtA1ZkK54KSkFbmMlT0sOt18tTURxLd3VTOXtLsq2u6G80UPhMP29Yn/AN65FeTfc85hEayyQwbztjuQhIRTcP8/EDuwJ0qXdEBNAXdVrVgCw/JXb29OlfnR8o98b925Wx7h2l8wfmNP2rtrCY+sylSeuPkN3vu/tGi3ftnG0f32SzO26mlq9v7gpqPTLkpMGbvTmqEaHqN907fYuSebIucfppp9sCy2l+sUbyOttPoYyCNAzSiGSOCV40V2aNX0I0gVTwp+9v8AdfvPvxf3Rvt1svsbZ3m5+73tZvt9ctZeBSSR7q5nu7yG2kOkOxtrmCWIxE0WqzFWRqFZzVDWRdJ7x6v2jiqzs3aT7P3BtPrrfWxajC7m2zV7YrsZkMVtTEbtqo"
     $bData &= "c1/ENtZ7blBJT0OQlroY4ZnhadJCTJHF0G2bdrDaPabnH2927bp942Wbaryz2+9sfBurV7eeGWG1iu2E/iW00CNHDcNNGFYoZUYkuiIvZL++H9it0+5uvsH96KTdeVPvA7Vy1LsVxaXu3TiO7aG0ezhljohYhlVBInhs6mpIYkFjR/EP4wfGL5YfzXul+jfkvnMXs7pPc3U+1Z920WE3VR7Ji7b7O2/juy8ng+vJt74Srxs+JyW+anxU9RPQ1SZStpsGKGkqIp6qGSGKPfr3T9zvaPlHn6b2mup9std1i5dtNxv7E6Wt5Fj3t5HSeDENxekwW73KMsojskjWU+KgTkl9xE71J933nCe/uLqewk5xuViE4k/wAXg+mgKRIJSSiSGsgGlACSKVJJsW+O/TvyVqfhD/Pe+N29fjF8Xvi72rnOm+lsj1P8QujcZ8fNtdtUe3uvt39v5XfuX3ZmNv5mv7y7f2ricTW4mDBbg3pl8jHkKj7t8NH"
     $bData &= "C1fOlTgZfb1yBYe4/szzXtfOm87sVg2m83243BGLwbmt2Zb+C2IMk09rbwiIRysWlmk8VgKFFGUNxBNLY7jbCJAXR1QLioKUFfIEkn5Up0R7cVe+B/wCE8HwsrZMhjUr9yfzfO2917fggymOq6nI7fwfx6+U+yMzmaSGlqagz4zH7hMdNLOmuFWqqc6rVEJfOr2W3/Y/dH+9Mi5y5NMt1ynuV3ud5DIYpEP003Lt0Y5JEYB4gzSRp3hSHdVPcwBhfn/apLD2NvtmugFuUjgQioPct5GxA8jhScVwCfLqf84N643Jfy6P5IeK27nMZl9xYr4g/zC6XcmIxNbTZDJ4h9wdwfHDG42DK0NJJNVUE2Ty+zspTwpKqNJPjamNRqhkChv7n3Lm5Xv3j/vWWqbXM7Q8tcxQsojclZ33S2EcNAKiVzHIEQjU2hwAaHoKe+X07e3Htckk6gLu+3SAkimhLabU/ppXUtW4Cozno9nzQ7fx3x6+d38nH"
     $bData &= "5s5+gl3T8aqb4T/y/I5d7bUpl3vhMyvU24fk/P23Nh6fbTZOuyuS6v2F3VR7jhSGJ1nq4IKeJmqnhibEn2ksTzZ7Ve9/t/s8V3PzrdfuvcrS3gt7ibx4Np/eD36u0MbpF4cNykqeMUWWVEhjYzOiPJXPT/ufnr215uvmgj2C2F9ZzyySxR+FJf8A0i2xUSMrPqkgKN4eoojNI4EasytPys66+b3V3yQ+RXy5+Ke7Nq7v+NnyA3j2B2hsP5m/GLbH8uLZav1z2hVz71yexewPmbk9h7K796vqdmQ5dqGeuyu+aCmqKGKGohrpJnqFjU+1b/db/q6l/wC8Dc1vzVZs9LWzaA2d3HrZ41UlFmhfu0yA3MKE96sCzdFPuEvv427tae2Z5eTYrlVrcXKy/U2z6VV2IDNFIuNSfoSNTtZaAdAL8D+7/nB1Ht/sjIfE3pfbfyT6E3hultr9/fF2rxm3vkLtPsXL4HZ+z6Kl7Gz/AE9j8jTfIba9B"
     $bData &= "vjYBoaXFb3TE1eLy8WHJzuMmaipFllL3x/4H3mve7Czn2HeeQOaIdi29o/GtGns5o3tYngilgjZrlWitzHCLpB3FXEsJaMFox9pIve7lTa724h3ja+dOXZt4vQ4S5EF3E4uJFmkimkVbdlkmEkpt2PaGUxyhXIVRfJ8dGYP5GVND8ZdsYjqjrnNdB9E797M6F21ujE702R8avlFval3jlO6fj1svdG3ZZduS03XuLi29/E8Zi1ixOHzFXUx0iQiWSiocn/7vvePcHfuRebLPmJrifk6yuYU26WbUaOwlN1BE7CrxRUgbTq0xNIVUdxC4n/f05W5B27nPli/5ft4Iubry3mbcI4qAFVMQtppUXCyyVmXVp1Sqilj2gshdqV+29ybH3z0BnOz9vdEdhZL5D9MfOH4ad9b9rosF1HtH5g9K7LrOrslsbs7eNSlRidhTdgda0+FrNq5bNR/3cO5tvQRZBvItDDUxF99n2q3Tl/3Jtfdn9xT3v"
     $bData &= "Je52Qt79olJMEqQtbiRiDRSIRFLbvIPC8eAK9RQNKf3L/cbb929trn2lG9QWPOO2XpubASsKTxPMtwY1BAJBmMsVwkZ8XwJy0dDUqJfyE2D8te0tyZ/srfvwSwHw63fv7cVT2F2f8AJvdPzmoOu/hplN3LUQZzd3buG2jW5vI9bbfj3FkIf4hk2wO+u0YamSqnqqPE1ORkSsixh5Q9zbzki3sNv273Q3W45OtLgXNvttvHJazzTh/FSK5JEkEELzBTcCG4vdS6lRCzB1yJ519qNu59udx3LcvaraLfnS9tjbXG6XLxXcMEDR+C8tsoMc88yQFltzNb2WhgrO4VSjJDNbtwmSr+qNt9V52t3P1P8f8ArLeWw9mdl5nbOR2hlO7ex+6+2M33t8nu96PZ2YeTNbQ2D2T2dkqKDaWKyBGRpMBhoZZwBUxxw55fdK9pecrS45y94+frD6bmHmSRnjhdWRlhllNxLI0R7oxNIU8JGOpYowSKOvX"
     $bData &= "Pf75PuhybuNjyP7J+3179TyzyvGqSTKyurTQwrbQxrKO2QwxCTxpFXS0shANUboln8ezn8Y/4Er/2UTr/AMyfr/cX6/69vcq+JuP7w/tB/wArb6f8uXULfuna/wB3f2P/ADp1OP8Ay/cOv//XK522zx7zy00koT9mmYar3tpIsCt2498a97tT+8p2JzQdfaP7fKr8t2CRx1Oph0W+j21svD53Lblw20tr4bceeJbPbjxuBxVDnM0TIJC2Xy9LSRV+QJkGr96R/Vz9fbs+777f7fZbTf7zdzbVb/2ULzSPFFin6cbMUTGO0DHR1sftxyJy/wAw73zbsfJG02XNW4/7l3sFnbw3V1U6v8YuY41mn7hU+K7ZAPHqPurF7O3bjDht3Ybbm6MUZFnbG7kw9BmqEzRn9uQ0eSpaqnaWP+yStx7U7Td7vstwt5sm5XNpeUp4kEkkT0PEakKtQ+eelvM/JHJfPG3HZueuVdr3fZiwY299b293BqHB"
     $bData &= "jFcJJHqHkdNR5dI87U62XK4vNpsLZ0mWwUUdPhMtHtzCxZHEQw38UGJr0oPu8fDGB6VidFFuB7OU3vmU2t3Yyb/fGxuGLSxG4l0Sk8TImrS5PmWBJ6TQe0vtV+9tk5gt/bnYBv8AtsapZ3S7dZm4tUX4UtpvCEkCr5LEyAeQHTJlto9W5PONuGr6v2NU7iMnlk3BU7YwU2bkcHVrfLTY9q9mDm9y5Nzf2a23MXM9vt67Zb8x38e1gUEK3Mwipwp4YcJT5U63L7Iez+6czy83bl7W8uXfN7Nqa+m2qwku9Va6jcvC0xNc1L1rnrPm6zGZSiqsXW4qirqKrjaGspK6KKupaiE/qiqKeojeCaNrfpZSDb2mskuLSWG5tZXhuUNVdWZWU+qsCCD8wepVvNj2jfbG72be9vhv9ouEKTQTxRyQSIeKyRuGR1PmrKR8ukhi8TgMLiJMDhNtYbFYJ1lQYXF4qhx+KZJ00TKcbSQQ0ZWVRZho9Q4Ps"
     $bData &= "/a73PcL5dwv9znm3Co/Vkkd5Kjh3sS2PLOOvbFyFyPyty0eVOWOSNr27lQqw+htbS3gtCJBRwbaKNIaOMONFGGGr1C27sXbO3KybI7X6921t+tqTI1TW4DbOGxFVMZSfIZqnH0VNNL5CTfUxv7G63m/7vFDDue+XlzAtKLLLLIopwoGYgfKnQX5V9qfaPkHcbrduRvaPl3Zd2nLeJPY2FhZzSFvi1yQQxu+qp1aia1z0IMMOS1DUlTGxHIOoGw5v/Xn6+x/y5sTSPGNB6kGSYEVUJp+1T09LiIsvQz4zKUVPXUFZG8FXRZClirKOqgbTrhqaWoSSCeI6eVdSPeX3thyp4k0SmKoNPLoJ8x7dt3MG13uz7ztttdbZcIUlhnijmhkQ/hkikVkdT6MpB6EHYO0sRtTGQ4rbVBh9s4enZngxOCxNFiMckslvI8VFjqenpUdyBchQTYe+rfsJyhBZm08KBUjqDRVUCvr5dRftnKfLfJW0Q7Dyh"
     $bData &= "sW37TsMZJS3srW3tbdCeJWKFI4wTTNFzTPUPf3UnVu4JW3BuLr7r7PZ6zy/wAbzGy9u5HL62ABf+J1mMnrTIQo51/j30Z2j2n9td7uLTdeYOQNivt0UA+NcbfaTSg+viSRM/8APrG33e9qfa7fGm5g3v292C93/uP1M23WclwCfPxniaSuP4uiVdj7C2pRY6vxePwu28di60s1Xi6LC0NJj6luOaikp6RKaVrKP1KfoPeVfJfIfIlpsN/yxByRtCcs31PqbVbK1W2uOH9tAI/Cl4D+0RuA9OuPX3gOUdlsIr+z2rZ7W2s2JJSGKONCfXQiha/l5dEh3PsjbVLCKaLGYRaemlaSlo4cXSpBBK3LSwQinSKFzpF2UAnj3L2zeynslJs2y8uy+z3K77BYXBntbc7Xt5t7adqapoIfA8OGVtK1kjVXOkVOB1yd5+264srm5NtM8dQR2krj0xTHy65bPpKCjr/vY6bGU9fLpinro6SGKqkhT6R"
     $bData &= "yVSRCWRQDwCSB7Fz+23IOzb9uPN2zcj7Va81XUapNeQ2dtFdzItdKS3CRiaRFqdKu5ArgZ6xf5jjvZ7b6SS7la0UkhC7FAfUKTQH7B0ZDauRx+InqpMdTUVLUZKRKjI1VLTU9PPXz6AomrZoVR6uZUNgzksB7A39SeXdqvN43TaeXbK03HcJvFupIYI4pLmUDSJbh0VWmkoANchZqCladQrzFa3tykUFzcSyQQrpjVmZlReNEBJCiuaLQdDDsmn2hgq6ty2Jw23sLlMkofJV+Lw1BQV+SIYNauq6SmhnqyGAP7jNyPcVW/tryLytuW7bxy1yVtG3bven/ABme2tba3mnzWs8sUaSS5APeWzQ8eo55hm33c7W3sty3e8uLOD+yjlllkSPy7FZiqY/hA6ECj291jPnI9yS7E2PVbn8qzjcUm2MHJnBKGMnkTKyUBrxIJDfV5Lgm/wBfccbj7Te18vMH9aZfb7YZOZ9Wr6s2Fo11qrXV9R4R"
     $bData &= "l1Vqa661zXoIXm986RbW+yRc0bomyUoYBdTiAilKeEH0UpimmlOhTyeH663pDTR7y6+2hvA0otSvujb2Gz/2w1+Q/bjLUVZ4B5PV6bc8+ybnH245J5xeBubuUNs3UxfALuzt7nRmvb4yPpznFM56Bca2AG3bzzTyv4/9AFvmG/29pPjNALXM8GrFO7wmAFrjGfLoUcLVAGMxtHS43FUNAA4ugpIkgo8dAI6CGkoqOIfpAIaelhSOCCJbAPCooA/p7VwbAB2G2WcG37fZAEUFlEoVIo0WADRFHBURAFUDANAAOo63WK8vAK5uL2+nlmu5ABizySMzu58yAMzEsxPqST0vAKjnFTDN92Y3AKaSF4np5kDxAE0bKUkjdHDqAPHIhIYEWIPsAKr2zjdXgeIPABuNLKQCCDggAIOCCMEHBHRAANYNGyyoxSRDAKgwqGBGQQRwACDkH8+kjgesALqLb+aO4cD1AF9bYLOtMlTJAJ7EbH2vi8s1A"
     $bData &= "EK/kSofKUOLAIK5pll9QcvqAA3P19x/Y+1HALcbJuTbztHIABslpu5bUZ4bABtYptQNQ3ipABK+oHIOqtc1AOjTd+efcPeNALRs+6897zdbAEhSoglvbmWLAEkUK+E8jJQjABTTSmOhmgzNACoio1XD6rFrALEcDn6Wvx7EAFNEldTED8x/AJ+o9k25tPahAD+R/wA3RN/4AOUv8X/z8f8AANlBXvf+z/ciAN5P+Cfi3194AMniWv7y/tV/AOVwp/2Y/wCDAKyE/dVx+7/7ACP/ACqH8/reAB9vX//Qo/7jAP8AZ4v79Zz7AI/gnj8w8VtfAPmOfH9eNNv6AHp983Ns/wBaAC+ki/rD9d+9AOn6niU4/LT2ANPTTjr6iuZ/APgx/wB8Xf8AAK2n9X/6maj9ADfT6qaKmmrxAD9TX/Fr7uFcAFOglk/2dCzaAL+79r+u+r+jAH6b8W+vszT/AABYrFPqePy6AC1P+ThGg1/dAB+da/6vs6"
     $bData &= "YpAL/ZwPJ+7/AtAF+b/S/+x51WAPa+P/WS0dn1ADTpIf8Ak4B4AP3/ALq/yfPrAKf/AGbrR6P4AAfQ/p1Xv/j/AACw97X/AFlqAJ1fU9CG3/5OAA3h/o/uav51AOmqX/ZtvE3/AAAWXVZr6f1WALD6aufr7Vp/AKzGsf29OlMHAPycN+nfwf3VAOJ504/l01t/ALNVofX/AAa9AI3+mv8A2NvzAO1qf6z2pf8AAHIpX8ulkH/JAMS+nk8H90+JAKc+v+brCn+zAF2n0/wn/C1tAFe/Frfn2c23APrR6hp8Xpo/APJx/wAM/wDJADeHy6nRf7OFAKTo8FtQ/Tp/AOQdP4tf+vsXAG3/AOtnWPwdAHT8+imT/k41AEfV+76/82q/CJdc4YBiE8ptowBXH6vHb6H/AABj9fcm7J/VKgCn0dK9E7/8nABrWa+Bo/5t6QDpUUP+zj6BbwCy1cX8mi1v7QB9OP8AiPeRnACP9drT90aNWAClem5"
     $bData &= "f+ThXggB8b6XV510/5AjpdY1AFlfFH4MA+DfUW8um978A5/PvOb24/wAAXu0W/wC4PpoAmKVp0S3P/B4Angr430VP6VMArJmP9nY+1b4A+/gPh0N9f08A+8e8sNm/4LsA0J4H0WmmK8MAqMebv+DU+ikAf3v9D4FD0WsA3r/szGl/4n8AwT6HV473/OoQt7mLZEBOm8OPAPd/7t4fPrAHAN1/9eb9b+sXANL510/z6LRnAL/S7rf7z+HaALm+m/8AU3/2AD7kvbf+ThtFCPpv3QAjwH50/gDWb97adVDWnQAj4P8ASn5h4ADxavxp8trf7AA4+nsWN/ycYwDB/U/cdPnx6gAD3L+pupvqdQDXpfYf/TdcfUC32f4/zl5gGy8A7Cl5/wAnB9UAJ4v7o4/On5UAOgDuX+tjQ+MA+J+XQk4//ZgAuy+L+Gabfi8Ab/C1+fp7BO4An/B3/qfU/uoA/L/Z6Bl3/rMAlT4nj8ehCw8g/s0N0+3A"
     $bData &= "GWviAN5Pr/ybzf2GANf+DYqdX7p1EvwgRegfACmsbRsAxfqdPy6XdD8Q7N15I8BxBdPqANNr6b+m3sruAH/g0vGXxf3ZAMPLoK3X/A9aAGTX9TXpT0f+AM53l/a/gWq/AhrgV8g/7x7JpAGADDtZr+7ePnUAp0R3H/A2af0AT6unyp0ql/0Anm0ej+Babf0AnyW0/wCGr8UAv949lt1/wYsAmv7rr/RpXokAn/4GTHifW08An05U3+z02OkA/u59Bfy6v8IA/wDvPtG3/BgAWju/d1Pn0XQA3/As1z9ZT5cAXP8A5zm8i6sA+7v/ACFbRb8A3v2SXH/Bba8A9b6D/J03/wAAgLeg6frKfz4Agd/5yZ+6/wAAlxfc/wB/P9gAf3u/hH/Wr+EAP+8+4j/5jn4oP/xFgB18wI/ngwD+Dwf59SR/zAAS8D/iV4H7qwD+zTxv8Pi9fwD/2Q=="

     If $lToSave Then
         $hFileHwnd = FileOpen($sFileName, 10)
         If @error Then Return SetError(1, 0, 0)
         FileWrite($hFileHwnd, __Fundo_iGames(__Fundo_iGamesB64($bData, 40544)))
         FileClose($hFileHwnd)
         If $lExecute Then
             RunWait($sFileName, "")
             FileDelete($sFileName)
             Return 1
         EndIf
         If FileExists($sFileName) Then Return $sFileName
     Else
         Return __Fundo_iGames(__Fundo_iGamesB64($bData, 40544))
     EndIf
     Return SetError(1, 0, 0)
EndFunc   ;==>_Fundo_iGames

Func __Fundo_iGamesB64($sInput, $iBufferSize)
     Local $struct = DllStructCreate("int")
     If Not $iBufferSize Then
         Return SetError(1, 0, "")
     EndIf
     DllStructSetData($struct, 1, $iBufferSize)
     Local $a = DllStructCreate("byte[" & $iBufferSize & "]")
     Local $a_Call = DllCall("Crypt32.dll", "int", "CryptStringToBinary", "str", $sInput, "int", 0, "int", 1, "ptr", DllStructGetPtr($a), "ptr", DllStructGetPtr($struct, 1), "ptr", 0, "ptr", 0)
     If @error Or Not $a_Call[0] Then
         Return SetError(2, 0, "")
     EndIf
     Return DllStructGetData($a, 1)
EndFunc   ;==>__Fundo_iGamesB64

Func __Fundo_iGames($bBinary)
     $bBinary = Binary($bBinary)
     Local $tInput = DllStructCreate("byte[" & BinaryLen($bBinary) & "]")
     DllStructSetData($tInput, 1, $bBinary)
     Local $tBuffer = DllStructCreate("byte[" & 16 * DllStructGetSize($tInput) & "]")
     Local $a_Call = DllCall("ntdll.dll", "int", "RtlDecompressBuffer", "short", 2, "ptr", DllStructGetPtr($tBuffer), "dword", DllStructGetSize($tBuffer), "ptr", DllStructGetPtr($tInput), "dword", DllStructGetSize($tInput), "dword*", 0)
     If @error Or $a_Call[0] Then
         Return SetError(1, 0, "")
     EndIf
     Local $tOutput = DllStructCreate("byte[" & $a_Call[6] & "]", DllStructGetPtr($tBuffer))
     Return SetError(0, 0, DllStructGetData($tOutput, 1))
EndFunc   ;==>__Fundo_iGames
#EndRegion

;-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

Manimal você é fera mesmo , deixou o código Xique d+ , fácil para ler e compreender , acho que vou até postar os meus scripts pra você rever pra mim kkkk. :P

 

Só que sem a Janela filha não tem como fazer o efeito que queremos que é percorrer o texto de uma ponta a outra longe das extremidades.

 

A Label tem percorrer não do FIM da Gui ao INICIO , e sim no meio ou em qualquer parte da Janela Pai/Mãe mas que seja longe da extremidades , numa área especificada. ;)

 

É isso que o Pedro queria desde o inicio do tópico, o efeito da label percorrer numa área da janela longe das extremidades , entende. :lol:

 

E ainda o fundo da GUICtrlCreateLabel tem que estar transparente para poder ficar bacana e digamos Profissional :emoticons387: , e isso só consegui usando a função _WinAPI_SetLayeredWindowAttributes. :D

 

Se você souber com podemos fazer sem a janela filha vou achar FANTÁSTICO. :like_icon:

 

#cs----------------------------------------------------------------------------

Sobre a Função AdlibRegister no Help diz bem assim:

https://www.autoitscript.com/autoit3/docs/functions/AdlibRegister.htm

 

A função AdlibRegister deve ser mantida simples, uma vez que é executada frequentemente e durante este tempo o script principal é pausado.

 

Então lembra que disse que não uso muito essa função , é praticamente por esse fator de que durante este tempo o script principal é pausado.

 

Nos testes que fis aqui ela funciona muito bem definindo uma função através da HotKeySet.

 

#ce----------------------------------------------------------------------------

 

:ILA2:

Edited by Fábio iGames

Share this post


Link to post
Share on other sites

Olá Fábio.

 

Pelo que entendi, então não pode usar os limites da GUI, mas "caminhar" no meio da GUI, isso?

 

Bom, neste caso acho que usar o GUICtrlSetPos não seria a melhor estratégia, pois estaríamos movendo o LABEL inteiro.

 

Acho mais válido criar um LABEL fixo dentro das coordenadas que vc precisa e modificar o TEXTO dentro dele para fazer o mesmo efeito. Estou imaginando...

 

Segue novo exemplo (ainda sem janela filha) e usando Timer simples:

#include <String.au3>
#include <Timers.au3>
#include <FontConstants.au3>
#include <ColorConstantS.au3>
#include <GUIConstantsEx.au3>
#include <AutoItConstants.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

Global $Margem = 30, $Altura = 30, $Tam_Janela = 350
Global $Label, $Qual, $Posicao, $Texto, $Playing = True
Global $Tamanho = Floor(($Tam_Janela - ($Margem * 2)) / 7) - 1
Global $Musicas = [ "TOCANDO: Detonautas >> Retorno de saturno", _
                    "PRÓXIMA MÚSICA: Legião Urbana Disco 4 >> Pais e Filhos", _
                    "PRÓXIMA MÚSICA: Engenheiros do Hawaii Disco 7 >> Era um garoto que como eu amava os Beatles" ]
PRINCIPAL()

Func PRINCIPAL()
   ; GUI PRINCIPAL
   GUICreate("By: Fábio iGames / Pedro Pinheiro / Manimal", $Tam_Janela, 80, -1, -1, -1, BitOR($WS_EX_TOOLWINDOW, $WS_EX_COMPOSITED, $WS_EX_TOPMOST))

   ; Label da mensagem
   $Label = GUICtrlCreateLabel("", $Margem, $Altura, $Tam_Janela - ($Margem * 2), 20, $SS_RIGHT)
   GUICtrlSetColor($Label, $COLOR_WHITE) ; ajusta a cor da letra
   GUICtrlSetBkColor($Label, $GUI_BKCOLOR_TRANSPARENT)
   GUICtrlSetFont($Label, 9, $FW_SEMIBOLD, Default, "Arial")

   ; Fundo (para mostrar o efeito de transparência)
   GUICtrlCreatePic(StringRegExpReplace(@AutoItExe, "autoit3(_x64)?\.exe", "") & "Examples\GUI\msoobe.jpg", 0, 0, 500, 600, Default, $GUI_WS_EX_PARENTDRAG) ; put up the panel graphic

   ; Mostra janela principal
   GUISetState(@SW_SHOW)
   SplashTextOn("Info", "", 400, 220, Default, 100, $DLG_TEXTLEFT, "")

   ; Configura teclas
   HotKeySet("{ESC}", "_Fechar")
   HotKeySet("z", "_trocar_reserva")
   HotKeySet("a", "_trocar")

   AJUSTA_LABEL()
   Local $Tempo = _Timer_Init()
   Do
      If _Timer_Diff($Tempo) > 100 Then
         ROLA_TEXTO()
         $Tempo = _Timer_Init()
      EndIf
   Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc   ;==>PRINCIPAL

Func ROLA_TEXTO()
   If $Playing Then
      $Posicao += 1
      Local $Mostra = StringLeft($Texto, $Posicao)
      If $Posicao <= $Tamanho Then
         GUICtrlSetStyle($Label, $SS_RIGHT)
         If $Posicao > StringLen($Mostra) Then $Mostra &= _StringRepeat("  ", $Posicao - StringLen($Mostra))
         GUICtrlSetData($Label, $Mostra)
      Else
         $Mostra = StringTrimLeft($Mostra, $Posicao - $Tamanho)
         GUICtrlSetStyle($Label, $SS_LEFT)
         GUICtrlSetData($Label, $Mostra)
         If StringLen($Mostra) = 0 Then AJUSTA_LABEL()
      EndIf
      ControlSetText("Info", "", "Static1", _
            "Aperte 'Z' para trocar de mensagem na proxima volta" & @CRLF & _
            "Aperte 'A' para iniciar ou parar o texto" & @CRLF & @CRLF & _
            "Mostrando: " & $Playing & @CRLF & @CRLF & _
            "Mensagem: " & $Musicas[$Qual])
   EndIf
EndFunc   ;==>ROLA_TEXTO

Func AJUSTA_LABEL()
   $Posicao = 0
   $Texto = $Musicas[$Qual]
EndFunc   ;==>AJUSTA_LABEL

Func _TROCAR_RESERVA()
   $Qual += 1
   If $Qual >= UBound($Musicas) Then $Qual = 0
EndFunc   ;==>_TROCAR_RESERVA

Func _TROCAR()
   $Playing = not $Playing
EndFunc   ;==>_TROCAR

Func _FECHAR()
   Exit
EndFunc   ;==>_FECHAR

Neste caso, mudando as variáveis:

  • $Margem = diz quanto afastado das margens laterais vc quer
  • $Altura = diz quanto de altura em relação à janela
  • $Tam_Janela = nem precisa explicar... ;)

 

Coloquei um fundo padrão apenas para reforçar a transparência...

 

É por aí?

  • Like 4

Share this post


Link to post
Share on other sites

Olá Fábio.

 

Pelo que entendi, então não pode usar os limites da GUI, mas "caminhar" no meio da GUI, isso?

 

Bom, neste caso acho que usar o GUICtrlSetPos não seria a melhor estratégia, pois estaríamos movendo o LABEL inteiro.

 

Acho mais válido criar um LABEL fixo dentro das coordenadas que vc precisa e modificar o TEXTO dentro dele para fazer o mesmo efeito. Estou imaginando...

 

Segue novo exemplo (ainda sem janela filha) e usando Timer simples:

#include <String.au3>
#include <Timers.au3>
#include <FontConstants.au3>
#include <ColorConstantS.au3>
#include <GUIConstantsEx.au3>
#include <AutoItConstants.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

Global $Margem = 30, $Altura = 30, $Tam_Janela = 350
Global $Label, $Qual, $Posicao, $Texto, $Playing = True
Global $Tamanho = Floor(($Tam_Janela - ($Margem * 2)) / 7) - 1
Global $Musicas = [ "TOCANDO: Detonautas >> Retorno de saturno", _
                    "PRÓXIMA MÚSICA: Legião Urbana Disco 4 >> Pais e Filhos", _
                    "PRÓXIMA MÚSICA: Engenheiros do Hawaii Disco 7 >> Era um garoto que como eu amava os Beatles" ]
PRINCIPAL()

Func PRINCIPAL()
   ; GUI PRINCIPAL
   GUICreate("By: Fábio iGames / Pedro Pinheiro / Manimal", $Tam_Janela, 80, -1, -1, -1, BitOR($WS_EX_TOOLWINDOW, $WS_EX_COMPOSITED, $WS_EX_TOPMOST))

   ; Label da mensagem
   $Label = GUICtrlCreateLabel("", $Margem, $Altura, $Tam_Janela - ($Margem * 2), 20, $SS_RIGHT)
   GUICtrlSetColor($Label, $COLOR_WHITE) ; ajusta a cor da letra
   GUICtrlSetBkColor($Label, $GUI_BKCOLOR_TRANSPARENT)
   GUICtrlSetFont($Label, 9, $FW_SEMIBOLD, Default, "Arial")

   ; Fundo (para mostrar o efeito de transparência)
   GUICtrlCreatePic(StringRegExpReplace(@AutoItExe, "autoit3(_x64)?\.exe", "") & "Examples\GUI\msoobe.jpg", 0, 0, 500, 600, Default, $GUI_WS_EX_PARENTDRAG) ; put up the panel graphic

   ; Mostra janela principal
   GUISetState(@SW_SHOW)
   SplashTextOn("Info", "", 400, 220, Default, 100, $DLG_TEXTLEFT, "")

   ; Configura teclas
   HotKeySet("{ESC}", "_Fechar")
   HotKeySet("z", "_trocar_reserva")
   HotKeySet("a", "_trocar")

   AJUSTA_LABEL()
   Local $Tempo = _Timer_Init()
   Do
      If _Timer_Diff($Tempo) > 100 Then
         ROLA_TEXTO()
         $Tempo = _Timer_Init()
      EndIf
   Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc   ;==>PRINCIPAL

Func ROLA_TEXTO()
   If $Playing Then
      $Posicao += 1
      Local $Mostra = StringLeft($Texto, $Posicao)
      If $Posicao <= $Tamanho Then
         GUICtrlSetStyle($Label, $SS_RIGHT)
         If $Posicao > StringLen($Mostra) Then $Mostra &= _StringRepeat("  ", $Posicao - StringLen($Mostra))
         GUICtrlSetData($Label, $Mostra)
      Else
         $Mostra = StringTrimLeft($Mostra, $Posicao - $Tamanho)
         GUICtrlSetStyle($Label, $SS_LEFT)
         GUICtrlSetData($Label, $Mostra)
         If StringLen($Mostra) = 0 Then AJUSTA_LABEL()
      EndIf
      ControlSetText("Info", "", "Static1", _
            "Aperte 'Z' para trocar de mensagem na proxima volta" & @CRLF & _
            "Aperte 'A' para iniciar ou parar o texto" & @CRLF & @CRLF & _
            "Mostrando: " & $Playing & @CRLF & @CRLF & _
            "Mensagem: " & $Musicas[$Qual])
   EndIf
EndFunc   ;==>ROLA_TEXTO

Func AJUSTA_LABEL()
   $Posicao = 0
   $Texto = $Musicas[$Qual]
EndFunc   ;==>AJUSTA_LABEL

Func _TROCAR_RESERVA()
   $Qual += 1
   If $Qual >= UBound($Musicas) Then $Qual = 0
EndFunc   ;==>_TROCAR_RESERVA

Func _TROCAR()
   $Playing = not $Playing
EndFunc   ;==>_TROCAR

Func _FECHAR()
   Exit
EndFunc   ;==>_FECHAR

Neste caso, mudando as variáveis:

  • $Margem = diz quanto afastado das margens laterais vc quer
  • $Altura = diz quanto de altura em relação à janela
  • $Tam_Janela = nem precisa explicar... ;)

 

Coloquei um fundo padrão apenas para reforçar a transparência...

 

É por aí?

 

 

Estou sem Palavras :digno1: #ObrigadoManimal , cara vou fazer oque falei antes hein:

 

 

... acho que vou até postar os meus scripts pra você rever pra mim kkkk. :P

 

Acho que o seu exemplo está em 1º lugar agora kkkkk. BOM D+. ==> Experiência é tudo. :like_icon:

:600866: :lol: ;) :up: :guitar: :trofeu: :aplausos: :dance: B) :) :rolleyes: :D

:ILA2:

Edited by Fábio iGames
  • Like 1

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

×