DragDrop TreeView

Delphi

25/04/2007

Ví uma matéria do Adriano Santos, sobre Dragdrop de vários objetos, simplesmente sensacional.
Mas eu estou com a seguinte necessidade: Preciso arrastar de um TreeView para outro levando os ítens e subitens.
Alguém sabe como fazer?


Nigro

Nigro

Curtidas 0

Respostas

Nigro

Nigro

25/04/2007

O que está feito:

TreeView da esquerda pode mover dados dentro dela mesma ou para a TreeView da esquerda, até ai jóia...

O meu problema:

Quando arrasto da TreeView da esquerda para a TreeView da direita não está respeitando a hierarquia.
Alguém sabe como resolver?


GOSTEI 0
Adriano Santos

Adriano Santos

25/04/2007

Interessante a rotina [b:c0776b6648]Nigro[/b:c0776b6648], fiz um teste meio rápido aqui e não funcionou, mas como já é tarde neste momento, acho que é o sono. Pode postar como está fazendo o DragAndDrop?


GOSTEI 0
Nigro

Nigro

25/04/2007

Olá Adriano Santos
Valeu pela força, segue .pas
unit PGTI001;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, db, dbTables,
StdCtrls, Buttons, ComCtrls, ImgList;

type
Tfrm_doc_banco = class(TForm)
tvGeral: TTreeView;
btn_sair: TSpeedButton;
edtNodeG: TEdit;
sbAdItemG: TSpeedButton;
ImageList: TImageList;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
edtItemG: TEdit;
sbAdSubItemG: TSpeedButton;
Label4: TLabel;
edtBuscaG: TEdit;
btBuscaG: TSpeedButton;
Label5: TLabel;
btApagaG: TSpeedButton;
btnGerarG: TBitBtn;
tvManut: TTreeView;
Label6: TLabel;
Label7: TLabel;
btBuscaM: TSpeedButton;
edtBuscaM: TEdit;
btApagaM: TSpeedButton;
Label8: TLabel;
sbAdItemM: TSpeedButton;
Label9: TLabel;
edtItemM: TEdit;
Label10: TLabel;
sbAdSubItemM: TSpeedButton;
edtNodeM: TEdit;
procedure btn_sairClick(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure sbAdItemGClick(Sender: TObject);
procedure sbAdSubItemGClick(Sender: TObject);
procedure tvGeralMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure btBuscaGClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure btApagaGClick(Sender: TObject);

procedure MontaTreeView(pTreeView: TTreeView; Item: TTreeNode; pTexto: string; pEditBusca: TEdit; pBtBusca: TSpeedButton);
procedure tvGeralGetSelectedIndex(Sender: TObject; Node: TTreeNode);
procedure tvGeralGetImageIndex(Sender: TObject; Node: TTreeNode);
procedure btnGerarGClick(Sender: TObject);
procedure tvManutDragDrop(Sender, Source: TObject; X, Y: Integer);
procedure tvManutDragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
procedure tvGeralEndDrag(Sender, Target: TObject; X, Y: Integer);
procedure btBuscaMClick(Sender: TObject);
procedure tvGeralDragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
procedure tvGeralDragDrop(Sender, Source: TObject; X, Y: Integer);
procedure btApagaMClick(Sender: TObject);
procedure sbAdItemMClick(Sender: TObject);
procedure sbAdSubItemMClick(Sender: TObject);

private

public

end;

var
frm_doc_banco: Tfrm_doc_banco;

implementation

uses PGGP017, GSMLIB;

{$R *.DFM}

procedure Tfrm_doc_banco.btn_sairClick(Sender: TObject);
begin
tvGeral.SaveToFile(´C:\RONNEY.txt´);
Close;
end;

procedure Tfrm_doc_banco.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #27 then
btn_sairClick(nil);
end;

procedure Tfrm_doc_banco.MontaTreeView(pTreeView: TTreeView; Item: TTreeNode; pTexto: string; pEditBusca: TEdit; pBtBusca: TSpeedButton);
begin
if Trim(pTexto) = ´´ then
Exit;

if Item <> nil then
pTreeView.Items.AddChild(Item, pTexto)
else
pTreeView.Items.Add(Item, pTexto);

pEditBusca.Text := pTexto;
TSpeedButton(pBtBusca).Click;
pEditBusca.Text := ´´;
end;

procedure Tfrm_doc_banco.sbAdItemGClick(Sender: TObject);
begin
MontaTreeView(tvGeral, nil, EdtItemG.Text, edtBuscaG, btBuscaG);
end;

procedure Tfrm_doc_banco.sbAdSubItemGClick(Sender: TObject);
begin
MontaTreeView(tvGeral, tvGeral.Selected, EdtNodeG.Text, edtBuscaG, btBuscaG);
end;

procedure Tfrm_doc_banco.tvGeralMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
edtItemG.Text := ´´;
edtNodeG.Text := ´´;

if tvGeral.GetNodeAt(X, Y) = nil then
Exit;

edtBuscaG.text := tvGeral.GetNodeAt(X, Y).Text;
edtItemG.Text := tvGeral.GetNodeAt(X, Y).Text;
end;

procedure Tfrm_doc_banco.tvGeralGetSelectedIndex(Sender: TObject; Node: TTreeNode);
begin
Node.SelectedIndex := Node.ImageIndex;
end;

procedure Tfrm_doc_banco.tvGeralGetImageIndex(Sender: TObject; Node: TTreeNode);
begin
if Node.HasChildren then
if Node.Expanded then
Node.ImageIndex := 3
else
Node.ImageIndex := 0
else
Node.ImageIndex := 1;
end;

procedure Tfrm_doc_banco.btBuscaGClick(Sender: TObject);
var
iContador: Integer;
begin
tvGeral.SetFocus;

for iContador := 0 to tvGeral.Items.Count - 1 do
tvGeral.Items[iContador].Selected := (tvGeral.Items[iContador].Text = edtBuscaG.Text);
end;

procedure Tfrm_doc_banco.FormShow(Sender: TObject);
begin
if FileExists(´C:\RONNEY.txt´) then
tvGeral.LoadFromFile(´C:\RONNEY.txt´);
end;

procedure Tfrm_doc_banco.btApagaGClick(Sender: TObject);
begin
if tvGeral.Selected <> nil then
tvGeral.Selected.Delete;
end;

procedure Tfrm_doc_banco.btnGerarGClick(Sender: TObject);
var
iNivel, iContador: Integer;
sModulo, sObjeto, sObjetoPai: string;
begin
with tQuery.Create(Self) do
begin
DataBaseName := ´DBGSM´;
eSQL(´DELETE TDOCUMENTACAO´);

iNivel := 0;
sObjetoPai := ´ ´;
for iContador := 0 to tvGeral.Items.Count - 1 do
begin
sObjeto := tvGeral.Items[iContador].Text;

if tvGeral.Items[iContador].Parent <> nil then
begin
if sObjetoPai <> tvGeral.Items[iContador].Parent.Text then
inc(iNivel);

sObjetoPai := tvGeral.Items[iContador].Parent.Text;
end
else
begin
iNivel := 0;
sObjetoPai := ´ ´;
end;
sModulo := iif(iNivel = 0, sObjeto, ´´);

SQL.Clear;
try
datm_main.db_gsm.StartTransaction;
SQL.Add(´INSERT INTO TDOCUMENTACAO ´);
SQL.Add(´VALUES (´´´ + sModulo + ´´´, ´´´ + sObjeto + ´´´, ´ + IntToStr(iNivel) + ´, ´´´ + sObjetoPai + ´´´)´);
ExecSQL;
datm_main.db_gsm.Commit;
except
on E: Exception do
TrataErro(E);
end;
end;
end;
end;

procedure Tfrm_doc_banco.tvManutDragDrop(Sender, Source: TObject; X, Y: Integer);
begin
if Sender = tvGeral then
tvGeral.EndDrag(True);
end;

procedure Tfrm_doc_banco.tvManutDragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean);
begin
Accept := (Source = tvGeral);
end;

