Commit d0af1d34 authored by Eduardo de Santana Medeiros Alexandre's avatar Eduardo de Santana Medeiros Alexandre
Browse files

Atualização das imagens do cap1 #22

parent 231d1718
......@@ -43,12 +43,14 @@ task :epub
namespace "wip" do
file @BOOK_SOURCE
desc "Create new wip file from book source"
task "new" do
cp "#{@BOOK_SOURCE}", "#{@BOOK_SOURCE_DIR}/wip.adoc"
end
file WIP_ADOC do
file WIP_ADOC => [@BOOK_SOURCE] do
Rake::Task["wip:new"].invoke
end
......
......@@ -89,7 +89,7 @@ realização de cálculos. Muitos atribuem sua criação à China, mas existem
evidências deles na Babilônia no ano 300 A.C.
.Ilustração de um ábaco
image::images/historia-do-computador/abaco.png[scaledwidth="50%"]
image::images/{cap}/abaco.eps[scaledwidth="50%"]
A ideia básica do ábaco é considerar as contas (bolinhas) contidas na parte inferior chamada de chão do Ábaco
com valor unitário, e cada conta contida na parte superior chamada de céu do Ábaco com valor de cinco unidades.
......@@ -120,10 +120,10 @@ teoria de logaritmos.
[[ossos_de_napier]]
.Ilustração dos Ossos de Napier.
image::images/historia-do-computador/napier-ossos-tabuleiro.png[scaledwidth="50%"]
image::images/{cap}/napier-ossos-tabuleiro.eps[scaledwidth="50%"]
.Ilustração da operação de multiplicação utilizando os ossos de Napier: 46785399 x 7.
image::images/historia-do-computador/napier-multiplicacao-46785399x7.png[scaledwidth="75%"]
image::images/{cap}/napier-multiplicacao-46785399x7.eps[scaledwidth="75%"]
......@@ -138,7 +138,7 @@ levaram o homem à Lua.
[[regua_calculo]]
.Régua de Cálculo
image::images/historia-do-computador/regua-de-calculo.jpg[scaledwidth="70%"]
image::images/{cap}/regua-de-calculo.eps[scaledwidth="70%"]
......@@ -164,7 +164,7 @@ realização de somas e subtração.
[[pascaline]]
.Pascaline de 8 dígitos aberta, mostrando as engrenagens (acima), e a apresentação da máquina fechada (abaixo).
image::images/historia-do-computador/pascaline.jpg[scaledwidth="50%"]
image::images/{cap}/pascaline.jpg[scaledwidth="50%"]
// http://calmeca.free.fr/calculmecanique_php/illustrations_texte/pascaline.jpg
O mecanismo de funcionamento é o mesmo utilizado
......@@ -177,7 +177,7 @@ Existe uma animação demonstrando o funcionamento da máquina pascaline, você
acessá-la através do seguinte link:
http://therese.eveilleau.pagesperso-orange.fr/pages/truc_mat/textes/pascaline.htm.
image::images/historia-do-computador/pascaline-video.png[scaledwidth="35%"]
image::images/{cap}/pascaline-video.eps[scaledwidth="35%"]
=================
As operações de soma eram realizadas girando as engrenagens em um sentido e
......@@ -219,14 +219,14 @@ que trançava o tecido de acordo com uma programação que era fornecida
através de furos num cartão.
.Máquina de tear usando programação através de cartões perfurados.
image::images/historia-do-computador/JacquardLoom.jpg[scaledwidth="35%"]
image::images/{cap}/JacquardLoom.jpg[scaledwidth="35%"]
A invenção de Jacquard revolucionou a industria de tecido, e em 1806, ela foi
declarada propriedade pública e ele foi recompensado com uma pensão e
'royalties' por cada máquina que fosse construída.
.Esquerda: Jacquard perfurando os cartões. Direita: cartões perfurados.
image::images/historia-do-computador/JacquardCard.jpg[scaledwidth="35%"]
image::images/{cap}/JacquardCard.eps[scaledwidth="35%"]
===== A Máquina Diferencial
......@@ -245,7 +245,7 @@ abortado.
.Pequena seção da máquina diferencial de 'Charles Babbage'.
image::images/historia-do-computador/babbage-maquina-diferencial.jpg[scaledwidth="30%"]
image::images/{cap}/babbage-maquina-diferencial.jpg[scaledwidth="30%"]
A seguir você pode conferir um vídeo sobre uma réplica da Máquina Diferencial de Charles Barbage.
......@@ -277,7 +277,7 @@ que os cartões poderiam ser utilizados para armazenar ideias abstratas,
sejam elas instruções ou números, adontando na sua máquina o conceito de memória.
.Máquina Analítica e os cartões perfurados.
image::images/historia-do-computador/Babbage-Analytical-Engine-with-cards.png[scaledwidth="60%"]
image::images/{cap}/Babbage-Analytical-Engine-with-cards.eps[scaledwidth="60%"]
Ele percebeu que os cartões perfurados poderiam ser utilizados para guardar
números, sendo utilizados como um mecanismo de armazenamento de dados e
......@@ -302,7 +302,7 @@ e sub-rotinas. Por esta contribuição, Ada ficou reconhecida na história como
a primeira programadora.
.Ada Lovelace, primeira programadora.
image::images/historia-do-computador/ada_lovelace.jpg[scaledwidth="30%"]
image::images/{cap}/ada_lovelace.jpg[scaledwidth="30%"]
==== Linha do tempo
......@@ -418,7 +418,7 @@ eletrodos, cuja finalidade é controlar o fluxo de elétrons. As válvulas
aqueciam bastante e costumavam queimar com facilidade.
.As válvulas eram do tamanho de uma lâmpada.
image::images/historia-do-computador/valvulas.png[scaledwidth="50%"]
image::images/{cap}/valvulas.eps[scaledwidth="50%"]
Além disso, a programação era física e realizada diretamente na ((linguagem de máquina)),
o que dificultava a programação e consequentemente despendia muito tempo.
......@@ -427,7 +427,7 @@ a ser feitos em fita magnética.
[[eniac]]
.ENIAC, representante da primeira geração dos computadores.
image::images/historia-do-computador/ENIAC-2.jpg[scaledwidth="50%"]
image::images/{cap}/ENIAC-2.eps[scaledwidth="50%"]
Um dos representantes desta geração é o ((ENIAC)) (<<eniac>>). Ele possuía 17.468 válvulas,
pesava 30 toneladas, tinha 180 m² de área construída, sua velocidade era da
......@@ -435,7 +435,7 @@ ordem de 100 kHz e possuia apenas 200 bits de memória RAM.
[[eniac_programacao]]
.Programação física no ENIAC
image::images/organizacao-computador/programacao-eniac.jpg[scaledwidth="40%"]
image::images/{cap}/programacao-eniac.eps[scaledwidth="40%"]
[TIP]
====
......@@ -465,7 +465,7 @@ Conta a história que um dia o computador apresentou defeito. Ao serem
investigadas as causas, verificou-se que um inseto havia prejudicado seu
funcionamento. A foto abaixo, supostamente, indica a presença do primeiro bug.
image::images/historia-do-computador/bug.png[scaledwidth="50%"]
image::images/{cap}/bug.eps[scaledwidth="50%"]
Até hoje os insetos costumam invadir os equipamentos eletrônicos, portanto
observe-os atentamente, evite deixar comida próximo ao computador e não fique sem utilizá-lo
......@@ -493,7 +493,7 @@ http://pt.wikipedia.org/wiki/Transistor.
======================
.Circuito com vários transistores (esquerda). Comparação do circuito com válvulas (canto superior-direito) com um circuito composto de transistores (inferior-direito).
image::images/historia-do-computador/transistor-e-valvula-juntos.png[scaledwidth="50%"]
image::images/{cap}/transistor-e-valvula-juntos.eps[scaledwidth="50%"]
Na segunda geração o conceito de ((Unidade Central de Procedimento)) (CPU), ((memória)),
((linguagem de programação)) e ((entrada e saída)) foram desenvolvidos. O tamanho
......@@ -507,7 +507,7 @@ Unidade Central de Procedimento (<<sec_cpu>>), memória (<<sec_memoria>>), lingu
.Computadores IBM da segunda geração.
image::images/historia-do-computador/IBM_segunda_geracao.png[scaledwidth="70%"]
image::images/{cap}/IBM_segunda_geracao.eps[scaledwidth="70%"]
Em seguida vieram as linguagens de alto nível, como, por exemplo,
......@@ -536,7 +536,7 @@ eles eram construídos integrando um grande número de transistores, o que
possibilitou a construção de equipamentos menores e mais baratos.
.Comparação do tamanho do circuito integrado com uma moeda (esquerda) e um chip (direita).
image::images/historia-do-computador/circuito-integrado-comparacao-de-tamanho.jpg[scaledwidth="50%"]
image::images/{cap}/circuito-integrado-comparacao-de-tamanho.eps[scaledwidth="50%"]
// http://www.computersciencelab.com/ComputerHistory/HistoryPt3.htm
Mas o diferencial dos circuitos integrados não era apenas o tamanho, mas o
......@@ -563,7 +563,7 @@ na qual o cliente poderia substituir as peças que dessem defeitos. Além disso,
conjunto de periféricos eram vendidos conforme a necessidade do cliente.
.Arquitetura plugável da série 360 da IBM.
image::images/historia-do-computador/ibm-360-arquitetura-plugavel.jpg[scaledwidth="65%"]
image::images/{cap}/ibm-360-arquitetura-plugavel.eps[scaledwidth="65%"]
A IBM, empresa que até então liderava o mercado de computadores, passou a perder espaço
quando concorrentes passaram a vender periféricos mais baratos e que eram
......@@ -573,7 +573,7 @@ computadores pessoais (<<apple_I>>).
// Página do leilão: http://www.breker.com/english/index.htm
[[apple_I]]
.Computador pessoal Apple I.
image::images/historia-do-computador/apple-I.jpg[scaledwidth="60%"]
image::images/{cap}/apple-I.jpg[scaledwidth="60%"]
Outro evento importante desta época foi que a IBM passou a separar a criação
de hardware do desenvolvimento de sistemas, iniciando o mercado da indústria
......@@ -623,7 +623,7 @@ pessoais (<<quarta_geracao>>).
[[quarta_geracao]]
.Computador pessoal da quarta geração.
image::images/historia-do-computador/computador-quarta-geracao.jpg[scaledwidth="20%"]
image::images/{cap}/computador-quarta-geracao.eps[scaledwidth="20%"]
==== Quinta Geração (1991 -- dias atuais)
......@@ -634,7 +634,7 @@ pen-drives com mais de 1GB de memória e utilização de disco ótico
com mais de 50GB de armazenamento.
.Computador da quinta geração.
image::images/historia-do-computador/computador-quinta-geracao.jpg[scaledwidth="30%"]
image::images/{cap}/computador-quinta-geracao.eps[scaledwidth="30%"]
A quinta geração está sendo marcada pela *((inteligência artificial))* e por sua
*((conectividade))*. A inteligência artificial pode ser verificada em jogos
......
......@@ -3,6 +3,8 @@
== Prefácio
:cap: prefacio
:online: {gitrepo}/blob/{edition}/livro/capitulos/code/{cap}
:local: code/{cap}
.Baixando a versão mais nova deste livro
____
......@@ -96,12 +98,14 @@ vez de um arquivo _{prefacio-code}_, que se encontra dentro do diretório
_livro/capitulos/code/{cap}_. O diretório _{cap}_ indica o capítulo
onde o código está relacionado.
:srcfile: {prefacio-code}
.Código fonte
{gitrepo}/blob/{edition}/livro/capitulos/code/{cap}/{prefacio-code}[code/{cap}/{prefacio-code}]
{online}/{srcfile}[{local}/{srcfile}]
.Exemplo de código
.{srcfile}
----
include::code/{cap}/{prefacio-code}[]
include::{local}/{srcfile}[]
----
[[sec_codigo_fonte]]
......
A gráfica nos impões diversas restrições em
relação às imagens.
Portanto as imagens devem seguir as seguintes
intruções:
* Utilizar imagens CMYK ao invés de RGB
* Preferir utilizar tons de cinza ao invés de cores nas ilustrações
* Desenhar os gráficos no Inkscape, salvar as imagens em .svg
* Expotar a imagem .svg para .eps (manter as duas no repositório)
* Evitar usar gráficos em jpeg, pois na impressão fica borrado.
* Evitar usar gráficos em png pois são RGB, o branco fica cinza na impressão.
Em caso de dúvida, contactar a equipe de produção.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
%!PS-Adobe-3.0 EPSF-3.0
%%Creator: (ImageMagick)
%%Title: (abaco.eps)
%%CreationDate: (2014-10-31T00:02:56-03:00)
%%BoundingBox: -0 -0 300 176
%%HiResBoundingBox: 0 0 300 176
%%DocumentData: Clean7Bit
%%LanguageLevel: 1
%%Pages: 1
%%EndComments
%%BeginDefaults
%%EndDefaults
%%BeginProlog
%
% Display a color image. The image is displayed in color on
% Postscript viewers or printers that support color, otherwise
% it is displayed as grayscale.
%
/DirectClassPacket
{
%
% Get a DirectClass packet.
%
% Parameters:
% red.
% green.
% blue.
% length: number of pixels minus one of this color (optional).
%
currentfile color_packet readhexstring pop pop
compression 0 eq
{
/number_pixels 3 def
}
{
currentfile byte readhexstring pop 0 get
/number_pixels exch 1 add 3 mul def
} ifelse
0 3 number_pixels 1 sub
{
pixels exch color_packet putinterval
} for
pixels 0 number_pixels getinterval
} bind def
/DirectClassImage
{
%
% Display a DirectClass image.
%
systemdict /colorimage known
{
columns rows 8
[
columns 0 0
rows neg 0 rows
]
{ DirectClassPacket } false 3 colorimage
}
{
%
% No colorimage operator; convert to grayscale.
%
columns rows 8
[
columns 0 0
rows neg 0 rows
]
{ GrayDirectClassPacket } image
} ifelse
} bind def
/GrayDirectClassPacket
{
%
% Get a DirectClass packet; convert to grayscale.
%
% Parameters:
% red
% green
% blue
% length: number of pixels minus one of this color (optional).
%
currentfile color_packet readhexstring pop pop
color_packet 0 get 0.299 mul
color_packet 1 get 0.587 mul add
color_packet 2 get 0.114 mul add
cvi
/gray_packet exch def
compression 0 eq
{
/number_pixels 1 def
}
{
currentfile byte readhexstring pop 0 get
/number_pixels exch 1 add def
} ifelse
0 1 number_pixels 1 sub
{
pixels exch gray_packet put
} for
pixels 0 number_pixels getinterval
} bind def
/GrayPseudoClassPacket
{
%
% Get a PseudoClass packet; convert to grayscale.
%
% Parameters:
% index: index into the colormap.
% length: number of pixels minus one of this color (optional).
%
currentfile byte readhexstring pop 0 get
/offset exch 3 mul def
/color_packet colormap offset 3 getinterval def
color_packet 0 get 0.299 mul
color_packet 1 get 0.587 mul add
color_packet 2 get 0.114 mul add
cvi
/gray_packet exch def
compression 0 eq
{
/number_pixels 1 def
}
{
currentfile byte readhexstring pop 0 get
/number_pixels exch 1 add def
} ifelse
0 1 number_pixels 1 sub
{
pixels exch gray_packet put
} for
pixels 0 number_pixels getinterval
} bind def
/PseudoClassPacket
{
%
% Get a PseudoClass packet.
%
% Parameters:
% index: index into the colormap.
% length: number of pixels minus one of this color (optional).
%
currentfile byte readhexstring pop 0 get
/offset exch 3 mul def
/color_packet colormap offset 3 getinterval def
compression 0 eq
{
/number_pixels 3 def
}
{
currentfile byte readhexstring pop 0 get
/number_pixels exch 1 add 3 mul def
} ifelse
0 3 number_pixels 1 sub
{
pixels exch color_packet putinterval
} for
pixels 0 number_pixels getinterval
} bind def
/PseudoClassImage
{
%
% Display a PseudoClass image.
%
% Parameters:
% class: 0-PseudoClass or 1-Grayscale.
%
currentfile buffer readline pop
token pop /class exch def pop
class 0 gt
{
currentfile buffer readline pop
token pop /depth exch def pop
/grays columns 8 add depth sub depth mul 8 idiv string def
columns rows depth
[
columns 0 0
rows neg 0 rows
]
{ currentfile grays readhexstring pop } image
}
{
%
% Parameters:
% colors: number of colors in the colormap.
% colormap: red, green, blue color packets.
%
currentfile buffer readline pop
token pop /colors exch def pop
/colors colors 3 mul def
/colormap colors string def
currentfile colormap readhexstring pop pop
systemdict /colorimage known
{
columns rows 8
[
columns 0 0
rows neg 0 rows
]
{ PseudoClassPacket } false 3 colorimage
}
{
%
% No colorimage operator; convert to grayscale.
%
columns rows 8
[
columns 0 0
rows neg 0 rows
]
{ GrayPseudoClassPacket } image
} ifelse
} ifelse
} bind def
/DisplayImage
{
%
% Display a DirectClass or PseudoClass image.
%
% Parameters:
% x & y translation.
% x & y scale.
% label pointsize.
% image label.
% image columns & rows.
% class: 0-DirectClass or 1-PseudoClass.
% compression: 0-none or 1-RunlengthEncoded.
% hex color packets.
%
gsave
/buffer 512 string def
/byte 1 string def
/color_packet 3 string def
/pixels 768 string def
currentfile buffer readline pop
token pop /x exch def
token pop /y exch def pop
x y translate
currentfile buffer readline pop
token pop /x exch def
token pop /y exch def pop
currentfile buffer readline pop
token pop /pointsize exch def pop
/Times-Roman findfont pointsize scalefont setfont
x y scale
currentfile buffer readline pop
token pop /columns exch def
token pop /rows exch def pop
currentfile buffer readline pop
token pop /class exch def pop
currentfile buffer readline pop
token pop /compression exch def pop
class 0 gt { PseudoClassImage } { DirectClassImage } ifelse
grestore
} bind def
%%EndProlog
%%Page: 1 1
%%PageBoundingBox: 0 0 300 176
userdict begin
DisplayImage
0 0
300 176
12
300 176
1
1
1
8
FFFDFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFF
FFFFFFFFFFFFFFFFFDFFFFFFFFFDFFFFFFFFFFFFFFFFFFFDFFFFFFF8F4F8FDFFFFFFFFFF
FFFFFFFDFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFFFFFFFDFDFFFFFD
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFDFFFFFDFFFFFDFFFFFDFFFFFFFFFFFDFFFF
FFFFFFFDFFFFFDFFFDFFFFFFFFFFFDFFFDFFFFFFFDFFFFFDFFFFFDFFFFFDFFFFFDFFFFFF
FFFDFFFFFDFFFFFDFFFFFDFFFFFDFFFFFDFFFFFDFFFDFFFFFDFFFDFDFFFFFDFDFFFDFFFF
FDFFFFFDFFFFFFFFFFFFFFFDFFFFFDFFFFFDFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFDFFFFFFFFFFFFFFFFFFFFFDFFFDFFFFFFFFFDFFFFFFFFFFFFFDFFFFFFFFFFFFFFFFFF
FFFDFFFFFFFFFFFDFDFFFFFFFFFFFFFFFFFFFFFDFFFDFFFDFFFFFDFDFFFFFFFDFFFFFFFF
FDFFFFFFFFFFFFFFFDFFFFFFFDFDFFFFFFFFFDFFFFFFFFFFFDFDFFFFFFFDFDFFFFFFFDFD
FFFFFFFDFDFDFDFFFFFFFDFDFFFFFFFDFFFDFFFFFFFDFDFFFFFFFFFDFDFFFFFFFFFDFDFF
FFFFFDFFFFFFFFFFFDFFFFFFFFFFFFFDFFFFFFFFFDFFFFFFFFFDFFFFFFFFFDFFFFFDFFFF
FFFFFFFDFFFFFDFFFFFFF8F4FDFFFFFDFFFFFDFFFDFFFFFDFFFFFFFFFFFDFFFFFDFFFFFD
FFFFFDFFFFFDFFFFFDFFFDFFFFFDFFFDFDFFFFFDFFFFFDFFFFFDFFFFFDFFFFFFFFFDFFFF
FDFFFFFDFFFFFDFFFFFDFFFFFFFDFFFFFFFDFDFFFFFFFFFDFFFFFDFFFFFFFFFFFDFFFDFD
FFFFFFFFFFFFFFFFFDFFFFFFFFFDFFFDFDFFFFFFFFFFFFFFFFFDFFFFFDFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFDFFFFFFFFFDFFFDFFFFFFFDFFFFFFFDFFFFFFFFFDFFFFFFFDFFFFFF
FDFFFFFDFDFDFDFFFFFFFFFFFDFFFFFDFFFFFFFFFFFDFFFFFFFFFDFFFFFFFFFFFDFFFFFF
FFFDFFFDFFFFFFFDFFFFFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFFFFFFFFFFFDFFFF
FFFFFFFFFFFFFDFFFFFDFFFFFFFDFFFFFDFFFDFFFFFFFDFFFDFDFFFFFFFFFFFFFFFDFFFF
FFFFFFFFFFFDFDFFFFFFFFFFFFFFFDFDFFFFFDFFFFFAEDE9FDFAFDFDF6EDFDFFFDFFFFFF
FFFFFFFDFFFDFFFFFDFFFFFDFFFFFFFFFDFDFFFDFDFDFDFFFFFDFDFFFDFFFFFFFFFDFDFF
FFFDFFFFFDFFFFFFFFFDFFFFFDFFFFFDFFFFFDFFFFFDFFFFFDFFFFFDFFFFFDFDFFFFFFFD
FFFFFDFFFFFFFFFFFFFFFFFDFFFFFDFFFFFFFFFFFDFFFFFFFFFDFFFFFDFFFFFDFDFFFFFF
FDFFFFFDFFFFFFFFFFFFFDFFFFFFFFFFFFFFFFFFFFFDFFFFFDFDFFFFFFFFFFFDFFFFFFFD
FFFFFDFFFFFFFFFFFFFFFFFDFFFFFFFDFFFDFFFDFFFDFFFFFDFDFFFFFFFFFFFFFDFFFFFF
FDFFFFFDFFFDFDFFFDFFFFFFFFFDFFFFFFFFFFFFFFFDFDFDFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFDFDFFFFFDFFFDFFFFFFFDFFFFFFFFFFFDFDFFFFFFFDFFFFFFFFFDFFFFFDFFFFFFFF
FDFFFFFFFFFFFFFDFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFFFAEFEB
FDFAFDFFF6EDFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFF2B5B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
B3B3B3B3B3B3B3B3B3B5B3B3B3B3B3B5B7B7B8BAB8B7BAB5B3B8C4C8D4D4D4DEE2DCD6D4
D4D0CCD4CECAD0D8D8DADAD8D6D6CED0D4D4D2DCDADCDAD6D2D6D2D0D0D2CCCEC4C4C8C4
BEC8C6C4C4C6D0C2BEC0C4C4B8B8BAB8B3B3B3B7B5B3B8C4C2C2C2C4C2C2C4C4C4C6BEC0
C0C2C6C4C0C2CED8D8C6C4C2C2C6CAC8CCCCCACAC6C4C2C0C2C6C4CED4D6D2D0C8CAD0DC
EDF2D8CECAC8CAE5FAFDFDF6DEC8CACAC6C2CACED0D0CECACCC8C8CCD0CACACACCCECED0
D6D2D4D8D6CED0D2D6D6D2CED6DAD8D2D8DADCDCDCE0E0DEDCE0E2DAD8D2DCE2DEE7EBED
EFEFEFF4E0DEE0E5E7DED8E2E5D8D8D8DEDCD8D8D0D4D0CED4E5D0D4CCC6CAD8DCE2DED4
CACECCC8C4C2C0C4C0C4C8CACCD2C8C6CAD0F2FDFFFFFDFDFFFDFFFFB701000000000000
000000000000000000000000000000000000000000010000000000010101020302010301
00020D15322D3054694E373231261D2F1E19253E3D41413B343722273032294F46484538
28392823272D1E1E0C0D150E0714110C0D11240A06080C0E02020302000000010100020C
0A0A0C0E0B0A0E0E0D100608070A0F0C090B203C3A120E0A0A0F18161D1B1919120E0B08
0A120C1E30332C251217234E9CAF3F201713166DE9FDFFCA51151917110C171F23252218
1D15131B241919161B1F20243529303B3421252D3434292036423A2B3E424A4C4F575C51
475869413A2B4D6355778A98A6AAA4B85F525C6C73563C646D3F3A4051483B3C2333251F
2D7024311B10183E4863573316201B140E0A080C090E16181D2B13101627ABF2FFFFFDFA
FFFFFFE07D000769C8D4D0D8B7CAD8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8DAD8D8
CAC6D8DACACED6D2B7B1B5B1B3B3988BA17F5741343838557768496860525063686B675D
5B7A575C67614264524F463D4760505F747957675D76927A74979AA3B1ADC09A9AA4ABBE
9AA3A6957049588D9D7D6DD8C2B8BAC2B5BABAB1B1C8AFD2D4D2CEB1C0D8E7EBE7BAADAB
B7C4C8A3AABCC4BCBCB3B3BACCE2E0E7E9E9E5D4B5D4E2EDF6F8EBE7E5DED4F2FDFDFFFA
EDDCC0B1A69D9DB7B8CAC69FBEA3B7CCD0B7A39F9D866868987D83959C988E86858A9279
64544F556349565A5D676F5F5C7C986B707DB3C6A4AA9DADBEBEB1E79D95A6C6E9D4C0DC
EBD8D6E5EDEDEBE9D4E7DAD4DAF2DEE9E5E2E5EBEDEFEFE9E0E7E5E2E2E0DEE0E0E2E5E5
E5E9E2A83B010AC4FFFFFDFDFFFFFFD86F00041E7FFDFAFDF2F8FFFDFFFDFFFFFFFDFDFF
FFFFFDFDFFFFFFFFFFFFFFFFF8F8FDFFF8FAFDFAF2EFEFEFF2EFE5DEE5D8C6B8B1B5B5C4
D4CEC0CECCC6C2CACECECCC8C8D6C6C8CECABACAC2C0BCB8BECAC2CAD4D6C6CECCD6E0D8
D6E2E5E9EDEBF2E5E7E9EBF2E7EBEBE5D6C4CCE2E9DCD4FAF4F2F2F4EFF2EFEDEDF6EDFA
FAFAF8EDF4FAFFFFFDEFEDEBEFF4F4E7E9EFF2EFF2EDEFF2F6FFFFFFFFFFFDF8EDF8FDFF
FFFFFFFDFFFDF8FFFFFFFFFFFDFAF2EDE9E7E5EDEDF4F4E5F2E7EFF6F6EFE7E7E5DCCECE
E2D8DAE0E2E2DEDADADCE0D6CCC4C2C6CABEC4C6C8CCD0C8C8D4E0CED2D8EBEFE5E5E0E7
EBEBE7F8E2DEE5EFFAF6EFF8FAF8F6FDFDFFFDFDF8FDFAF8FAFDFAFDFFFFFFFFFDFFFFFD
FDFFFDFFFFFFFFFFFDFFFFFDFFFD7263581910C6FFFFFFFFFDFFFFD069043E0F1764FFFD
FFFDFFFDFDFAFDFDFDFFFDFDFFFFFFFFFFFFFFFDFDFFFDFFFDFFFFFFFFFFFFFFFFFDFFFD
FFFFFDFFFFFFFDFDFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFFDFFFDFFFFFDFFFFFFFFFFFFFF
FDFFFFFFFDFFFDFDFFFFFFFFFFFFFFFDFFFDFFFFFFFDFDFDFFFFFFFFFDFDFDFDFFFDFDFF
FFFFFDFFFDFFFFFFFFFDFDFFFFFDFFFFFDFFFFFFFDFFFDFDFDFFFFFDFFFDFDFFFDFDFFFF
FFFDFFFFFFFFFFFFFFFDFFFFFFFFFFFDFFFFFFFFFFFDFFFFFFFFFFFFFFFFFDFFFDFFFFFD
FFFDFFFFFFFFFFFFFFFFFFFDFFFFFFFFFFFDFDFFFFFFFFFFFFFFFFFDFDFDFFFFFFFFFDFD
FFFFFFFFFDFFFFFFFDFDFDFFFFFFFFFDFFFFFFFFFFFDFFFFFFFFFFFDFFFFFFFFFFFDFFFF
FFFFFDFFFFFFFFFFFDFFFFFFFFFFFDFFFFFFFFFFFDFFFFFDFF7C3960975215CAFFFFFDFF
FFFDFDCC6709DE350914A3FFFFFFFFFDFDFAFDFDFDFFFFFFFFFDFFFDFFFFFFFFFDFFFFFD
FFFFFDFFFFFDFDFFFDFFFFFDFFFFFFFFFFFFFDFDFFFFFFFDFFFDFFFDFFFDFFFFFFFFFFFF
FDFFFFFFFFFFFDFFFFFFFDFFFFFFFFFDFFFFFFFFFFFFFDFDFFFFFFFDFDFFFFFFFDFDFAFF
FFFFFFFFFDFDFAFDFFFDFFFFFFFDFDFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFFFFFFFFFD
FDFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFDFFFDFDFFFDFFFFFDFFFFFFFFFFFDFFFDFDFFFF
FFFFFFFFFFFFFFFFFFFFFFFDFFFFFDFFFFFDFFFFFDFFFFFFFFFFFFFFFFFFFFFFFDFFFFFF
FDFFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFDFDFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFF
FDFFFFFDFDFDFFFFFFFFFDFFFFFDFFFFFDFDFFFFFDFFFFFFFFFFFFFFFFFDFFFFFFFFFFF2
B5474E9ACA5C16CAFFFFFDFFFFFDFFCE6402DAFF68181EE0EFEFF2F6F8EFF4F6F8FAF6F8
FAFDFAF6FDF8F2EFEDEDE7E5E2E7EBE2E9EBEBEDEDEBEDE9E9EBEFF2EDEBEDF2F2F2F6F8
F8F6F6F8F4F4F6F4F8F6F6F6F4F2F2EFF2F4EFF4F8F6F2EFEFF2F2EDEDF2F4F2EFEFF6FA
F8F8FAFAFAFDFAF8FAFAF8F8F8F8F6F6F4F2EFF2F2F2EFEBEBEDEDEBE9E9EBEBE7E9EBE9
EBEDEBE7E0E0DEDCE2E7E5E9EDEDE7E7EBEBEDEDEFE9E7E9EBEFEBE5E7E7E5E0E0E5E7E7
E5E5E5E2E5E9EDE9DEDEE5E9E2E2EBE9E7E7E9E7E5E5E7E5E9EBEBEFF4F2F2F4F4F4F4F2
EFEFF4F6F4EDEFEDEDEBE7E9EDEBE9E7EDEFEFEFEBE9EFE7E2E5E9E9EBE9E7E7E5DEE0E0
E5E9EBE9E5E9E9E5E7E0E2DCDADEE0E2DCDEE5E7E2E2E0E2E0D8DAE2DCD8DCDEE5E0DCDC
E2E0E5E5E5E5E0E5E5E5DEB534AFE5FAA82318CCFFFFFFFFFFFDFFD26500D6FFFFA62014
5F6174A4B3688EA4BAD0AAB5DEE5CAAAE2BA7C5F5B582B1E1E2D44193A40474F554D503E
35406B7C52495772797AA1BCBCA69FBA928BA193BA9D9D9A8574746D7D856786B3A17A60
6C777354507D8D765D6D9DCEB1B8DADCCAF6D0BEC8CCBEC0B8B8AD9A826F696D7779614D
464D514A3F394C423238453D4C564C2D16130B0A1B2D253850502B32444A4E52613E3138
4C5D42272A29201411242D2D251F241B243B52340E0D20351B193F3C3130362923272923
3B45466488767F85888885766769869F8E5A675C4E3F2E38554A362E526567604C336130
1A20373E4D37302D230E1212233C4237203837262C101907040F141A13161F2C1B1B1317
1602061D1208080F20160A08171122202223152027240D010DE0F8FAA11D33D6FFFFFFFF
FDFFFFAD3300D6EFE2D8B301020303040902040403040303040403030403020202020105
030102010303030303020202010204030202030602020303030303030303030303030303
03020202020302030E07020202020202020304020202030403030C100906050403030304
0303030303020203030202020509070318020202040C02020908020595BE6F2004010104