resolvi criar mais um programa no C++ Builder.
Depois de algum tempo pensando no que fazer,
decidi criar um exemplo usando o evento OnKeyDown
como ponto principal, e o evento OnPaint,
que nos permite desenhar textos ou figuras
geométricas utilizando o Canvas.
Como já tinha quase tudo pronto na cabeça,
adicionei rapidamente 4 Objetos TImage,
para armazenar 4 imagens, um para cada seta do teclado.
Depois de algumas horas de lutas com os códigos,
chegamos neste excelente resultado.
Se você utiliza o Embarcadero Rad Studio em C++,
não perca este bom trabalho, e já lhe asseguro,
que dificilmente você encontrará um outro exemplo
de eventos do teclado tão claro como este.
//===========================================================================
#include <vcl.h>
#pragma hdrstopFlag
#include "Unit1.h"
#define P_CIMA 0
#define P_DIREITA 1
#define P_BAIXO 2
#define P_ESQUERDA 3
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
void inicio ( );
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1( TComponent* Owner )
: TForm ( Owner )
{
inicio ( );
}
// ==========================================================================
int tecla = 10, tecla_1 = 10;
int sentido, ult_sentido, inv_sentido;
//---------------------------------------------------------------------------
void __fastcall TForm1::Informe ( TObject *Sender ) {
Canvas -> Font -> Size = 14;
Canvas -> Font -> Color = clBlack;
Canvas -> TextOut ( 200, 240, "Por: " );
Canvas -> Font -> Color = clRed;
Canvas -> TextOut ( 240, 240, "Samuel Lima" );
Canvas -> Font -> Color = clBlack;
Canvas -> Font -> Name = "Garamond";
Canvas -> Font -> Size = 14;
Canvas -> Font -> Color = clSkyBlue;
Canvas -> TextOut ( 196, 266, "sa_sp10@hotmail.com" );
SetBkMode ( Canvas -> Handle, TRANSPARENT );
Canvas -> Font -> Color = clBlue;
Canvas -> TextOut ( 190, 260, "sa_sp10@hotmail.com" );
}
//---------------------------------------------------------------------------
void Esc_Sentido ( ) {
Form1 -> Imagem_P_cima-> Visible = false;
Form1 -> Imagem_P_direita -> Visible = false;
Form1 -> Imagem_P_baixo -> Visible = false;
Form1 -> Imagem_P_esquerda -> Visible = false;
switch ( sentido ) {
case P_CIMA: {
Form1 -> Imagem_P_cima -> Top = tecla_1 * 10;
Form1 -> Imagem_P_cima -> Left = tecla * 10;
Form1 -> Imagem_P_cima -> Visible = true;
Form1 -> Imagem_P_cima -> Repaint ( );
break;
}
case P_DIREITA: {
Form1 -> Imagem_P_direita -> Top = tecla_1 * 10;
Form1 -> Imagem_P_direita -> Left = tecla * 10;
Form1 -> Imagem_P_direita -> Visible = true;
Form1 -> Imagem_P_direita -> Repaint ( );
break;
}
case P_BAIXO: {
Form1 -> Imagem_P_baixo -> Top = tecla_1 * 10;
Form1 -> Imagem_P_baixo -> Left = tecla * 10;
Form1 -> Imagem_P_baixo -> Visible = true;
Form1 -> Imagem_P_baixo -> Repaint ( );
break;
}
case P_ESQUERDA: {
Form1 -> Imagem_P_esquerda -> Top = tecla_1 * 10;
Form1 -> Imagem_P_esquerda -> Left = tecla * 10;
Form1 -> Imagem_P_esquerda -> Visible = true;
Form1 -> Imagem_P_esquerda -> Repaint ( );
break;
}
}
}
//----------------------------------------------------------------------
void inicio ( ) {
inv_sentido++;
if ( inv_sentido > 0 )
inv_sentido = inv_sentido - 2;
if ( ult_sentido == inv_sentido ) sentido = ult_sentido;
switch ( sentido ) {
case P_CIMA:
tecla_1--;
if ( tecla_1 < 0 ) tecla_1 = 28;
break;
case P_DIREITA:
tecla++;
if ( tecla > 60 ) tecla = 0;
break;
case P_BAIXO:
tecla_1++;
if ( tecla_1 > 28 ) tecla_1 = 0;
break;
case P_ESQUERDA:
tecla--;
if ( tecla < 0 ) tecla = 60;
break;
}
ult_sentido = sentido;
Esc_Sentido ( );
}
//---------------------------------------------------------------------------
void __fastcall TForm1::OnPaint(TObject *Sender)
{
Canvas -> Pen -> Width = 10;
Canvas -> Pen -> Color = clBlue;
Canvas -> Rectangle ( 05, 05, 595, 295 );
Canvas -> Font -> Size = 14;
Canvas -> Font -> Name = "arial";
Canvas -> Font -> Color = clRed;
Canvas -> Font -> Style = TFontStyles ( ) << fsBold << fsItalic << fsUnderline;
Canvas -> TextOut ( 80, 12, "MOVENDO IMAGEM PELAS SETAS DO TECLADO" );
Informe ( Sender );
}
//-------------------------------------------------------------
void __fastcall TForm1::FormKeyDown ( TObject *Sender, WORD &Key,
TShiftState Shift )
{
inicio ( );
if ( Key == VK_LEFT ) sentido = 3;
if ( Key == VK_RIGHT) sentido = 1;
if ( Key == VK_UP ) sentido = 0;
if ( Key == VK_DOWN ) sentido = 2;
}
// ==========================================================================
//---------------------------------------------------------------------------
#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ExtCtrls.hpp>
#include <Graphics.hpp>
#include <Vcl.Imaging.GIFImg.hpp>
#include <Vcl.Imaging.pngimage.hpp>
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
TImage *Imagem_P_cima;
TImage *Imagem_P_baixo;
TImage *Imagem_P_direita;
TImage *Imagem_P_esquerda;
void __fastcall FormKeyDown ( TObject *Sender, WORD &Key,
TShiftState Shift );
void __fastcall OnPaint ( TObject *Sender );
void __fastcall Informe ( TObject *Sender );
private: // User declarations
public: // User declarations
__fastcall TForm1(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
object Form1: TForm1
Left = 272
Top = 120
Caption = 'MOVENDO IMAGEM PELAS SETAS DO TECLADO'
ClientHeight = 300
ClientWidth = 600
Color = clWhite
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
KeyPreview = True
OldCreateOrder = False
Visible = True
OnKeyDown = FormKeyDown
OnPaint = OnPaint
PixelsPerInch = 96
TextHeight = 13
object Imagem_P_cima: TImage
Left = 8
Top = 8
Width = 32
Height = 32
AutoSize = True
Picture.Data = {
0954506E67496D61676589504E470D0A1A0A0000000D49484452000000200000
00200806000000737A7AF40000000467414D410000B18F0BFC61050000000970
48597300000EC200000EC20115284A800000000774494D4507E2040A11210272
10EB050000001974455874536F667477617265005061696E742E4E4554207633
2E352E343E8DCC76000005FA4944415478DAD5975D885D5715C7D7FE3EDFE7DC
73EEB967EE64269924244D3232041B693A3A9307952245FB52225A02168B0A8A
FA283E6906F1D182B4856A5A6C154105AB2F527C31954C6A924E294631AD25C9
C466B4CDC764BEEFBD67EFE59AB4F5034C3AE36410171C36977DF7DEBFB3D6DA
FFB50E83FFB1B1FF6B801F1F3EC2C0E13F7E7FEA673FC4F5EEF15F033C75FF03
CCD33EE75C08C66E6E636974877FFAECBA20D60DF0F5FE7EC6E8D8344955D9AC
BC24C90C9915522E4BAD573EFAEC31BBA9005F6BB556DF388C82B0A89AADB22C
8A380AA2253AFC0D15046F0555D5D9FFEDA36E5300BEDCEEE37E6D7D85D80E3D
FFAE565EECAE8A661E27C915E3072FEB343DE715F92C13A2BB77E21B6B0AC59A
01BED4DFE61CD104759D13C4DE48AA83CD341D6911409A65335ED638699ACDD3
3249CE33CE66777F6BA2BE63008F0C6C61615D2BE930A3C3774475FD8198B1B1
DC0FDE5734B2302D8A37FDAA9A52656B9247E14BE4818BA0D4125052EE9E388A
1B0278787090097422E974433A7C9B6FEDFB63EB3E98201EC8941ACAA24847CD
E28669B75F9765798A47F10B2CF07FCF3CEF6FC0D9F2EE8909B721802FF6F70B
61AD17F6EA8ADC3F12587728B1EE9E0C7167CC79233446788D6C4557AD2BA22C
FF201A8D133C4D5F04DF7FD509F15647C9CEFEA3B7F6C26D011ED9B387A5D767
B5AC7B25BDF99EA8B60723EBC613E78653077908A0B5144C4621CA3C5F9265F3
2FB2D57A85E7F9490883DFD55AFFB963CC1C32D63B303181EB02F8DCD076C61D
CA70653931BDDE2E02188D6B3B9A593B923AEC8F017C0F810BCE806B0D3C8A6A
D12CE6455F35CD8AE2251B04BFE96835D591F28D1EC2C2471E7FAC5E17C017B6
0C0A8618EBBA1EF4BBDDBBFDBA3E14597B776AED00B93F4E11844F5946A20094
74C03C8398A5B5A57CB05976AEE7FB27BA5A4DD6529EED0939B368FC95234F7F
DFAD19E0F3ED2D86262B69ED3E02B8C7EBF50E1A0A43E05C49007E09C0535AAE
E86152021A8DDDC0AF17C360A11385976D149D45DF3F895A4F5A6D5EEB26E93C
0AE93E73EC495C13C067ABB6A1A14F3ABBD7F4EA11DDEB0EF3DADE453762A840
C80700548B967B8C8330F4D720A8978DBE715DF29979A32F61149DE741F00A33
DE19F4BCD75DA35840B90E80C3CD52D2900AE7DABAB65B44DDDB66ADDD2F1147
2B805DBB1082015A1E7201320C8167E93279E0C2550E5357189C5D51EA026833
CDB4BEC8FDE0AA2AABEEC3CF3CBDF6108C4631A74173C0402044D2B98A9E7B43
C44F0C021CD887900CD1FA5848504902B228E65D1A9F9D33FAD7339C9DFC6BDD
3B7F6369E5EA8AB50B5E1074BF3939F91FF5E096000374BD6ECE332E1917AA09
50C6886329C027B711DF3042B69DE613A1402709D2159C678D748AE2FFCB6BA1
F7DB4B8017FE787966FEC4B9577BA7AECDDE528C6EAB037D74C76A2E98A09ABF
15B108000F11C0A7B7028C0D23FB3700AACD732CCFCED838FAC572161F9F8FC3
8B6F2E2C2C1EF9D14F6E5B13DE53093DE3B31890EF20009F0012808708607C15
60C7CD1028306F7B608E37B2332E897EDECDD3E39D3C9B769C2D8E3FFAB8DD10
C0AA95C613EB03C88E778B741A395FFCD0771EDB3C80ED24440925E1BB21D834
802601EC444700F00E001B7F3B09FF09F08E074E13C073BD3B0DD0F27CB1FD5F
0006908DED05680C5195894905751CA32209E68DF40C26F1733501D445360DAB
008FDE01808124115BAD2D3CC4F108E12112A2B19D088D7EF2404075C0848153
59362BD3E434A75BC09BF90BAC2C2E11C0D2A1EF3EB171805D55C5DB9D4E6E9C
1BA50AF8600E706F1F6283249979D4A869EA8A4D145ED76138A5E2F8575EABF9
A25FB52E7329963FFCC4931B6B48566D78EB20AF96966365DD3E4D5E2041DA97
933A26804C5335544A59E37973C6F75EF3A2F8545C957F4ADBED6B04D0BDEF7B
C7360E30B26388B51696B572B6A91006498E9B29A28E1041D10E8A8A8CD1A663
3C73DD0FA399B46A5D6DF4F7AF1080FDD8B1A736D613BE6BF70D0C70E59CD408
264054D413B2F0260003293818A50942D75E1876D35659E7ED3E77FF0F9E79CF
D67CDD1F265F79E0E3CCAC9661DADA20754304C1D101F58D2069FCEAF3CF6FEE
A7D99DB6BF0366605B3FDE6525630000000049454E44AE426082}
end
object Imagem_P_esquerda: TImage
Left = 8
Top = 266
Width = 32
Height = 32
AutoSize = True
Picture.Data = {
0954506E67496D61676589504E470D0A1A0A0000000D49484452000000200000
00200806000000737A7AF40000000467414D410000B18F0BFC61050000000970
48597300000EC200000EC20115284A800000000774494D4507E2040A11210272
10EB050000001974455874536F667477617265005061696E742E4E4554207633
2E352E343E8DCC76000005864944415478DAED964B6C155518C7CF6B1EB7B72D
6DA9505A1E6D152D58ABA080C68D5BE3C28DBA92442271658C0B13E3A3445DBA
736BE20B2526EA868751D8682112638CA09160882062A905EEBD3377EECC9D39
CFCFEF16AB2D58A1C6604C38C9E4CECC9D39E737FFEF7FFEE750F21F377A1DE0
7F0BF0F6E34FCCBCFBD81BAFC335077877DB76E6C05182433B00D8B6F32D774D
00BE1E1FA771B5C69338F66551F8C618C8B59667EBB17AF9F0E17F0471D50047
77ECA0D6392F8DA2B6A452599A67598F52DAA64A9EFB298EAB9F9D39ADBEAAC5
8B86B822C089F11DF80C506BAC6F8D6E4F93647954A9DC94361A83859479AAF5
F7D3529E487CDED8383C68D7DCD00B8CCEE916CB64AD23C658C08338ACD9FD6F
BC09570FF0E23827002168DD03B218C893C6DA5AA5321AC5D19AAC28AA4D7087
F25278A463596F7575EF525D0E029837FE450050CA38044011C1E05DFBC03B3B
E16F018E8FBF44B9B39C185D42F41B88524390E7A3AAD1188BABD55BAAD54A57
A328CE58DF3B18F4F41CEDE9E9AA740681F2187373BBB5485068ED9242EAA652
99B12E41C27CEB8103764180A3CFED603E058F0374102DFB206BDE08593A0A69
7A9B4E9291348E07EAF53A97D69E15EDE56FDBBBBB4F964BA51807370C27C61C
F5894180444A5B69E6595DCAB3CADA93C0D8F493478FC8CB003E78782BED0E7D
56F6841F7AA233107C35B3663D0E3EE6E2789D8BA22113D797AB346D974A1110
5EE277769C0FDACBB11042524A2D9D930A780A1A1C8950FF73CD665453F23BE9
DCE784F1636278287D7AFF7EF803E0FD871EA548CF3A390DDB28591A1018F4C1
8D0AA36E2759B61EE278B58DE21E5B4F425714BCF5992C082D2FB7691E048632
D6EA6C5E28B52E34E644D568FBAB9295AA315F48808F88105F06EBD6C5CF7CFA
C965005E196C6709DC5A61F566AFC8EFE2593AC21A8D01923496600942C80B06
E866824EA34210EA79F8CB514A3ACF54B3240A8F2A7AFFAC73D52A818392925D
C4F30E95376CAC3DFBF1BEF90014C0F364DE2D8C1CE552DEC79BD93D3CA9AFF5
9246AFC89A21DE43912D9DED7DC6EE33C7C27E56F87F85519862B45663F4A064
F43DEA07131D9B36D79EDBB7670EC0235B294E3526ABE73B6CDEBC99CAE25E81
007E9A8D8679BEA2A4743934960B00D67A1E83989896CB5BE74834FBC57F2A70
F14CE36FC4194C7316C59C4D28C610C09FE8DA7277ED85BDBB611EF69B0F3C48
2B3FFD18681C9069BDDE977243A8D4589B366BDBADEB6F73D089DEF0B1ACB440
CD337C27BF28332C14810615C8D01F91E051C6F884E16C174380DE2D9B6BAFEC
D90397E9F6C2CA95DC695DE6D62EF3AC1D0CAC5B57B26EACCDBA5BCBE0D6941C
2CB10482043D5843016A946804D17666FA5DBA3052BC89C2A2024A8848337618
38FF90FBFEE1FE2D9BA25777FF05C0F3FDFD14238BE1578658EC2E61615568CC
0842DC5E76EED6D0B9419CDBBD08E05F20909E27643A22A4A2094151C0924B29
5A1E619828423408E7C728E713C2F78FADDA7C67FADAEEBDB060123EB5A2AF55
EBC0B3AE23D4A62FB476B8E4705A3AB803D3EDE61C432A0138778EC037D384FC
80D71102283A2788660118E7C085508C8B0B8CB333A8C0857D53536A61EBFEDE
9EEC5FC1B873825B57C2522C0D9C1DE60EC630CF6F4315FA7202E76B005FFC0C
70A4E6DC053468C1E601C00C000E4E84E7390C2BAC022FB8EFE9FD9393EE8A00
ADB67DE540EB198E460C4AC67423C04A076404B55E83599AD79DFBF6B435C74F
1953C54F52EE92286EAD8CBEEF9152A9047EE0230C87EF4E9DBEFAD5B0D5B6AD
5A45DBAC65A1750297B77643683F020CB46236B176F21725A74E4B991668FA94
0928647ED5DBB445ED88B68F8C50D12C0435A68C26EDD4CED18635E964516467
8AA6C2B2C0342EBD8BE973D17BC227068728D3384BD01BC639820016011C02C0
246E3A16DBDFFF775B7E1DE03AC0BFD57E0317445C4EE803EE55000000004945
4E44AE426082}
end
object Imagem_P_baixo: TImage
Left = 560
Top = 266
Width = 32
Height = 32
AutoSize = True
Picture.Data = {
0954506E67496D61676589504E470D0A1A0A0000000D49484452000000200000
00200806000000737A7AF40000000467414D410000B18F0BFC61050000000970
48597300000EC200000EC20115284A800000000774494D4507E2040A11210272
10EB050000001974455874536F667477617265005061696E742E4E4554207633
2E352E343E8DCC76000005F94944415478DAC5975B885D6715C7D7FABE7DCE99
6B32B9B43AA9B951DB148D14A7496C26D8FA22C5172FA082685BDAB4853608F5
5164A24FE2A38A824AA542A962F0A54A91A23E24A3D314530983B93421C92433
3967F6D967EFB3EF7B7F77D7515B2B82732D5DB0D9700EFB5BBFBDBEB5FEDF7F
23BCCF816B7DE0FB8F3C821A1918CEC1D2DD2282400735AD24C0C10F5EF99DDB
7480571F7F0CA3CE324BBA815717455348E9092599361694735010448AE84A44
25894731A65F5B5AB29B02F0FBE34FA2D586F7DBEDA1C4EFEEA88A7C52D4629B
90A2A5B4668ADE372780045112484F212C2AC67BDDB161397F7D61C56AAC08F0
DAD3C7190134934E677BE607F7D579764454F53DA2AEB728A5B8A40AA4802E42
C833C48B12F18CE2ECA23F329C5DB8B5B862155604F8D3B3CF0C00862BBFBBAB
EEF61E5459F619591453222FB64921786D2D86086E19B11F01BC4EBDF01BC1D8
5CA7D58AAEFAFEC6014E7FFD59EA363BE28270B7ED450FD92CFF9C4ED2C32A8E
274451B2D218688373D710FA3EC06C8EF0724D55B8C579B894A666C3007F7EFE
C40060D40BE33D5E143F8C69F679DB4F0EA95EB8556619665AC3023A7709A0BF
846E360578B922EE1BC8C26E5D6D02C0374E7024806698EC6910004B7302880F
EBA0B745A629A646C30DAAC00584F816B8336F035C23809EA83717A0F92F802F
10C021F53F008E00E0DF0078FA3A6218BC9700830A0802C88C82EB00EF1DC099
E79FE3CCBAD156141340B226800CD0D6A2721B0278E9AB5FF6EE1C1B1B1DCF8A
BDC371F630A72970D1BBB740D116BC03309B00FCB224805B0460AC319E356ED9
58B72E8023DB27D8B103F7363EB26B727C37E0BEED45FDC9565E7CD6F59329AA
C0F87F03407C13608E007E4D8234DB03089CA53F9DD5B4945BD2C6AD09E0DBD3
D3AC2ECBE610E7635B4786767CD06BEC9FB4EEE816213FCD92ECA00EC37195A6
9051132E50828B741C2C029C2339FEAD66EC75BA7C43EA68014B5A4ECEE5995D
35C08B8F3DC154E0376D55EE7052EE0529F60C29B56FA783833B2C4C35CB6A9F
8D93615D145058034B740A5E45284988AE6AC439CEF979E3356E4A8FDF368C75
68C9E4542FD0AB02F8C5F16710E99061FD700CEBFA6E27EA43B62CEFC73CDF3F
2EE4EE6DDA4E0E0BB915CAD2334240ED2C740960094091244706D982F5F85BB2
D1BC201ADEBC669C340A967FEE77C4EA018C66CD3419E752DC83524E63551DE5
797E90F67FD768518E51053C14121DA9206D32247405003646AC4AC602C1F9E5
BAD1385B359B6F68CE2FD2E6FB3FEDDC5E1DC03F3BFF89A7D8A8A8861A464F7A
5A1F6C4A35DDA8AA633C8E0F7092608C13CFD56443E81C30741A562444098221
802CE17C29E7FCCDCAF34E13C09BD2F3161DFDFE93DB8B66D50083F8E37327BC
06C2584BEBBB5A524DF1B2FC940BC307CCB2BFC7F4C2719BE79E951206134627
A0CD00AA84613BE67C3EF3F85CC5F99C6834AE1643C3A965A87FB670636D5370
6E66863C8E6BB484D8E249F96128CA4FD8283AAABBDDFB69043FA4A36844E705
4A1AAF82BA3C6110A58C5DC8393B937BFC2C015CD65E2348B64DC8172E5F5E9F
0E9C3F7912C9F6B49831774055DD6B93E441D3EF1F3341F051E97777D6FD78A8
10C26496B411F15ACAD91B2567A74BCF9B2F1A9E4FBEB1FE71BBFD7FE5784525
BC323343CED30DBBBAFE802BAB8FD93C7B4807C111D1E9DC9D533FC4792E63A5
16C8139ECB38FB0BBDF9DF2A8FDF4C5BCD8226C2BCB8B8B83129BE327392FC8E
63A0D40835DD5E9B170FA8A03B5DF9FE5412867786FDB888AAF2EF9973B3B9E7
FD95925FD70CE3C2F3D40B4BB737EE09DF01F9D68CE7AC9BD069BA5FF47A87EB
B87F3489E3C96ED88B7A49329F6B7596925FA2F24764D5C58FDA9DCD71C56FC7
A599EF0CC6AE5987D1844C9203A22A3F9EA5E94E9F00BA5178A5A8ABB7146287
20AA1F769657957C4D008338FFCD93ACF4FD962ACB3BB49477E5653E128461E6
F7BA415E16A173AEF85EB7BBA2075837C020FEF0E8714EC9878CD6C3825C719A
C622E8F9759226CA596BBFDB6E6FFE97D1BBE3D4971E2579A0A604E07427BF6A
4C2D2BFBE4ABAFAC29F1BA0106F1AB2F7EED3FCF3184AF9C7A695DC9D70DB099
F1BE03FC0341D13E5DDAC106900000000049454E44AE426082}
end
object Imagem_P_direita: TImage
Left = 560
Top = 8
Width = 32
Height = 32
AutoSize = True
Picture.Data = {
0954506E67496D61676589504E470D0A1A0A0000000D49484452000000200000
00200806000000737A7AF40000000467414D410000B18F0BFC61050000000970
48597300000EC200000EC20115284A800000000774494D4507E2040A11210272
10EB050000001974455874536F667477617265005061696E742E4E4554207633
2E352E343E8DCC760000058C4944415478DAED964B6C156514C7BFF33D67EECC
9D3B73EF052A54443044834130C618085437A01161A32606C457E2D69D4B3554
25262E8C71453098E04ADDB8206EDD180514B456A8A2D0425B5EA5C5B6B7771E
DFC3730B02D7A280488809273399CCE47BFCE69CFF39DF0172930D6E01DC02F8
5F02747206F3BD12747A1E2D33CE38A50428D55670BBADFF88BBA1001D8C0207
6801480408102014943AFC34EE386FE892A7B7F7F55D35C4350178CA87D06AF0
08E10B940A6F976A6EC458A7004A1821439CB86102309932AAA718B33B8E1DBB
22481BC0D2850BC0680379969366B309795E10EB5CDB208A9724442EE4BCB680
F17B2A94DEA708F111608002E93314069B9C8F4D099EE170B37D70C85D15C0DA
CE4E6AF242586B3CADB5D045418DD68438D7C66911400378554A67DD01B0BC0A
B0D227301BC3728252F811017A32CA0E678C9E318C360D6AE383E1E3F68A00EB
E6CE9526CF675963E75BA367E1E6D21A03E7002E1ABE51F489F401920E42EE9E
43E0FE08600EBE4F30805F3485EF9B94F6A68C1D4E053F51303A81D3B2F78F9F
B07F0BF0CA8627E0D89EEF429DE74B9C315DC49825A07599D89900AD3908C004
4A2221A43E1B75398B40181192A31746524AFB1B94FED464F48794F33ECD0085
006751A429E5DCBE3D3CEC6600BCBA613D0CEFDE9BA0075680314F611C5648AD
13612CCACBC1F47FFF851B634E034244D5E14D084300CB08644D0ABF37800E4C
B169881E0CC5C182B17EC3D8292A44E3ADC1413303E0B5F5EB6164F79EAACDF3
2E6EECC6C09AAE449B24B016B8BBBC86508C04C5083E3E83568638D24A459711
C8A7288C4F323A8C423C944AD9932BB5DF0A7140F8FEF1FA9D77652FEEFADCB5
01BCF5C40638BBFB9BAA430069EDA6D8D8AE0E6393043D20CEFF3D9C7FBA4B26
D2739E209C4C0B63DA50A036E5CC34A568A4B8611E06BDBA147CED94F715F34B
BFA8DAEC0910C23EF3C94E770160EBBAF530B1770F02645DCABA4D55EB56CFB5
AE5AB70EA4FBBB2C72E7685A69FAE79856B018734629A783525A44E51113550E
1904C06F5F6AAE7A0BE58FA1AB8A673EFBF822C03B8FAF83C6FE7D555214AB94
231B6B0456CFA3B45623B495F36DE9E22E3C1D386D882B0AE2CEA72B705481EF
5908C39444E5DF6DB93C6482B0AFF0FC6F35137B9A400F35808D633AB403BCFB
E863901D3C1813AD1F52004FD6385F799B54F51A174C606061E6BF83437D982C
E3A631256C86B5AF1506CF33AC12A52C8947218E8F922038A0B9FC2107DA8BDA
E89F72E4CCB8712902D83680F7D6AE057DF8488869B74451FA7055AAA5734AA5
249192B7CA2C5C522FA673C23986C54A65938D381F9F980DBA8894944486E124
8F2B2769921CA1717C1082B0C7327E20D3E6685AE8F146A1F3B134B74F7FBAB3
5D842DFB60D97205D67648C61655949A572FF941A414C3DC6E2BC5AD4A5858CB
1BCD663C3936B6484F36EE538CCDAB542A268CE32111457D18821F71F35E084A
BF11A14E182C52B98362D9D62D338AD185B577AE59C3504C3E67342A4919449E
129E1094B505C011DC9C8E67991C1D3D5BCF464797B1BC585DF6BCF9B55AFD6C
5CABFD2CCBE51EF0FD5E22E511E0FC34E102CB3133F774BF7159355F587DD773
9B5B9E6658CF39E78CA1F729C3A3F7D2FD5B626F64191C1D3923264E8DD4FC66
BABC047455E079B5244E06AAF57AAF1F950F81F28630D546F1644C17BFD96DC8
3F589BBEBE78E945EC2B000918C11B584B5A978C689D8C03A74760DFE17E16E5
A6DCA1D4E250887B3DA5FCB05CEE4FEAF55FC3283AC9B898C43E256F697571F7
96AB3B0DAFC51EACC6F491F90BE49D715C0BA59A23A5607E108C46F5FA993049
B00AD362D9962D57D594FCEB9EF0F5152BE8BC4A2C7D2114C60CBDEEE5511CE7
71AD6A1EE8EEBE311DD15F6DC7E617E8B44A70150AD43DBB63BBBDD635AEBB2B
FEE8A597A7D778FEC36DD7D48CFE6700D76BB7006E3AC01F83444D3F9E2B3792
0000000049454E44AE426082}
end
end
Nenhum comentário:
Postar um comentário
Observação: somente um membro deste blog pode postar um comentário.