OpenCores
URL https://opencores.org/ocsvn/present/present/trunk

Subversion Repositories present

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /present/trunk/DecodeTesting
    from Rev 17 to Rev 20
    Reverse comparison

Rev 17 → Rev 20

/rtl/vhdl/PresentDecodeCommSM.vhd
389,13 → 389,11
 
state_modifier : process (clk, reset)
begin
if (clk = '1' and clk'Event) then
if (reset = '1') then
state <= NOP;
else
state <= next_state;
end if;
end if;
if (reset = '1') then
state <= NOP;
elsif (clk = '1' and clk'Event) then
state <= next_state;
end if;
end process state_modifier;
 
-- counter for controling number of bytes of readed data
/rtl/vhdl/ShiftReg.vhd
77,10 → 77,10
begin
reg : process (clk, reset, data)
begin
if (clk'event and clk = '1') then
if (reset = '1') then
data <= (others => '0');
elsif (en = '1') then
if (reset = '1') then
data <= (others => '0');
elsif (clk'event and clk = '1') then
if (en = '1') then
data(internal_data - 1 downto internal_data - length_1) <= input;
else
if (shift = '1') then
/doc/src/present_decode_testing.tex
7,7 → 7,7
%%%%%%%%%%%%%%%%%
\docDate{ \today }
\docID{Present Decoder ("Decode Testing") - with communication channel with PC}
\docRevision{0.1}
\docRevision{0.2}
\docStatus{Draft}
\docTitle{\mbox{Present Decoder ("Decode Testing") -} \mbox{with communication channel with PC}}
\docTitleShort{Present Decoder ("Decode Testing")...}
18,6 → 18,7
 
\revisionList{
0.1 & all & 2014/05/25 & First draft & K. Gajewski \\
0.2 & all & 2014/09/16 & Some small corrections with the text, typos, etc. & K. Gajewski \\
}
 
\begin{document}
54,18 → 55,18
\end{center}
\end{figure}
 
In subprojects \texttt{Pure} and \texttt{PureTesting} Present coder components was presented. In this project Present decoder was presented. It was attached by shifting registers to RS-232 core developed by Digilent\textsuperscript{\textregistered} to enable communication with PC. Decoding key is firstly generated, basing on the key used for data coding. Next, input data are decoded (taking into account "inverse" direction to the presented in Fig. \ref{pAlgorithm}), and at last feeds the output. This core works with 80 bit key. Target was Xilinx\textsuperscript{\textregistered} Spartan 3E XC3S500E \cite{Spartan} on Spartan 3E Starter Board \cite{Digilent} made by Digilent\textsuperscript{\textregistered}.
In subprojects \texttt{Pure} and \texttt{PureTesting} Present encoder components was presented. In this project Present decoder was presented. It was attached by shifting registers to RS-232 core developed by Digilent\textsuperscript{\textregistered} to enable communication with PC. Decoding key is firstly generated, basing on the key used for data coding. Next, input data are decoded (taking into account "inverse" direction to the presented in Fig. \ref{pAlgorithm}), and at last feeds the output. This core works with 80 bit key. Target was Xilinx\textsuperscript{\textregistered} Spartan 3E XC3S500E \cite{Spartan} on Spartan 3E Starter Board \cite{Digilent} made by Digilent\textsuperscript{\textregistered}.
 
\newpage
 
\section{Interface}
 
Top level component of Present Decode Testing was shown in Fig. \ref{pdectest}. The number of inputs and outputs was limited due to RS-232 component in communication interface. All inputs and outputs are synchronous except \texttt{reset} signal in state machines and sampled at rising edge of clock. All signals are \texttt{STD\_LOGIC}.
Top level component of Present Decode Testing was shown in Fig. \ref{pdectest}. The number of inputs and outputs was limited due to RS-232 component in communication interface. All inputs and outputs are synchronous except \texttt{reset} signal and sampled at rising edge of the clock. All signals are \texttt{STD\_LOGIC}.
\begin{figure}[!ht]%
\begin{center}
\includegraphics[width=0.5\textwidth]{img/PresentDecodeTesting.png}
\caption{%
Top level component of Present Decode Testing
Top level component of the Present Decode Testing
}%
\label{pdectest}
\end{center}
73,19 → 74,19
 
\begin{tabularx}{\textwidth}{|p{30mm}|p{11mm}|p{11mm}|X|}
\hline \bf{Signal name} & \bf{Width} & \bf{In/Out} & \bf{Description}\\
\hline \texttt{clk} & 1 & in & Clock signal for the component. \\
\hline \texttt{DATA\_RXD} & 1 & in & Input data signal. \\
\hline \texttt{reset} & 1 & in & \emph{Asynchronous} / \emph{Synchronous} reset signal.\\
\hline \texttt{DATA\_TXD} & 1 & out & Output data signal. \\
\hline \texttt{clk} & 1 & in & clock signal for the component. \\
\hline \texttt{DATA\_RXD} & 1 & in & input data signal. \\
\hline \texttt{reset} & 1 & in & \emph{asynchronous} reset signal.\\
\hline \texttt{DATA\_TXD} & 1 & out & output data signal. \\
\hline
\end{tabularx}
\captionof{table}{Input/Output signals of Present Decode Testing component}
\captionof{table}{Input/Output signals of the Present Decode Testing component}
 
\newpage
 
\section{Internal structure and state machine workflow}
 
Internal datapath between components was shown in fig. \ref{pdecinside}. All control signals, \texttt{clk} and \texttt{reset} was omitted for clearance. In these schamatic \texttt{keyReg}, \texttt{textReg} and \texttt{outReg} are shift registers enabling conversion of the input/output serial data into parallel data. They are respectively:
Internal datapath between components was shown in Fig. \ref{pdecinside}. All control signals, \texttt{clk} and \texttt{reset} was omitted for clearance. In these schamatic \texttt{keyReg}, \texttt{textReg} and \texttt{outReg} are shift registers enabling conversion of the input/output serial data into parallel data. They are respectively:
\begin{itemize}
\item \texttt{keyReg} - shift register for the key used during decoding,
\item \texttt{textReg} - shift register for the text to be decoded (to be more clearly \texttt{ciphertext}),
98,19 → 99,19
\begin{center}
\includegraphics[width=0.95\textwidth]{img/PresentDecodeCommInside.png}
\caption{%
Internal structure of Present Decode core with communication environment.
Internal structure of the Present Decode Testing core with communication environment.
}%
\label{pdecinside}
\end{center}
\end{figure}
 
State machine states and transition between them was shown in fig. \ref{presentDecodeCommSM}.
State machine states and transition between them was shown in Fig. \ref{presentDecodeCommSM}.
 
\begin{figure}[!ht]%
\begin{center}
\includegraphics[width=0.95\textwidth]{img/presentDecodeCommSM.png}
\caption{%
State machine of the Present Decode cipher with added communication component
State machine of the Present Decode Testing decipher with added communication component
}%
\label{presentDecodeCommSM}
\end{center}
117,12 → 118,12
\end{figure}
 
 
In fact it is the same State machine as in Present \texttt{Pure Testing} subproject, but due to its length, will be reminded. State machine consist of following states:
In fact it is the same state machine as in \texttt{Present Pure Testing} subproject, but due to its length, will be reminded. State machine consist of following states:
 
\begin{itemize}
\item \texttt{NOP} - this is initial state of the state machine. It is set up after resetting the system. If any data appear in the RS-232 input (\texttt{RDAsig = '1'}), this state will be changed.
\item \texttt{READ\_DATA\_TEXT} / \texttt{READ\_DATA\_KEY} - This state informs the RS-232 component that input data was read (by write enable in \texttt{keyReg} register).
\item \texttt{DECODE\_READ\_TEXT} / \texttt{DECODE\_READ\_KEY}- In this state the number of performed data reading iterations are checked. Because one RS-232 packet was set to 8 bytes - 8 iterations need to be performed for reading full 64 bit text data input (10 iterations for reading full 80 bit key data input).
\item \texttt{NOP} - this is the initial state of the state machine. It is set up after resetting the system. If any data appear in the RS-232 input (\texttt{RDAsig = '1'}), this state will be changed.
\item \texttt{READ\_DATA\_TEXT} / \texttt{READ\_DATA\_KEY} - These states inform the RS-232 component that input data was read (by write enable in \texttt{keyReg} register).
\item \texttt{DECODE\_READ\_TEXT} / \texttt{DECODE\_READ\_KEY}- In these states the number of performed data reading iterations are checked. Because one RS-232 packet was set to 8 bytes - 8 iterations need to be performed for reading full 64 bit text data input (10 iterations for reading full 80 bit key data input).
\item \texttt{TEMP\_STATE} / \texttt{TEMP2\_STATE} / \texttt{TEMP\_OUT} - Here the counter is prepared for key reading / decoding / next "decoding session".
\item \texttt{MOVE\_TEXT} / \texttt{MOVE\_KEY} / - Due to serial data in RS-232 component are stored in 8 bit register, they need to be shifted in appropriate place in given shift registers. It is performed by 8 shifts made in 8 clock cycles.
\item \texttt{NOP\_FOR\_KEY} - Kind of \texttt{NOP} or wait state until 'key' data will arrive.
136,7 → 137,7
 
\section{FPGA implementations}
 
The component has been verified on a Xilinx\textsuperscript{\textregistered} Spartan 3E XC3S500E FPGA in FG320 package and synthesized with Xilinx ISE 14.2. It was also implemented and practically tested on Spartan 3E Starter Board made by Digilent\textsuperscript{\textregistered}. Appropriate setup files was prepared with use of ISE Project Navigator, but Makefile scripts was also written. Suitable files was stored in \texttt{./DecodeTesting/syn/XC3ES500/} directory.
The component has been verified on a Xilinx\textsuperscript{\textregistered} Spartan 3E XC3S500E FPGA in FG320 package and synthesized with Xilinx ISE 14.2. It was also implemented and practically tested on Spartan 3E Starter Board made by Digilent\textsuperscript{\textregistered}. Appropriate setup files was prepared with the use of ISE Project Navigator, but Makefile scripts was also written. Suitable files was stored in \texttt{./DecodeTesting/syn/XC3ES500/} directory.
Makefile was tested in Windows 8 with use of Cygwin for 64-bit Windows.
 
Synthesis results was given in Fig. \ref{SynResults}
159,13 → 160,13
Possible change in used FPGA device may be possible in steps given below\footnotemark[1]:
\begin{enumerate}
\item Copy \texttt{./DecodeTesting/syn/XC3ES500/} directory to another one like \\ \texttt{./DecodeTesting/syn/YOUR\_FPGA\_SYMBOL/}
\item Go to \texttt{./DecodeTesting/syn/XC3ES500/} directory.
\item In \texttt{PresentDecodeComm.xst} file modify the line \texttt{-p xc3s500e-5-fg320} to \texttt{-p YOUR\_FPGA\_SYMBOL}
\item In \texttt{Makefile} file modify the line \texttt{PLATFORM=xc3s500e-fg320-5} to \texttt{PLATFORM=YOUR\_FPGA\_SYMBOL}
\item Go to \texttt{./DecodeTesting/syn/YOUR\_FPGA\_SYMBOL/} directory.
\item In \texttt{PresentDecodeComm.xst} file modify the line \texttt{-p xc3s500e-5-fg320} to \texttt{-p YOUR\_FPGA\_CODE}
\item In \texttt{Makefile} file modify the line \texttt{PLATFORM=xc3s500e-fg320-5} to \texttt{PLATFORM=YOUR\_FPGA\_CODE}
\end{enumerate}
 
\textbf{WARNING!!!}
With this core there exist one issue related to communication process. It was observed, that every \textbf{first} decoding process after resetting the core, returns incorrect data. Resending data and performing new calculations fix that. So, using this core it is desirable to force performing first "dummy" calculations after every reset.
With this core there exist one issue related to communication process. It was observed, that every \textbf{first} decoding process after resetting the core, returns incorrect data (not observed during testing in ISE environment). Resending data and performing new calculations fix that. So, using this core it is desirable to force performing first "dummy" calculations after every reset.
 
\footnotetext[1]{This solution was not tested and is based on my own observations. Additional care should be taken with *.UCF files - this supplied with this project should be appropriate only for Spartan 3E Starter Board made by Digilent\textsuperscript{\textregistered}. You can make this modifications on your own risk}
 
/doc/present_decode_testing.pdf
67,7 → 67,7
>dB6 -2"^=eh n}3z62a9Tp~_x|rE96Ŗ&PmmB9L P, uS%B`ґھ7om3~"KPOCL@Js\̫EI|S ZnU.O5YzWdͫ"'j:feYx=t R(E8P$FpTCB_r0 +2"^=eh n}3z62a9Tp~_x|rE96Ŗ&PmmB9L P, uS%B`ґھ7om3~"KPOCL@Js\̫EI|S ZnU.O5YzWdͫ"'j:feYx=t R(E8P$ਆ_s0 endstream endobj 38 0 obj << @@ -161,16 +161,14 @@ /ProcSet [ /PDF /Text /ImageC ] >> endobj 54 0 obj << -/Length 768 +/Length 897 /Filter /FlateDecode >> stream -YP5A3xw֠{sTmFbu0@`I[ː& łI>%$JYY+eE=ah0`7R6m&BŒiI+6.['bv녞2٤U骃Ys,(In2I|{eRcYFF]$3Y3)pyK@0w7@!1%:`}6oN1}*FDa>oe -srT/ۿkex-܀{ֱm`C`M䫛Cb:@I [ -ZeIb?{a%,$1`eХ0|gmM%gM'…ehyxnCCZ6hwH5`]QUY/`77&tI|5 PPA,":k.ͧŠye +y\\4D07s'WH@f^m_1LZӤ0B1obKH{+>$yfnY{TODbFd1Ă. 8ͱyMoG!`ID)8$F[7br녞2eI-⬅Ys,(5io2I\{eRcJFmm$֠'qHpZ=@B5N`2@!0dXJA0~CVo2Bň~(Wyfe7.fo {|ߓlǶvDB`EJ :k&kv{aۤ5#:{&yG_I+`fY_dm@BL B^lEyJ%[~M(FhJ6}qG|"Hs1ߐ Hyx1p1a/^>fu_W1({/h?}9f mh+1 ;|u滈45D(VeMBP#Jk4挘Na|T6ˈQ\MJߎBrb=I7ܰ|yf=ٗ<$n2i9iiųl+R^E ` 1+O[\qN} ԥBCfØuyb@5Y!cYj2P+ƶBT$q9ϻ{0ѣ]63ڌ_Ѿ+{gCD1a<\. 0tt?)_".E䊧~9j ʿ|JbV $Ro{/ny[!1b-qx\2 oOsS݄[r.)ʲsuYe\jyo gqȔM˳jyZ - H" +VzWE3 ZqTYoe,kG Ň)̄ ]=_R + H" +VzWE3 ZqTYoe,kG Ň)' 5]=X endstream endobj 75 0 obj << @@ -326,23 +324,24 @@ /ProcSet [ /PDF /Text ] >> endobj 94 0 obj << -/Length 1616 +/Length 1651 /Filter /FlateDecode >> stream -N-*%nkoצv3342*4E5֣"nR*Riv޸lֶ?r?WYV2+TE,?Ou,,`jUnvO/7<8??|gـ3:p}ww -0_T-f¼w! -ԉbPmDiۦ̭^d:'Y_s)«[DeRJt@e%qxMꜮ!7EDp@l@iL]23mC7 {w9_uAK'uneJDx6O|l#Jn:&YC…8|ؚ(|kxx!Ÿ-K;v6zNKv0wsYlǡ?XIfȊCVI5z1ڿ]֑ig&Ћ%d`I9vGn=VZL;ܷƃ^G^ב1ߛ򒪃oSSߛąZ̡)5ɞ8oUi|6if_@/ [D0ٟHM@C -_L'nmp]d?'`3A!^eicj^ܗil6%;2yJ)Øp }hBHWفc[(>qR˴)죟TD +BG;xЅ!@3e( ;ἮڲN@46*Z3pb`YVol+(m}2$o%Xa̋8q˪yWH58 /hўՖ ?aܷ]ml>[}Ѿʟ5!ןPsj=-\El|o;KBEE=1xU^xw6\o:(M03n/#wѶ.:n|UέT ++E Ы@f1`4b2թy؅:,I0$".QF?X#R{W* Eև n@Tg/jjy}+t'qWdbSfeȷZ쵸n) cX;O !b~7Ng+. l8b:u9Ĵ-_͔M5fhn'뛉DLGYM8 Zx^%^ɻ]Cvp`D&bYC8 +NS gE;QrJHC +!FoU9sl[xpfD>G[W6nӑM-yn*C . OtgZ}TJ&pgcYCU{hzoFbU k?yc撓wAթif>)P)MkJ O|-T|ﳕ*B>it-/#J ?'}ג<'t%RJ.tJ{r#54])o +,ޗ˲2"cJHg,NY>Q8Ku&c;>(Aw +zܼ)uGܫ0DroRZ4K/<)-~xٓ+I4gBP(W0 V7s?6 endstream endobj 93 0 obj << @@ -667,7 +666,7 @@ /Type /Annot /Subtype /Link /Border[0 0 1]/H/I/C[1 0 0] -/Rect [193.666 168.839 201.724 181.283] +/Rect [268.978 168.839 277.036 181.283] /A << /S /GoTo /D (figure.1) >> >> endobj 84 0 obj << @@ -674,7 +673,7 @@ /Type /Annot /Subtype /Link /Border[0 0 1]/H/I/C[0 1 0] -/Rect [252.483 157.717 260.541 167.482] +/Rect [324.13 157.717 332.188 167.482] /A << /S /GoTo /D (cite.Spartan) >> >> endobj 85 0 obj << @@ -681,7 +680,7 @@ /Type /Annot /Subtype /Link /Border[0 0 1]/H/I/C[0 1 0] -/Rect [409.2 157.494 417.257 167.482] +/Rect [481.815 157.494 489.873 167.482] /A << /S /GoTo /D (cite.Digilent) >> >> endobj 95 0 obj << @@ -699,18 +698,14 @@ /ProcSet [ /PDF /Text /ImageC ] >> endobj 112 0 obj << -/Length 1431 +/Length 1406 /Filter /FlateDecode >> stream -')PDi@hЬTG3ڭ`ͪ[mlui)]h"D솖"xՇ?G-ܼ 7}6nvZsmf'>Y͒2F9&S(i?RwC>8`Ј8h*tzW= ȃUbؿI>͢ڼgVoaCOrP;gS1ᅑ'yw;\3j&`'!9ўb1o_] +xXK6W9Isޒ8 6-]-b+k5Xrɯ-+W9oߌH>.^2`)pH "E0oTHRɴD[hw;m_p8AqLIB{nxt"0cGc' H1b[ig(!ohK/^:VX''bh$DPD$T02胖yJL^ye{RG//#mH %D? $dAkFo`kX{# +zqLL)}_Wۺ9A9VH='Y5k|c΀?*~= pbv[㞐HHe0[~y{͇%=T=4l7ͧxʖNvBC˓=%`?,A"RYSOO?9yGA1s̖f/1u-eh/ q7|?tw#MKvl!;A'q$Ðh޶xz}eY @uC=1j!@lPOZz08QW$GY6 Ҝ.w@[ݙ13ݱsY̑EƦ]XUB !,hwqGoasnoEUWx_}ݥG VpDlI1Ҁb*xotD 'b^yfpvs߿1Ӌ(IAH@M " \ endstream endobj 111 0 obj << @@ -808,10 +803,10 @@ /D [111 0 R /XYZ 77.669 724.535 null] >> endobj 114 0 obj << -/D [111 0 R /XYZ 214.048 529.396 null] +/D [111 0 R /XYZ 204.95 530.795 null] >> endobj 116 0 obj << -/D [111 0 R /XYZ 185.646 404.439 null] +/D [111 0 R /XYZ 176.548 405.838 null] >> endobj 110 0 obj << /Font << /F37 44 0 R /F48 57 0 R /F52 97 0 R /F57 115 0 R >> @@ -819,31 +814,29 @@ /ProcSet [ /PDF /Text /ImageC ] >> endobj 129 0 obj << -/Length 2029 +/Length 2043 /Filter /FlateDecode >> stream -xXKoWބѼ! tMMmڢ)ZbM*Iu=g $hipxy_o/6o g)OE ┥Z&J0Q?W?ofQxΰDʀӁ:W+›a-vx}"G 3Z0=J ~oj"zQb1WOq^Yw_;t ^of9Dx]_HBR$ + Exgv֮߷ +/F3"0OVPxw4 }!kKUOg/1$ni20 +}ņ6 M^Yeu^'|*}]2UyYb; +:ҡ[ ab%ດg,b'9fI4ҩDpI%O0C*b<:p<Л"o6{F12:iIST?ފ7D "MVA0 yy-*7Y3eV8U +f# && s*(BwJ@"aZ q#Eb@g/ܸS]Qo +,N< ^]K%qg| %cӀUԜMf܇q}  @a"b&9qU!ò'9#,|.G( LOt/ލSSvcc++q4ꀌ6찹lK!/OAVAstǛCNPI%߃s+LJ&OR6c~>en%@&I<\&nS ;W1(cLţ~Qn +MݕTư +I*S*%e:/+6suGCNpnNf}p6i:2zQ*}tԙ*n]lVg[GS8U(E%"úGo +=\;L{qDġz xnW0^ ./0ڐzؑtKda[àrAQMe!^ek??%.j o~+O&!yi5&r۶ 3"{G=r#Dfs,JԔχ貽_9Ԩ3SED@)92 (%5!n&9"B4Xg-)&6^V5' $mm7LGVYUZ[Kh?6ѧlcӹDUh'?vG*і㨒~çل:(k9;x?98y畦C4| &݅vq/ +H^]-ïWs!isڂ;Inb|8}b >"MϘxQL+!{a=//$/J6kX)wt>x`\ﻻ:zǂbPXG_JiކG endstream endobj 128 0 obj << @@ -1051,7 +1044,7 @@ /Type /Annot /Subtype /Link /Border[0 0 1]/H/I/C[1 0 0] -/Rect [359.307 678.008 367.365 690.451] +/Rect [360.949 678.008 369.007 690.2] /A << /S /GoTo /D (figure.3) >> >> endobj 119 0 obj << @@ -1058,7 +1051,7 @@ /Type /Annot /Subtype /Link /Border[0 0 1]/H/I/C[1 0 0] -/Rect [407.912 163.858 415.97 176.302] +/Rect [411.544 163.858 419.602 176.302] /A << /S /GoTo /D (figure.4) >> >> endobj 130 0 obj << @@ -1068,7 +1061,7 @@ /D [128 0 R /XYZ 77.669 724.535 null] >> endobj 131 0 obj << -/D [128 0 R /XYZ 146.554 217.418 null] +/D [128 0 R /XYZ 123.455 217.418 null] >> endobj 127 0 obj << /Font << /F37 44 0 R /F48 57 0 R /F52 97 0 R >> @@ -1076,18 +1069,22 @@ /ProcSet [ /PDF /Text /ImageC ] >> endobj 141 0 obj << -/Length 1361 +/Length 1311 /Filter /FlateDecode >> stream -W4,eYd$Y`>b!!`=u.<ع HLEOh4U4;}Vu!q,-ì O27εԲvyh]>ŹCff -g Eh`~0)`~A)^WѢW6H2Q?v) =+}<#g>92 2d/olRA(*Ce+2R\:$j'cJWVXV҂Q p=rv0;N8cl}>s(y=iȗG KM7PHى&5lpANqe -0\,p/'07'NvV9DyDP~QE@6'Wse$\q.n[\Dgdn]]c~n/޻cȔ8Jjc+m6p9z%T?KzL;5}bU)n3sWlÀǿ[}о+)8zU|nyCy_t./|ULrl*t_Nf endstream endobj 140 0 obj << @@ -1467,7 +1464,7 @@ /D [140 0 R /XYZ 76.669 827.583 null] >> endobj 132 0 obj << -/D [140 0 R /XYZ 127.605 296.58 null] +/D [140 0 R /XYZ 128.318 296.58 null] >> endobj 139 0 obj << /Font << /F37 44 0 R /F52 97 0 R >> @@ -1475,18 +1472,25 @@ /ProcSet [ /PDF /Text /ImageC ] >> endobj 152 0 obj << -/Length 1516 +/Length 1605 /Filter /FlateDecode >> stream -xXo6_!%203$%bI{dIÓf_;%˩a2O+O;GY9A"wY[z~LKf'"~ҽ4_  !HKcʬGvn&-x,^W|P=1Sf\mq–0 ֓B^젅QPUY_ \gԡ+C#! -d^oo*5mѰ㠀k$k -ƻe[`Š\Ī nF=kA6Ohlp`v6rhXHMjJIQ- -mFuSL{I/fLz rha4}i7^$ݛFc<,.BLqUeG 8T*Ob]eFWVz_2kꆫU]߷ DQmrua 8Q֍ ;Hxfg@ٺCWQ Ls%CbցIv.¹vyBbǕWmȲϥ?>Ci_ .g{ 3h8wjm9q!hyN*T||j?vtMiPLɏCnsuҧ$*蛢n +xW_o6 ϧ0S$=uh%Yr0Eೕۺپf)ʎ/u1t^"E#EX +COE)*օֿ\_ SR(X"Ijǵs=~> +kRI=Z8B'< >z{8 {BזVyG? B"^H?.h]*{C&ۖ=m~3Ӵfa"z'\ޕ2uClvZ}Wvn(םSE}@K=xǮE,|f: +)TZ\E~ѝ{NAR1z[3ۈc?v!%\o&q7Qyuܐċ;I6/_N$X<]YUFX 3)%c=[a#c3D9auSrxg,h +M"9t@ :0vPCwsn K}&&a̒t􋂁pETh~kKgEQi +=!> endobj 163 0 obj << -/Length 2935 +/Length 3016 /Filter /FlateDecode >> stream -xZ_o8ϧp  j$R C66mI[.$ʒגۦf8,ŊZ_t/}) g~3qE|ry= #?Rj:\.&x.8NF 靈Px/{M[xoe3EGq? y -W[ -ޱֶ_ z_YyOoA}ͷ)ВÆeݵ/tiK^z)Tmmʋ;΄6^_lWK3rW1^w<9`>M4hAk/~M ed&DM.u2` kHL4| -bj6PYm͚ݣv?ە ^OAB5J+jI¯_DHg8KNMV&%WOR:$9:k\#CZJh>RWsN1X -t Fث? -:|Ym\`b Ab78qo@d ?.*TyGw8*hQ!7 -&@Xhȏ`1}Hx\te"| J" +E"ofgIMG0iܙpg]`"8x$&W?b֓DLfr꽝~@ +0ڋ;dzBܮ^gzVr|*/[J=xqqr'b hdc?O8SQ8bg.'lr~gu8VY3EzvVnӂ_VK$7ʙ^Y'&C|N1:5|} Ж>CgVn0wg,N{qq8Вa77֋[mZűY{q;5*[,pǏҍO30Ç@-)qm&.:bdx+P+8$vx_Up(t8oeDT@vf*u;hvqL>Xk{߅!,G`s\Ps0wҼ,/_8,'&`d$ @MVAt +MvyI~<8xw8!'Y[jc0ؠ͡Q|cm&)!8mz{S#5? +Y 6:kP6GO8mCh6ܛ.a !SxwoX#b2` :)GxstUARtb^(˴&ί리c"AF>o[Suv,d~dt9s!pNY&Y$$eB!fNfvw\h =-Y0ON`]{'vUAq^H*wRJ7[\=l~|??={ݙR1FAˢaOVbB +Һ)K8=y%ZV|Bzb^RyBpIVsUA23kL{&#e#~EK <-;~WzX>)8?%WiZgFP[ :`&ɛwgqfWZYgMC(XnEMY$?L}{}'O +|g44ּX'u_BгkZV4b6Ҳܸ:bJEؒbS\ Y(9  +ЇxFP˶"pHau,RKOķnhg['r9Ի;i%7Ѣħr'b#)| ^ =k?ptaCL++l,]9CPh*1`:.UG6in;v&wXg<0Rb9ʗcUԼ'θٶjF]`y*7U@hU]d;mYwȱ: [[D*r9G:X +IX+N+Z)*:[u-lT7ņ$U|v^`,n\xSэ +m~r'!9ѡj}, endstream endobj 162 0 obj << @@ -1636,7 +1635,8 @@ %+*- yka-fx5ॗCY)ev &&QM/A:q&tOgM $L^' )7pmN0ZK;V9jPm'0Ӗ0hM]ha\|?QE̪t֔RGA4Bn czh2B'Xhz}UY=LofNa{LyQOͳ jk%9ְMo_auʀ6SʶMZzPe$-Fwݸ9yf)!Z`h2@YqsR->?AQ5؏^(0cJ!Ϛ)]rjms=2S -lY3f) *hrk{o~ /uq?kV!В0p7RYsd }XYy_t9_ȊL8VFleH.5טB?_Lܷ֩O0Nd(p7,O^2<_G:G\ޘj; _ +usgco_ endstream endobj 179 0 obj << @@ -1699,19 +1699,17 @@ /ProcSet [ /PDF /Text ] >> endobj 193 0 obj << -/Length 1319 +/Length 1318 /Filter /FlateDecode >> stream -xVr6+8^@IN7LI(XbL -M^CAU#8\m/|xI| - 4.MڿbFDM:C( h'k gPT[ݡ|#+0Fn|e 3hV_u&!J]G "~lNЀO3ҍ;j)0kj@U? &eYH;o!/S6) 9k`J5 2g_pj0{s -fLA[~H5:aYF VXUa&o[[L__}% L)mV#UoOp KnLɉ+LiELfF81;frӨ8%+^וy)eݭA%%Jg7 -Ͽ4 +xVr6+8^@ kl'u:uH3I'ɂ`1E*$e^ι\\BQPoyE N8H0[Uy|cd8f#w_k_e|SE3p6!|`olݤG$ |"HN9 _aeZN(}h{.Fx ΀Mrf҄ +yU4ٺ}Xˀ/n (U]wL#:Þ辥/+: endstream endobj 192 0 obj << @@ -1796,7 +1794,7 @@ /ProcSet [ /PDF /Text ] >> endobj 212 0 obj << -/Length 1457 +/Length 1456 /Filter /FlateDecode >> stream @@ -1811,9 +1809,8 @@ &@*&@e+-=XVwT/ D#i~ ՟G+AYQ?vu`6Pla̵E>rM(P$՝*EAMre -;bHx4 -6ec O[\.QT~T_&׸.DU1.!._Ug?{1 +;bp0M%M-}KFo?_.՗5:Kls1Q2Cd ǀKȵWO1 endstream endobj 211 0 obj << @@ -1874,7 +1871,7 @@ %oVAnyM^AgCٸE/mq@Iq(+bT握.݆ʊImaM)BYOR6ɈA,> "t5: Zi~i?4qp~E`9|giq-b$ QC3eV9JwYSəc⋹*, )[j4rwF۞+jb~s)EL! ;.;tAf em8X -`ό(@]o(1Si Wʬ*qU}6:A -$O')F7ݷ\6φ"M@̹C&0Ja(J%ےp+u:gb s㫢^[<5-H\=J#/O=3/3j/F/#3LT Ԙ?U +`ό(@]o(1Si Wʬ*qU}6:A -$O')F7ݷ\6φ"M@̹C&0Ja(J%ےp+u:gb s㫢^[<5-H\=J#/O=3/3j/F/#3LҀc> endstream endobj 225 0 obj << @@ -2890,60 +2887,60 @@ >> endobj 301 0 obj << /Length1 1199 -/Length2 5236 +/Length2 5159 /Length3 0 -/Length 6013 +/Length 5930 /Filter /FlateDecode >> stream -xmwg\5ҥI'H#ti"E0$@K ^E &M@={>gͬY{C5QH,,R#m0]m, pHCMX'].@54E셏@\ bV(/! G;!: - Gb\\p]8円1 - -$C ؋a5nhNo"D8%CAokpU܁dLݸȣ_zM*@.9[ݰf%aHF#yqR:`Kᬛⵊ -H8˞V\1Xg: 2vzb@UJa/cAѰyD_BX*-rl͎-yBk'-Z -#W%({D>R0'sPR33Hq1%cT2,C)7TA>ܰr牘*evC58uws8nA%JvG#_HW~-tI#!W֩yoրS@1U(rBs9acsb/c*#avKjqR,hhk\}کﯮ vHCw"4̿v>uҋ4̿UeaQM0qoP+ȺZ%3oQ0Ut#)T;1ڛs/%ǥ;ÑUN޲X<Wd{K:o~ \ 4/w^k+Y]s'[#x7t5LW5}wi:4EY/Ǟ.gFڰ-/l -WYkTcDUN> YK6*5j2"t޼Wc0446M:LzgS4xggd]bA3MXNRLt$W#B" -dFl3-?{oXV1]x~|nŽhGׇΠtӓ7tת8qׂ"jZqf*0u!4&mIGB%,ћ|sfK9_^G?)|:i歹^cHQ\tzĻ*VcwN]X,?U]f605v -|uFGon]Ι}BMéb3{nTMD=^)p]yշW;=Pk%q~&\I:!fy ->|n*ƣ 5y?(S|ǽ$$H>jɇ8-׺,_VX}XIRRf_5['#C -eNʼn!\kgv>!ϑ{0 Ĉt~xWG\w.f; `q9:gy7wUBd"$*>qJX0TEc#!i"a? -VBlv{MJ~۠-4 -F -`GAKZ|\Nq*s]jGd=8Ӎ E](ϳu:OEZ#𱙏jz!,D.&誉9߮5ZX]f,oq,Ifؐݤ@2W12,xMEK;wyXt"lSPSz57)\Q;QoRҰZ\UBV4: i`ݟk=%a<|]o᷹ȟ -{a`:0O}eEmΨyQ٪ 0$UQ'=V&JM)0H'Mf+ڻ*9;\Qt5P.;Gn˟Rt9%}R`Z0B`GЉ\e]!BDhy[0y#c4''`h^\6gkn3JAQ_n6'V\U3ЪqCrӧUL1rf*6(^J>dWD`ԾxqDxJf8Mz$f yBYpi*hp@%).}=B+>lv~P66e1kmn -z'5@C34KCn:>ՋZ]?Mq -L,1yeN,xxi?K7W'/h%3U5p4|GJ $ٗ@EH}mvo!0yxW+'MA\c2Qq)2UgP#[zkASڔR60B&gؖ"?uk-(;yhGҔz[م -&zm3X`d,!"`DLeIا( - ^h>9~G:ksW~Н;\zo4.KzGKQ%ΰ)cC~hn[ܟy8h#*Nf*F8'Z7ۛ#R<+K(UT^1Tʣ"EnE}-Jtց;LuIHಯ=7lԖM`}ȏ -723OQk}U9a}DYӶ3a/(.VGGO?[f@(S2>{i]%)OzۢmiV|c9X -BG2Iٍ4uuk<^_ -=,' -x.=~N͋ _uzBvH,uiWU7 OjM\Xd{ᅴ!idm`;}z&Ŏjv#'cJh'Ojٜy>3CO)(aJzRmkEq/wwiItћZ9@\VZ~fۦyyj&MyGPtޔx[w}jPM[֭s +xmsyfdߥ+;cf0f!!K˾&kȚ%[!DId}WvWܿ>}y_r-4 +' +Hw<-jpn @ +4 @LnHE10VxQ3>3 `f|WPXX XNN7@`N( BB`. +G:".~X/7r0Gpœ~aF8u@q=_O6 G|qׇ#bZfzjj ZQ,@T\V_)'%oPjCrDjB˿B` +`K]}wD^@CGѰ!.!G,ޢo1n_:\Y$sejsV"ƱhxʩI=vI'yX/OsE`h9>)5{Uݧ[gWI}I(!ry2 {i~9ʨI𖁎## T[mu,)6[T + &U8Xȷ8詴)_.Oq6+4By)1m* 7aWX2>u Rʎ^xsEN/f&՞8je &:-}|dBTḀvG-PZMxNy0pqΰ,RNgQH"qu2ecd7 \C gc0`|rDj)w|HGFP(TB>'0P艬NW N;:Ni]ᙔńcB/Ȇc)bYȾS>>L\E7uyF<3)` dVhs%R +n/U(aá/Ѐf?;S JT":WD)?BFPpun;E{E5!GЎzG)s:g,yf_lGP5 +>0(3,^j$~9'GܯC[ԋ$,SӴHH٪ U&bY/')*Wǚ(K<[O{rvӧ3%_' oBe$(nuhX|Cc˒iA[0O90N2n<<P6!qV+Vj(^l)F%fz>Mm`G0 [S9U8CZ;B ˯h?~iy)a+ J z+/DmYC""R_F+gKIf6jw|.oW`dSP?2ApcvC,}wo0D{Z({V-9CazJ@O=B~0RamW{NZ̉ +F)!m`ٛ rla2=#=:KԺDZ9ٓ[f%إGl@&^9aב,k&pǕ&mY|v۳ N0vnekz6&Y7n??JΤh4Uzn1l 8XqfD䬵\PTR۰UA=<{71ud?Y7M}PF݁Nh4.<ˣ,m)OĒbgeD_$wo-}ꝋkm{ +ghHe> endobj 232 0 obj << @@ -2982,7 +2979,7 @@ 115 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /IBFKTW+NimbusSanL-ReguItal +/BaseFont /GOEFUK+NimbusSanL-ReguItal /FontDescriptor 302 0 R /FirstChar 45 /LastChar 121 @@ -3136,50 +3133,50 @@ /OpenAction 37 0 R >> endobj 318 0 obj << -/Author()/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.13)/Keywords() -/CreationDate (D:20140525200939+02'00') -/ModDate (D:20140525200939+02'00') +/Author()/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.14)/Keywords() +/CreationDate (D:20140917232835+02'00') +/ModDate (D:20140917232835+02'00') /Trapped /False -/PTEX.Fullbanner (This is MiKTeX-pdfTeX 2.9.4535 (1.40.13)) +/PTEX.Fullbanner (This is MiKTeX-pdfTeX 2.9.4902 (1.40.14)) >> endobj xref 0 319 0000000046 65535 f 0000000015 00000 n -0000042014 00000 n -0000241332 00000 n +0000042179 00000 n +0000241517 00000 n 0000000060 00000 n 0000000090 00000 n -0000051676 00000 n -0000241248 00000 n +0000051816 00000 n +0000241433 00000 n 0000000135 00000 n 0000000162 00000 n -0000093595 00000 n -0000241162 00000 n +0000093747 00000 n +0000241347 00000 n 0000000207 00000 n 0000000271 00000 n -0000175526 00000 n -0000241074 00000 n +0000175798 00000 n +0000241259 00000 n 0000000317 00000 n 0000000356 00000 n -0000179353 00000 n -0000240949 00000 n +0000179625 00000 n +0000241134 00000 n 0000000402 00000 n 0000000444 00000 n -0000179413 00000 n -0000240875 00000 n +0000179685 00000 n +0000241060 00000 n 0000000495 00000 n 0000000524 00000 n -0000179473 00000 n -0000240801 00000 n +0000179745 00000 n +0000240986 00000 n 0000000575 00000 n 0000000602 00000 n -0000182739 00000 n -0000240713 00000 n +0000183010 00000 n +0000240898 00000 n 0000000648 00000 n 0000000682 00000 n -0000185653 00000 n -0000240638 00000 n +0000185923 00000 n +0000240823 00000 n 0000000728 00000 n 0000000768 00000 n 0000001470 00000 n @@ -3188,286 +3185,286 @@ 0000000816 00000 n 0000010379 00000 n 0000010438 00000 n -0000239837 00000 n -0000240181 00000 n +0000240022 00000 n +0000240366 00000 n 0000000048 00000 f -0000011598 00000 n +0000011727 00000 n 0000000050 00000 f -0000011747 00000 n +0000011876 00000 n 0000000068 00000 f -0000011896 00000 n -0000012163 00000 n -0000011450 00000 n +0000012025 00000 n +0000012292 00000 n +0000011579 00000 n 0000010602 00000 n -0000012045 00000 n -0000012104 00000 n -0000239668 00000 n -0000189462 00000 n -0000013783 00000 n -0000013933 00000 n -0000014083 00000 n -0000014232 00000 n -0000014381 00000 n -0000014531 00000 n -0000014686 00000 n -0000014841 00000 n -0000014990 00000 n +0000012174 00000 n +0000012233 00000 n +0000239853 00000 n +0000189732 00000 n +0000013912 00000 n +0000014062 00000 n +0000014212 00000 n +0000014361 00000 n +0000014510 00000 n +0000014660 00000 n +0000014815 00000 n +0000014970 00000 n +0000015119 00000 n 0000000070 00000 f -0000013336 00000 n +0000013465 00000 n 0000000072 00000 f -0000013485 00000 n +0000013614 00000 n 0000000086 00000 f -0000013634 00000 n -0000015257 00000 n -0000013125 00000 n -0000012245 00000 n -0000015139 00000 n -0000015198 00000 n -0000041196 00000 n -0000041348 00000 n -0000017232 00000 n -0000040679 00000 n -0000041498 00000 n -0000041648 00000 n -0000041802 00000 n +0000013763 00000 n +0000015386 00000 n +0000013254 00000 n +0000012374 00000 n +0000015268 00000 n +0000015327 00000 n +0000041360 00000 n +0000041512 00000 n +0000017396 00000 n +0000040843 00000 n +0000041662 00000 n +0000041812 00000 n +0000041965 00000 n 0000000088 00000 f -0000040749 00000 n +0000040913 00000 n 0000000090 00000 f -0000040898 00000 n +0000041062 00000 n 0000000104 00000 f -0000041047 00000 n -0000042132 00000 n -0000017035 00000 n -0000015339 00000 n -0000041955 00000 n -0000042072 00000 n -0000205679 00000 n -0000038004 00000 n -0000189583 00000 n -0000189643 00000 n -0000189704 00000 n -0000051464 00000 n -0000043935 00000 n +0000041211 00000 n +0000042297 00000 n +0000017199 00000 n +0000015468 00000 n +0000042120 00000 n +0000042237 00000 n +0000205949 00000 n +0000038168 00000 n +0000189853 00000 n +0000189913 00000 n +0000189974 00000 n +0000051604 00000 n +0000044075 00000 n 0000000106 00000 f -0000051014 00000 n +0000051154 00000 n 0000000108 00000 f -0000051164 00000 n +0000051304 00000 n 0000000121 00000 f -0000051314 00000 n -0000051859 00000 n -0000043773 00000 n -0000042261 00000 n -0000051615 00000 n -0000051735 00000 n -0000240006 00000 n -0000051797 00000 n -0000093233 00000 n -0000054283 00000 n -0000093384 00000 n -0000095445 00000 n +0000051454 00000 n +0000051998 00000 n +0000043913 00000 n +0000042426 00000 n +0000051755 00000 n +0000051875 00000 n +0000240191 00000 n +0000051936 00000 n +0000093386 00000 n +0000054436 00000 n +0000093535 00000 n +0000095547 00000 n 0000000123 00000 f -0000092783 00000 n +0000092936 00000 n 0000000125 00000 f -0000092933 00000 n +0000093086 00000 n 0000000133 00000 f -0000093083 00000 n -0000093717 00000 n -0000054113 00000 n -0000052003 00000 n -0000093534 00000 n -0000093655 00000 n -0000169158 00000 n +0000093236 00000 n +0000093869 00000 n +0000054266 00000 n +0000052142 00000 n +0000093686 00000 n +0000093807 00000 n +0000169260 00000 n 0000000135 00000 f -0000168647 00000 n +0000168749 00000 n 0000000137 00000 f -0000168797 00000 n +0000168899 00000 n 0000000144 00000 f -0000168947 00000 n -0000169219 00000 n -0000095290 00000 n -0000093848 00000 n -0000169097 00000 n -0000240293 00000 n +0000169049 00000 n +0000169321 00000 n +0000095392 00000 n +0000094000 00000 n +0000169199 00000 n +0000240478 00000 n 0000000146 00000 f -0000171090 00000 n +0000171281 00000 n 0000000148 00000 f -0000171240 00000 n +0000171431 00000 n 0000000155 00000 f -0000171390 00000 n -0000171601 00000 n -0000170935 00000 n -0000169338 00000 n -0000171540 00000 n -0000175313 00000 n +0000171581 00000 n +0000171792 00000 n +0000171126 00000 n +0000169440 00000 n +0000171731 00000 n +0000175585 00000 n 0000000157 00000 f -0000174863 00000 n +0000175135 00000 n 0000000159 00000 f -0000175013 00000 n +0000175285 00000 n 0000000172 00000 f -0000175163 00000 n -0000175892 00000 n -0000174700 00000 n -0000171684 00000 n -0000175465 00000 n -0000175586 00000 n -0000175648 00000 n -0000175709 00000 n -0000175770 00000 n -0000175831 00000 n -0000178985 00000 n -0000179140 00000 n +0000175435 00000 n +0000176164 00000 n +0000174972 00000 n +0000171875 00000 n +0000175737 00000 n +0000175858 00000 n +0000175920 00000 n +0000175981 00000 n +0000176042 00000 n +0000176103 00000 n +0000179257 00000 n +0000179412 00000 n 0000000174 00000 f -0000178535 00000 n +0000178807 00000 n 0000000176 00000 f -0000178685 00000 n +0000178957 00000 n 0000000185 00000 f -0000178835 00000 n -0000179533 00000 n -0000178364 00000 n -0000175987 00000 n -0000179292 00000 n -0000189764 00000 n -0000181665 00000 n -0000182206 00000 n +0000179107 00000 n +0000179805 00000 n +0000178636 00000 n +0000176259 00000 n +0000179564 00000 n +0000190034 00000 n +0000181936 00000 n +0000182477 00000 n 0000000187 00000 f -0000181215 00000 n +0000181486 00000 n 0000000189 00000 f -0000181365 00000 n +0000181636 00000 n 0000000204 00000 f -0000181515 00000 n -0000183164 00000 n -0000181028 00000 n -0000179628 00000 n -0000182678 00000 n -0000182799 00000 n -0000182860 00000 n -0000182920 00000 n -0000182981 00000 n -0000181936 00000 n -0000183042 00000 n -0000182442 00000 n -0000183103 00000 n -0000185410 00000 n +0000181786 00000 n +0000183435 00000 n +0000181299 00000 n +0000179900 00000 n +0000182949 00000 n +0000183070 00000 n +0000183131 00000 n +0000183191 00000 n +0000183252 00000 n +0000182207 00000 n +0000183313 00000 n +0000182713 00000 n +0000183374 00000 n +0000185680 00000 n 0000000206 00000 f -0000184960 00000 n +0000185230 00000 n 0000000208 00000 f -0000185110 00000 n +0000185380 00000 n 0000000218 00000 f -0000185260 00000 n -0000185713 00000 n -0000184797 00000 n -0000183259 00000 n -0000185592 00000 n -0000187951 00000 n -0000188145 00000 n -0000188569 00000 n -0000188984 00000 n +0000185530 00000 n +0000185983 00000 n +0000185067 00000 n +0000183530 00000 n +0000185862 00000 n +0000188221 00000 n +0000188415 00000 n +0000188839 00000 n +0000189254 00000 n 0000000220 00000 f -0000187501 00000 n +0000187771 00000 n 0000000222 00000 f -0000187651 00000 n +0000187921 00000 n 0000000000 00000 f -0000187801 00000 n -0000189825 00000 n -0000187290 00000 n -0000185796 00000 n -0000189522 00000 n -0000188358 00000 n -0000188777 00000 n -0000189223 00000 n -0000240410 00000 n -0000239188 00000 n -0000189921 00000 n -0000190249 00000 n -0000190436 00000 n -0000190660 00000 n -0000190837 00000 n -0000191080 00000 n -0000191272 00000 n -0000191455 00000 n -0000191726 00000 n -0000192005 00000 n -0000192316 00000 n -0000192594 00000 n -0000192824 00000 n -0000193046 00000 n -0000193357 00000 n -0000193552 00000 n -0000193738 00000 n -0000194050 00000 n -0000194257 00000 n -0000194539 00000 n -0000194819 00000 n -0000195084 00000 n -0000195347 00000 n -0000195646 00000 n -0000195977 00000 n -0000196185 00000 n -0000196440 00000 n -0000196718 00000 n -0000197009 00000 n -0000197332 00000 n -0000197614 00000 n -0000197915 00000 n -0000198202 00000 n -0000198488 00000 n -0000198789 00000 n -0000199086 00000 n -0000199331 00000 n -0000199687 00000 n -0000199933 00000 n -0000200151 00000 n -0000200449 00000 n -0000200653 00000 n -0000200895 00000 n -0000201135 00000 n -0000201414 00000 n -0000201716 00000 n -0000201969 00000 n -0000202268 00000 n -0000202509 00000 n -0000202749 00000 n -0000203004 00000 n -0000203291 00000 n -0000203609 00000 n -0000203908 00000 n -0000204132 00000 n -0000204445 00000 n -0000204765 00000 n -0000205042 00000 n -0000205340 00000 n -0000205924 00000 n -0000206342 00000 n -0000206796 00000 n -0000207592 00000 n -0000208067 00000 n -0000208732 00000 n -0000219738 00000 n -0000220115 00000 n -0000232153 00000 n -0000232753 00000 n -0000238886 00000 n -0000240487 00000 n -0000240564 00000 n -0000241403 00000 n -0000241571 00000 n -0000241747 00000 n -0000241939 00000 n -0000242108 00000 n -0000242267 00000 n -0000242443 00000 n -0000242622 00000 n -0000242775 00000 n -0000242888 00000 n -0000242967 00000 n -0000243046 00000 n -0000243084 00000 n -0000243211 00000 n +0000188071 00000 n +0000190095 00000 n +0000187560 00000 n +0000186066 00000 n +0000189792 00000 n +0000188628 00000 n +0000189047 00000 n +0000189493 00000 n +0000240595 00000 n +0000239373 00000 n +0000190191 00000 n +0000190519 00000 n +0000190706 00000 n +0000190930 00000 n +0000191107 00000 n +0000191350 00000 n +0000191542 00000 n +0000191725 00000 n +0000191996 00000 n +0000192275 00000 n +0000192586 00000 n +0000192864 00000 n +0000193094 00000 n +0000193316 00000 n +0000193627 00000 n +0000193822 00000 n +0000194008 00000 n +0000194320 00000 n +0000194527 00000 n +0000194809 00000 n +0000195089 00000 n +0000195354 00000 n +0000195617 00000 n +0000195916 00000 n +0000196247 00000 n +0000196455 00000 n +0000196710 00000 n +0000196988 00000 n +0000197279 00000 n +0000197602 00000 n +0000197884 00000 n +0000198185 00000 n +0000198472 00000 n +0000198758 00000 n +0000199059 00000 n +0000199356 00000 n +0000199601 00000 n +0000199957 00000 n +0000200203 00000 n +0000200421 00000 n +0000200719 00000 n +0000200923 00000 n +0000201165 00000 n +0000201405 00000 n +0000201684 00000 n +0000201986 00000 n +0000202239 00000 n +0000202538 00000 n +0000202779 00000 n +0000203019 00000 n +0000203274 00000 n +0000203561 00000 n +0000203879 00000 n +0000204178 00000 n +0000204402 00000 n +0000204715 00000 n +0000205035 00000 n +0000205312 00000 n +0000205610 00000 n +0000206194 00000 n +0000206612 00000 n +0000207066 00000 n +0000207862 00000 n +0000208337 00000 n +0000209002 00000 n +0000220008 00000 n +0000220385 00000 n +0000232423 00000 n +0000233023 00000 n +0000239073 00000 n +0000240672 00000 n +0000240749 00000 n +0000241588 00000 n +0000241756 00000 n +0000241932 00000 n +0000242124 00000 n +0000242293 00000 n +0000242452 00000 n +0000242628 00000 n +0000242807 00000 n +0000242960 00000 n +0000243073 00000 n +0000243152 00000 n +0000243231 00000 n +0000243269 00000 n +0000243396 00000 n trailer << /Size 319 /Root 317 0 R /Info 318 0 R -/ID [<96EDAEF4E49BB7BE2ACD95698CF8B62C> <96EDAEF4E49BB7BE2ACD95698CF8B62C>] >> +/ID [<5A12BB9DCA1517EA8495C75544545AC1> <5A12BB9DCA1517EA8495C75544545AC1>] >> startxref -243486 +243671 %%EOF

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.