procedure Tfrm_doc_banco.tvGeralEndDrag(Sender, Target: TObject; X, Y: Integer);
var
Node, TargetNode : TTreeNode;
begin
if Target = nil then
Exit;

if TTreeView(Target) = tvGeral then
Exit;

if tvManut.Items.Count = 0 then
MontaTreeView(tvManut, nil, tvGeral.Selected.Text, edtBuscaG, btBuscaG)
else
MontaTreeView(tvManut, tvManut.GetNodeAt(X, Y), tvGeral.Selected.Text, edtBuscaG, btBuscaG);

Node := tvGeral.Selected.getFirstChild;
tvGeral.Selected.getFirstChild.Selected := True;
while Node <> nil do
begin
tvManut.SetFocus;
MontaTreeView(tvManut, tvManut.GetNodeAt(X, Y), Node.Text, edtBuscaG, btBuscaG);
Node := tvGeral.Selected.GetNextChild(Node);
end;
end;

procedure Tfrm_doc_banco.btBuscaMClick(Sender: TObject);
var
iContador: Integer;
begin
tvManut.SetFocus;
Exit;

for iContador := 0 to tvManut.Items.Count - 1 do
tvManut.Items[iContador].Selected := (tvManut.Items[iContador].Text = edtBuscaM.Text);
end;

procedure Tfrm_doc_banco.tvGeralDragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean);
var
TargetNode, SourceNode: TTreeNode;
begin
TargetNode := tvGeral.GetNodeAt(X, Y);

if (Source = Sender) and (TargetNode <> nil) then
begin
Accept := True;

SourceNode := tvGeral.Selected;
while (TargetNode.Parent <> nil) and (TargetNode <> SourceNode) do
TargetNode := TargetNode.Parent;

if TargetNode = SourceNode then
Accept := False;
end
else
Accept := False;
end;

procedure Tfrm_doc_banco.tvGeralDragDrop(Sender, Source: TObject; X,
Y: Integer);
var
TargetNode, SourceNode: TTreeNode;
begin
TargetNode := tvGeral.GetNodeAt(X, Y);
if TargetNode <> nil then
begin
SourceNode := tvGeral.Selected;
SourceNode.MoveTo(TargetNode, naAddChildFirst);
TargetNode.Expand(False);
tvGeral.Selected := TargetNode;
end;
end;

procedure Tfrm_doc_banco.btApagaMClick(Sender: TObject);
begin
if tvManut.Selected <> nil then
tvManut.Selected.Delete;
end;

procedure Tfrm_doc_banco.sbAdItemMClick(Sender: TObject);
begin
MontaTreeView(tvManut, nil, EdtItemM.Text, edtBuscaM, btBuscaM);
end;

procedure Tfrm_doc_banco.sbAdSubItemMClick(Sender: TObject);
begin
MontaTreeView(tvManut, tvManut.Selected, EdtNodeM.Text, edtBuscaM, btBuscaM);
end;

end.


GOSTEI 0
Nigro

Nigro

25/04/2007

Segue .dfm

object frm_doc_banco: Tfrm_doc_banco
Left = 196
Top = 102
Width = 640
Height = 480
BorderIcons = [biSystemMenu]
Caption = ´Documentação de Banco de Dados´
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = ´MS Sans Serif´
Font.Style = []
KeyPreview = True
OldCreateOrder = False
Position = poScreenCenter
OnKeyPress = FormKeyPress
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 13
object btn_sair: TSpeedButton
Left = 600
Top = 422
Width = 25
Height = 25
Hint = ´Sair´
Flat = True
Glyph.Data = {
76010000424D7601000000000000760000002800000020000000100000000100
0400000000000001000000000000000000001000000010000000000000000000
800000800000008080008000000080008000808000007F7F7F00BFBFBF000000
FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFFFF00330000000000
03333377777777777F333301BBBBBBBB033333773F3333337F3333011BBBBBBB
0333337F73F333337F33330111BBBBBB0333337F373F33337F333301110BBBBB
0333337F337F33337F333301110BBBBB0333337F337F33337F333301110BBBBB
0333337F337F33337F333301110BBBBB0333337F337F33337F333301110BBBBB
0333337F337F33337F333301110BBBBB0333337F337FF3337F33330111B0BBBB
0333337F337733337F333301110BBBBB0333337F337F33337F333301110BBBBB
0333337F3F7F33337F333301E10BBBBB0333337F7F7F33337F333301EE0BBBBB
0333337F777FFFFF7F3333000000000003333377777777777333}
NumGlyphs = 2
ParentShowHint = False
ShowHint = True
OnClick = btn_sairClick
end
object sbAdItemG: TSpeedButton
Left = 600
Top = 312
Width = 23
Height = 22
Caption = ´...´
OnClick = sbAdItemGClick
end
object Label1: TLabel
Left = 328
Top = 56
Width = 101
Height = 13
Caption = ´Documentação Geral´
end
object Label2: TLabel
Left = 328
Top = 296
Width = 67
Height = 13
Caption = ´Adicionar Ítem´
end
object Label3: TLabel
Left = 328
Top = 344
Width = 89
Height = 13
Caption = ´Adicionar Sub Ítem´
end
object sbAdSubItemG: TSpeedButton
Left = 600
Top = 360
Width = 23
Height = 22
Caption = ´...´
OnClick = sbAdSubItemGClick
end
object Label4: TLabel
Left = 328
Top = 8
Width = 30
Height = 13
Caption = ´Busca´
end
object btBuscaG: TSpeedButton
Left = 600
Top = 24
Width = 23
Height = 22
Caption = ´...´
OnClick = btBuscaGClick
end
object Label5: TLabel
Left = 504
Top = 392
Width = 85
Height = 13
Caption = ´Remover Seleção´
end
object btApagaG: TSpeedButton
Left = 600
Top = 392
Width = 23
Height = 22
Caption = ´...´
OnClick = btApagaGClick
end
object Label6: TLabel
Left = 8
Top = 56
Width = 115
Height = 13
Caption = ´Módulo em Manutenção´
end
object Label7: TLabel
Left = 8
Top = 8
Width = 30
Height = 13
Caption = ´Busca´
end
object btBuscaM: TSpeedButton
Left = 280
Top = 24
Width = 23
Height = 22
Caption = ´...´
OnClick = btBuscaMClick
end
object btApagaM: TSpeedButton
Left = 280
Top = 392
Width = 23
Height = 22
Caption = ´...´
OnClick = btApagaMClick
end
object Label8: TLabel
Left = 184
Top = 392
Width = 85
Height = 13
Caption = ´Remover Seleção´
end
object sbAdItemM: TSpeedButton
Left = 280
Top = 312
Width = 23
Height = 22
Caption = ´...´
OnClick = sbAdItemMClick
end
object Label9: TLabel
Left = 8
Top = 296
Width = 67
Height = 13
Caption = ´Adicionar Ítem´
end
object Label10: TLabel
Left = 8
Top = 344
Width = 89
Height = 13
Caption = ´Adicionar Sub Ítem´
end
object sbAdSubItemM: TSpeedButton
Left = 280
Top = 360
Width = 23
Height = 22
Caption = ´...´
OnClick = sbAdSubItemMClick
end
object tvGeral: TTreeView
Left = 328
Top = 72
Width = 297
Height = 217
DragMode = dmAutomatic
Images = ImageList
Indent = 19
TabOrder = 0
OnDragDrop = tvGeralDragDrop
OnDragOver = tvGeralDragOver
OnEndDrag = tvGeralEndDrag
OnGetImageIndex = tvGeralGetImageIndex
OnGetSelectedIndex = tvGeralGetSelectedIndex
OnMouseDown = tvGeralMouseDown
end
object edtNodeG: TEdit
Left = 328
Top = 360
Width = 265
Height = 21
TabOrder = 1
end
object edtItemG: TEdit
Left = 328
Top = 312
Width = 265
Height = 21
TabOrder = 2
end
object edtBuscaG: TEdit
Left = 328
Top = 24
Width = 265
Height = 21
TabOrder = 3
end
object btnGerarG: TBitBtn
Left = 328
Top = 424
Width = 75
Height = 25
Caption = ´Gerar´
TabOrder = 4
OnClick = btnGerarGClick
end
object tvManut: TTreeView
Left = 8
Top = 72
Width = 297
Height = 217
Images = ImageList
Indent = 19
TabOrder = 5
OnDragDrop = tvManutDragDrop
OnDragOver = tvManutDragOver
OnGetImageIndex = tvGeralGetImageIndex
OnGetSelectedIndex = tvGeralGetSelectedIndex
end
object edtBuscaM: TEdit
Left = 8
Top = 24
Width = 265
Height = 21
TabOrder = 6
end
object edtItemM: TEdit
Left = 8
Top = 312
Width = 265
Height = 21
TabOrder = 7
end
object edtNodeM: TEdit
Left = 8
Top = 360
Width = 265
Height = 21
TabOrder = 8
end
object ImageList: TImageList
Left = 304
Top = 112
Bitmap = {
494C010107000900040010001000FFFFFFFFFF00FFFFFFFFFFFFFFFF424D3600
0000000000003600000028000000400000003000000001002000000000000030
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000800000FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF00FFFFFF00FFFFFF00FFFFFF000080000000800000FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF00FFFFFF00FFFFFF000080000000800000008000000080000000800000FFFF
FF00FFFFFF00FFFFFF0000000000000000000000000000000000000000000000
0000000000000000FF0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000FFFFFF000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF00FFFFFF00FFFFFF00FFFFFF000080000000800000FFFFFF00FFFFFF000080
0000FFFFFF00FFFFFF0000000000000000000000000000000000000000000000
00000000FF000000FF0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000FFFFFF000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000800000FFFFFF00FFFFFF000080
0000FFFFFF00FFFFFF0000000000000000000000000000000000000000000000
FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000
FF00000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000FFFFFF000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF00FFFFFF0000800000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000080
0000FFFFFF00FFFFFF00000000000000000000000000000000000000FF000000
FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000
FF00000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF00FFFFFF0000800000FFFFFF00FFFFFF0000800000FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF000000000000000000000000000000FF000000FF000000
FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000
FF00000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000FFFFFF000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF00FFFFFF0000800000FFFFFF00FFFFFF000080000000800000FFFFFF00FFFF
FF00FFFFFF00FFFFFF00000000000000000000000000000000000000FF000000
FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000
FF00000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000FFFFFF000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF00FFFFFF00FFFFFF000080000000800000008000000080000000800000FFFF
FF00FFFFFF00FFFFFF0000000000000000000000000000000000000000000000
FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000
FF00000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000FFFFFF000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000080000000800000FFFFFF00FFFF
FF00FFFFFF00FFFFFF0000000000000000000000000000000000000000000000
00000000FF000000FF0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000800000FFFFFF00FFFFFF000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000FF0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000
0000FFFFFF000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000FFFF00FFFF
FF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF000000
0000000000000000000000000000000000000000000000000000FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000FF
FF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00000000000000
0000000000000000000000000000000000000000000000000000FFFFFF0000FF
FF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF000000
0000000000000000000000000000000000000000000000000000FFFFFF000000
000000000000000000000000000000000000FFFFFF0000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000FFFF000000
000000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF000000
000000000000000000000000000000000000000000000000000000FFFF00FFFF
FF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF000000
0000000000000000000000000000000000000000000000000000FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000FFFF0000FF
FF000000000000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FF
FF00000000000000000000000000000000000000000000000000FFFFFF0000FF
FF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF000000
0000000000000000000000000000000000000000000000000000FFFFFF000000
000000000000000000000000000000000000FFFFFF0000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00000000000000000000000000000000000000000000000000FFFFFF0000FF
FF0000FFFF000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000FFFF00FFFF
FF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF000000
0000000000000000000000000000000000000000000000000000FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000FFFF00FFFF
FF0000FFFF000000000000FFFF000000000000FFFF000000000000FFFF000000
0000000000000000000000000000000000000000000000000000FFFFFF0000FF
FF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF000000
0000000000000000000000000000000000000000000000000000FFFFFF000000
00000000000000000000FFFFFF00FFFFFF00FFFFFF0000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000FFFFFF0000FF
FF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF00000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000FFFF00FFFF
FF0000FFFF00FFFFFF0000FFFF00FFFFFF000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
FF0000FFFF00FFFFFF0000FFFF00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000FFFFFF000000
000000000000FFFFFF00FFFFFF0000000000FFFFFF0000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000FF
FF00FFFFFF0000FFFF00FFFFFF00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000808080000000
0000000000000000000000000000808080000000000000000000000000000000
0000000000000000000000000000000000000000000000000000FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000808080000000
0000000000000000000000000000808080000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000424D3E000000000000003E000000
2800000040000000300000000100010000000000800100000000000000000000
000000000000000000000000FFFFFF0000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000FFFFC001FFFF0000FFFFC001FFFF0000
FFFFC001FFFF0000FFFFC001FFFF0000FC7FC001FBFF0000FC7FC001F3FF0000
FC7FC001E00F0000E00FC001C00F0000E00FC001800F0000E00FC001C00F0000
FC7FC001E00F0000FC7FC001F3FF0000FC7FC001FBFF0000FFFFC003FFFF0000
FFFFC007FFFF0000FFFFC00FFFFF0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC00F803FFFFFC03F800F803FFFFF801F
800F803FFFFF800F800F803FE0078007800F803FE0078007800F803FE007800F
800F803FFFFF800F801F803FFFFF801FC0FF803FFFFFC0FFC0FF807FFFFFC0FF
FFFF80FFFFFFFFFFFFFFFFFFFFFFFFFF}
end
end


GOSTEI 0
POSTAR