Compare commits

...

8 Commits

Author SHA1 Message Date
ee2bf1cda8 test(top): two-instance hello_world TB (genenc + dec split)
Add tb_mlkem_two_inst_xsim: runs the hello_world protocol across TWO mlkem_top
instances, modeling the real two-party split:
  * u_genenc: KeyGen THEN Encaps on one instance. KeyGen writes ek into its own
    ek_bram and Encaps reuses it directly (no re-streaming) -> shared_key, ct.
  * u_dec: Decaps on a separate instance, receiving dk + ct streamed over from
    u_genenc via the input ports.

Verifies A.shared_key == B.recovered_key and 'hello world' round-trips. Output
matches the single-instance TB and the Rust reference (key=ced0c031a4bee34a...).

run_hello.sh gains a 'two' arg to select this TB; default stays single-instance.
2026-06-29 22:15:39 +08:00
f27922270a test(top): hardware hello_world TB (full KeyGen+Encaps+Decaps protocol)
Mirror of ml-kem-r examples/hello_world.rs on the mlkem_top DUT (ML-KEM-512):
  1. Alice KeyGen(d=0x42.., z=0x77..)        -> ek (800B), dk (1632B)
  2. Bob   Encaps(ek, m=0xDE..)              -> shared_key, kem_ct (768B)
  3. Bob   XOR-encrypt "hello world"
  4. Alice Decaps(dk, kem_ct)                 -> recovered_key
  5. Alice XOR-decrypt -> "hello world"

The whole protocol runs on ONE DUT instance: ek/dk are read out of KeyGen via
the dbg taps and fed back into Encaps/Decaps through the streaming input ports,
just as the keys/ciphertext would cross the wire between Alice and Bob. Each
step prints its inputs and outputs.

Output is byte-identical to the Rust example: shared_key=ced0c031a4bee34a...,
encrypted=a6b5ac5dcb9e9425b9e3b8, decrypted="hello world", keys match.

run_hello.sh compiles the RTL + TB and runs it. Cycle counts (K=2): KeyGen
~22.9k, Encaps ~32.5k, Decaps ~50.8k.
2026-06-29 22:06:32 +08:00
2b70431923 feat(dec): Decaps D7 - implicit-reject compare + end-to-end KAT
Final FO step (FIPS 203 Alg 17 steps 9-11): compare c' to c and select the
shared secret with implicit rejection. Completes full ML-KEM Decaps.

- ST_DEC_CMP walks all ct bytes (no early-out: constant work, matching the
  constant-time spec intent), reading c' (ct_bram) and c (c_in_bram) in
  parallel, OR-ing every byte difference into cmp_neq; the final byte latches
  dec_reject.
- ss_o = dec_reject ? kbar_r (K-bar) : ss_r (K'). KeyGen/Encaps leave
  dec_reject=0 so ss_r passes through unchanged.
- ST_ENC_C2 terminal branches on op_r: Decaps -> ST_DEC_CMP, Encaps -> DONE.

The dec TB now runs end-to-end twice per case (dk loaded once):
  - valid ct  : ss_o == KAT ss   (c'==c -> K'),            dec_reject==0
  - corrupt ct: ss_o == KAT ss_n (c'!=c -> K-bar=J(z||ct_n)), dec_reject==1
exercising both the accept and implicit-reject paths against the KAT's own
ct_n/ss_n reject vectors.

Verified: dec D7 K=2/3/4 all cases PASS (accept + reject); KeyGen + Encaps
unregressed. Full ML-KEM (KeyGen + Encaps + Decaps w/ implicit rejection) now
works in hardware across all three parameter sets.
2026-06-29 21:56:07 +08:00
a734eb2cad feat(dec): Decaps D6 - c' = K-PKE.Encrypt(ek_pke, m', r')
Re-encryption step of the FO transform (FIPS 203 Alg 17 step 8), done by
reusing the ENTIRE Encaps E1-E7 pipeline rather than duplicating it:

- FSM: ST_DEC_J (D5) -> ST_ENC_LOAD, then the existing Encaps chain
  LOAD->A->C->N->U->C1->TDEC->E2MV->V->C2 runs unchanged and writes c' to
  ct_bram. The reuse preconditions are all in place: rho loads from ek_bram's
  ek_pke region (same 384k offset Encaps uses; populated at D0 load via
  dk_ld_ekpke), the CBD seed is r_r (r' from D5), and ek_pke is in ek_bram.
- D4 now packs the recovered message directly into m_r (dropping the separate
  mprime_r register): Encaps V's mu reads m_r[idx] and dbg_mprime_o now aliases
  m_r, so the re-encrypt sees m' with no extra plumbing.
- ST_ENC_LOAD arming generalized to fire when entered from ST_ENC_G (Encaps)
  or ST_DEC_J (Decaps re-encrypt).

The re-encrypt overwrites bank_a/bank_se/bank_t, so the bank-based stage checks
(D1 v', D2 s_hat/u_hat, D3 w) are no longer valid at end-of-run. The dec TB now
verifies the surviving register/BRAM artifacts: dk parse (D0), m' (D4, in m_r),
K'/r'/K-bar (D5), and the 768/1088/1568-byte c' against golden (D6). Earlier
stages remain proven by their per-stage builds and transitively by c'.

Verified: dec D6 K=2/3/4 all cases PASS (c' == golden == valid ciphertext c);
KeyGen + Encaps unregressed.
2026-06-29 21:19:38 +08:00
189411e8d1 feat(dec): Decaps D5 - (K',r')=G(m'||h) + K-bar=J(z||c)
FO transform hash derivations (FIPS 203 Alg 17 steps 6-7), reusing the
shared SHA3 core:

- ST_DEC_G: (K',r') = G(m'||h) via the single-block SHA3-512 path (mode 11,
  dec_g_data = {hek_r, mprime_r}; h was captured into hek_r at D0 load).
  K' -> ss_r (candidate shared secret, ss_o), r' -> r_r (PRF seed for D6).
- ST_DEC_J: K-bar = J(z||c) via the multi-block absorb port (mb_en=1),
  modeled on the H(ek) machine: assemble 136-byte blocks, byte source is
  z_r (g<32), c_in_bram (32<=g<msglen), or SHAKE256 pad (0x1F suffix, last
  byte |=0x80 -- the only difference from H's 0x06). mb_* inputs muxed
  between H and J by state. K-bar -> kbar_r (dbg_kbar_o).
- FSM: MENC -> G -> J -> DONE.

Bring-up note: c_in_bram read through cin_rd_addr_r (a register) plus the
registered BRAM is 2-cycle latency, but the assemble/writeback pipeline only
budgets 1 -- so the first c byte at the z->c boundary read X and poisoned the
whole sponge. Fixed by driving cin_rd_addr combinationally from dj_c_idx
during ST_DEC_J (dropping the register stage) so data lands the next cycle.

Verified: dec D5 K=2/3/4 all cases PASS (ct 768/1088/1568B -> 6/9/12 J blocks);
K' matches the KAT shared secret for valid ciphertexts; KeyGen + Encaps
unregressed.
2026-06-29 20:37:03 +08:00
7f519fe826 feat(dec): Decaps D3+D4 - w = v'-INTT(s.u_hat) + m' recovery
Completes K-PKE.Decrypt (FIPS 203 Alg 15) in hardware: m' is recovered.

D3 (ST_DEC_W) reuses the Encaps V MAC/INTT machine (u_row tied to 0):
- MAC s_hat[j] (bank_a slot j*K) o u_hat[j] (bank_se rel j) -> psum bank_t[UPSUM]
  -- identical addressing to Encaps V (t_hat[j] o y_hat[j]), so free reuse.
- INTT(psum) in place.
- SUB: w = v' - psum mod Q (negative -> +Q), written to bank_t[UPSUM].
  To read v' and psum in parallel during SUB (one read port per bank), D1's v'
  write was relocated from bank_t to bank_a slot DEC_VASLOT=1 (always free:
  s_hat occupies j*K, slot 1 is unused for K>=2). This mirrors V-ADD reading
  psum (bank_t) + e2 (bank_a) simultaneously.

D4 (ST_DEC_MENC): m' = byteEncode_1(Compress_1(w)). Compress_1(w)=1 iff
832 < w <= 2496 (Q=3329); bits packed LSB-first into mprime_r, exposed on
dbg_mprime_o (was a placeholder tied to m_r).

Added ST_DEC_W to the u_* machine muxes/sub-phases and the FSM chain
NTT->W->MENC->DONE. TB verify_d3 checks w (bank_t UPSUM); verify_d4 checks the
32-byte m' against golden (== the KAT-decrypted m == original message).

Verified: dec D1-D4 K=2/3/4 all cases PASS; KeyGen + Encaps unregressed.
2026-06-29 18:57:29 +08:00
940946f30c feat(dec): Decaps D2 - s_hat=byteDecode12(dk_pke) + u_hat=NTT(u')
K-PKE.Decrypt steps 2-3 (FIPS 203 Alg 15), both by reusing Encaps machines:

- ST_DEC_SDEC reuses the Encaps TDEC (byteDecode12) machine: only the byte
  source changes (td_byte mux -> dkp_rd_data; dkp_rd_addr driven by td_ekaddr
  in SDEC). Decodes dk_pke -> s_hat[j] into bank_a slot j*K, the same layout
  t_hat uses, so the D3 MAC can read s_hat[j] with the existing addressing.
- ST_DEC_NTT reuses the forward-NTT machine (n_slot_max=k_r) to transform
  u'[i] in place in bank_se rel slots 0..K-1 -> u_hat[i]. Added ST_DEC_NTT to
  the bank_se read/write muxes and the NTT load/process/arm blocks alongside
  ST_N/ST_ENC_N.
- FSM: DECOMP -> SDEC -> NTT -> DONE.

TB verify_d2 checks s_hat[i] (bank_a slot i*K) and u_hat[i] (bank_se rel i)
against golden. verify_d1 narrowed to v' only: D2's in-place NTT overwrites u'
in bank_se, so u' correctness is now proven transitively via u_hat==NTT(u').

Verified: dec D2 K=2/3/4 all cases PASS; KeyGen + Encaps unregressed.
2026-06-29 18:00:44 +08:00
ecc00d6dd5 feat(dec): Decaps D1 - byteDecode_d + Decompress -> u'/v'
K-PKE.Decrypt step 1 (FIPS 203 Alg 15): decode+decompress the ciphertext.

- comp_decomp_sync instance made mode-selectable: Encaps C1/C2 still compress
  (mode 0), Decaps ST_DEC_DECOMP decompresses (mode 1) with d=du/dv.
- New ST_DEC_DECOMP state with an inline byteDecode_d walker (reverse of the
  C1/C2 bit-packer): walks c_in_bram bytes, accumulates LSB-first into a bit
  buffer, extracts d-bit symbols, feeds comp_decomp, writes each decompressed
  coeff (mod q) to a bank.
    c1 = K polys, d=du -> u'[i] in bank_se rel slot i (0..K-1)
    c2 = 1 poly,  d=dv -> v'   in bank_t rel slot DEC_VSLOT=2 (avoids UPSUM=1)
- dbg_slot_i widened 4->6 bits so the TB can read v' (abs slot 26 at K=4).
- bse/bt write muxes gain the DECOMP writeback paths (dec_u_we / dec_v_we).

Verification: examples/dump_decaps.rs (ml-kem-r worktree) emits per-stage
golden (u'/v'/s_hat/u_hat/w/m') into vectors/decgold/. TB verify_d1 reads back
u'[i] and v' and compares all 256 coeffs each.

Bring-up note: dbg coeff readback latency is bank(1)+dbg_coeff_r(1); the TB's
rdcoeff initially waited 2 cyc and saw data shifted by one index -> fixed to 3.

Verified: dec D1 K=2/3/4 all cases PASS; KeyGen + Encaps unregressed.
2026-06-29 17:32:03 +08:00
150 changed files with 37974 additions and 101 deletions

View File

@@ -62,16 +62,16 @@
## 实现阶段(逐阶段 dbg/KAT 对拍) ## 实现阶段(逐阶段 dbg/KAT 对拍)
- **D0 — 脚手架 + dk/c 载入 + 解析** ✅:op_i 加宽 2-bit(00 KG/01 Enc/10 Dec),ST_DEC_LOAD(D0 暂直接→DONE)。dk 流入按 region 路由:dk_pke→dkp_bram、ek_pke→ek_bram、h→hek_r、z→z_r;ct→c_in_bram(独立于 ct_bram)。dbg 验证 h/z/ek_pke/dk_pke。**踩坑1:载入路由用 k_r 但 k_r 在 start_i 才锁存 → 预载期 region 边界全 0,路由全错。改用 LIVE k_i 边界(dkp_bytes_ld 等)。踩坑2:旧 KG/Enc TB 未接新端口(dk_in_*/c_in_*/dbg_*)→ X 漂入 write mux,KeyGen/Encaps 超时回归。补 tie-off 0。** runner = `./run_tb.sh dec [K] [CASE]`。K=2/3/4 D0 全过,KG/Enc 回归通过。 - **D0 — 脚手架 + dk/c 载入 + 解析** ✅:op_i 加宽 2-bit(00 KG/01 Enc/10 Dec),ST_DEC_LOAD(D0 暂直接→DONE)。dk 流入按 region 路由:dk_pke→dkp_bram、ek_pke→ek_bram、h→hek_r、z→z_r;ct→c_in_bram(独立于 ct_bram)。dbg 验证 h/z/ek_pke/dk_pke。**踩坑1:载入路由用 k_r 但 k_r 在 start_i 才锁存 → 预载期 region 边界全 0,路由全错。改用 LIVE k_i 边界(dkp_bytes_ld 等)。踩坑2:旧 KG/Enc TB 未接新端口(dk_in_*/c_in_*/dbg_*)→ X 漂入 write mux,KeyGen/Encaps 超时回归。补 tie-off 0。** runner = `./run_tb.sh dec [K] [CASE]`。K=2/3/4 D0 全过,KG/Enc 回归通过。
- **D1 — byteDecode_d + Decompress → u'/v'**:新解包器 + comp_decomp mode=1。dbg 对 u'/v'(ml-kem-r golden,新 dump_decaps) - **D1 — byteDecode_d + Decompress → u'/v'** ✅:复用 comp_decomp(改 mode 可选:Encaps C1/C2 compress mode=0,Decaps DECOMP mode=1)。ST_DEC_DECOMP 内联 byteDecode 走子机:逐字节读 c_in_bram,LSB-first 累进 bit buffer,凑够 d 位抽符号→comp_decomp 解压→写 bank。c1(K 多项式,d=du)→u'[i] bank_se rel i;c2(1 多项式,d=dv)→v' bank_t rel DEC_VSLOT=2(避开 UPSUM=1)。dbg_slot_i 加宽 4→6 bit(K=4 v' 在 slot 26)。dump_decaps.rs(ml-kem-r 工作树)产 u'/v'/s_hat/u_hat/w/m' golden 到 vectors/decgold/。**踩坑:dbg coeff 读回延迟 = bank(1)+dbg_coeff_r(1),TB rdcoeff 等 2 拍少一拍 → 数据整体错位一格;改 3 拍修正。** K=2/3/4 全过,KG/Enc 回归通过
- **D2 — s_hat 解码 + u_hat = NTT(u')**:TDEC 复用(dk_pke 源)、ntt_core fwd。dbg 对 s_hat / u_hat - **D2 — s_hat 解码 + u_hat = NTT(u')** ✅:复用 Encaps TDEC 机(ST_DEC_SDEC),字节源从 ek 切到 dkp_bram(td_byte mux + dkp_rd_addr 在 SDEC 走 td_ekaddr),s_hat 写 bank_a slot j*K(与 t_hat 同布局,D3 MAC 可直接读)。复用前向 NTT 机(ST_DEC_NTT,n_slot_max=k_r)对 bank_se rel 0..K-1 的 u' 原地变换成 u_hat。**踩坑:NTT 原地覆盖 u' → verify_d1 复查 u' 必失败;改为 verify_d1 只查 v'(bank_t 未动),u' 正确性由 u_hat==NTT(u') golden 传递性证明。** K=2/3/4 全过,KG/Enc 回归通过
- **D3 — w = v' INTT(Σ s∘u_hat)**:V 机器 SUB 变体。dbg 对 w - **D3 — w = v' INTT(Σ s∘u_hat)** ✅:复用 Encaps V 机(ST_DEC_W,u_row=0 单多项式)。MAC s_hat[j](bank_a slot j*K)∘ u_hat[j](bank_se rel j)→psum bank_t[UPSUM],与 V MAC 完全同址,免改。INTT 原地。SUB:w = v' psum,(v'psum) 负则 +Q。**关键:v'/psum 读口冲突 → D1 把 v' 落到 bank_a slot DEC_VASLOT=1(s_hat 在 j*K,slot 1 恒空 K≥2),SUB 时 psum(bank_t)+v'(bank_a)并行读,正如 V-ADD 并读 psum+e2。** K=2/3/4 w 全过
- **D4 — m' = byteEncode₁(Compress₁(w))**:打包器 d=1。dbg 对 m'(== KAT 解密的 m') - **D4 — m' = byteEncode₁(Compress₁(w))** ✅:ST_DEC_MENC,逐系数读 bank_t[UPSUM] 的 w,Compress₁(w)=1 iff 832<w≤2496(Q=3329),LSB-first 打包进 mprime_r[255:0],经 dbg_mprime_o 暴露。TB verify_d4 对 32 字节 golden(== KAT 解密的 m'==原始 m)。K=2/3/4 全过,KG/Enc 回归通过。K-PKE.Decrypt 硬件全链路打通
- **D5 — G(m'‖h) → (K',r') + J(z‖c) → K̄**:G 复用、J 多块(0x1F pad)。dbg 对 K'/r'/K̄ - **D5 — G(m'‖h) → (K',r') + J(z‖c) → K̄**:G 复用单块 SHA3-512 路径(ST_DEC_G,mode=11,dec_g_data={hek_r,mprime_r}),输出 K'→ss_r(候选 ss,ss_o),r'→r_r(D6 PRF 种子,dbg_r_o)。J 复用多块吸收口(ST_DEC_J,mb_en=1),仿照 H(ek) 机器组装 136B/块,字节源 g<32 取 z_r、32≤g<msglen 取 c_in_bram、否则 SHAKE256 pad(0x1F 后缀,末字节|0x80,与 H 的 0x06 唯一区别)。mb_* 端口按 ST_DEC_J 在 H/J 间多路选择。K̄→kbar_r(dbg_kbar_o)。**踩坑:c_in_bram 读经 cin_rd_addr_r 寄存器 + BRAM 寄存 = 2 拍延迟,而组装/写回流水只容 1 拍 → z→c 边界首个 c 字节(byte32)读到 X,毒化整个 keccak。改为 ST_DEC_J 时 cin_rd_addr 组合直接取 dj_c_idx(去掉寄存器级),数据次拍到达正好对齐写回。** K=2/3/4(密文 768/1088/1568B → 6/9/12 块)全过;K'==KAT ss(有效密文)验证 FO 正确;KG/Enc 回归通过
- **D6 — c' = Encrypt(ek_pke,m',r')**:复用 Encaps E1E7 写 ct_bram。dbg 对 c'==KAT.ct(有效 ct 时) - **D6 — c' = Encrypt(ek_pke,m',r')** ✅:整条 Encaps E1E7 流水直接复用——ST_DEC_J 完成后跳 ST_ENC_LOAD(rho 从 ek_bram 的 ek_pke 区载入,与 Encaps 同 offset 384k),经 A→C→N→U→C1→TDEC→E2MV→V→C2 跑完写 ct_bram。复用前提全部就位:r'(CBD 种子)在 r_r、ek_pke 在 ek_bram(D0 load 时 dk_ld_ekpke 写入)。**关键改动:D4 把 m' 直接打包进 m_r(而非独立 mprime_r),因为 Encaps V 的 mu=m_r[idx]、dbg_mprime_o 也改指 m_r;省一个寄存器且让重加密天然读到 m'。** ST_ENC_LOAD 的 arming 扩展为从 ST_ENC_G 或 ST_DEC_J 进入皆触发。**注意:重加密覆盖 bank_a/se/t,故 D1D3 的 bank 检查在 run 末已失效;TB 改为只校验存活的寄存器/BRAM 工件(D0 解析、m'、K'/r'/K̄、c'),bank 阶段正确性由早期分阶段构建 + c' 传递性保证。** K=2/3/4 c'==golden(==有效密文 c)全过,KG/Enc 回归通过
- **D7 — 比较 + 拒绝 mux + 端到端 KAT**:c'==c 常量时间比较,ss=mux。干净 TB: - **D7 — 比较 + 拒绝 mux + 端到端 KAT** ✅:ST_DEC_CMP 逐字节走遍整个密文(无早退,恒定工作量),ct_bram(c')与 c_in_bram(c)同址并行读,差异 OR 进 cmp_neq;末字节后锁存 dec_reject。ss_o = dec_reject ? kbar_r(K̄) : ss_r(K'),KeyGen/Encaps 因 dec_reject=0 原样透传。ST_ENC_C2 终态按 op_r 分流(Decaps→CMP,Encaps→DONE)。TB 单次载 dk 后跑两遍:
- 有效 ct(KAT.ct):ss==KAT.ss(c'==c → K')。 - 有效 ct(KAT.ct):ss==KAT.ss(c'==c → K'),reject=0 ✓
- 损坏 ct(KAT ct_n / ss_n):ss==KAT.ss_n(c'≠c → K̄) - 损坏 ct(KAT ct_n / ss_n):ss==KAT.ss_n(c'≠c → K̄=J(z‖ct_n)),reject=1 ✓
- K=2/3/4 各 count=0..N。 - K=2/3/4 各 3 case 全过;KG/Enc 回归通过。**至此 ML-KEM(KeyGen+Encaps+Decaps,含隐式拒绝)硬件全功能打通。**
## 验证 ## 验证
-`dump_decaps.rs`(ml-kem-r examples,工作树):出 D1D6 中间量(u'/v'/s_hat/u_hat/w/m'/K'/K̄)256-coeff / 32B golden。 -`dump_decaps.rs`(ml-kem-r examples,工作树):出 D1D6 中间量(u'/v'/s_hat/u_hat/w/m'/K'/K̄)256-coeff / 32B golden。

25
run_hello.sh Executable file
View File

@@ -0,0 +1,25 @@
#!/usr/bin/env bash
# run_hello.sh - compile + run an ML-KEM hello_world hardware testbench.
# ./run_hello.sh single-instance protocol (default)
# ./run_hello.sh two two-instance (genenc + dec) protocol
set -e
cd "$(dirname "$0")"
source /opt/Xilinx/Vivado/2019.2/settings64.sh >/dev/null 2>&1
export LD_PRELOAD="/usr/lib64/libtinfo.so.5"
rm -rf xsim.dir .Xil
if [ "$1" = "two" ]; then
TB=tb_mlkem_two_inst_xsim; SNAP=mlkem_two
else
TB=tb_mlkem_hello_world_xsim; SNAP=mlkem_hello
fi
# compile the RTL (every non-TB xvlog line from the shared tcl)
grep -E '^xvlog ' sync_rtl/top/TB/xsim_run.tcl | grep -v 'TB/tb_' | while read -r cmd; do
eval "$cmd" >/dev/null
done
xvlog -sv --relax sync_rtl/top/TB/$TB.v >/dev/null
xelab $TB -s $SNAP --timescale 1ns/1ps >/dev/null 2>&1
xsim $SNAP -R 2>/dev/null | grep -vE '^(#|INFO|Time resolution|run -all|exit|xsim|Vivado|====.*Simulator|SW Build|IP Build|Copyright|Tool Version|Start of|source |## )' | sed '/^$/N;/^\n$/D'

View File

@@ -25,7 +25,7 @@ module tb_mlkem_dec_katK_xsim;
reg c_in_we=0; reg [10:0] c_in_addr=0; reg [7:0] c_in_byte=0; reg c_in_we=0; reg [10:0] c_in_addr=0; reg [7:0] c_in_byte=0;
wire [255:0] ss_o; wire [255:0] ss_o;
reg [10:0] dbg_ct_idx_i=0; wire [7:0] dbg_ct_o; reg [10:0] dbg_ct_idx_i=0; wire [7:0] dbg_ct_o;
reg [3:0] dbg_slot_i=0; reg [7:0] dbg_idx_i=0; wire [11:0] dbg_coeff_o; reg [5:0] dbg_slot_i=0; reg [7:0] dbg_idx_i=0; wire [11:0] dbg_coeff_o;
reg dbg_byte_sel_i=0; reg [10:0] dbg_byte_idx_i=0; wire [7:0] dbg_byte_o; reg dbg_byte_sel_i=0; reg [10:0] dbg_byte_idx_i=0; wire [7:0] dbg_byte_o;
reg [11:0] dbg_dk_idx_i=0; wire [7:0] dbg_dk_o; reg [11:0] dbg_dk_idx_i=0; wire [7:0] dbg_dk_o;
wire [255:0] dbg_rho_o, dbg_sigma_o, dbg_r_o, dbg_hek_o; wire [255:0] dbg_rho_o, dbg_sigma_o, dbg_r_o, dbg_hek_o;
@@ -51,9 +51,11 @@ module tb_mlkem_dec_katK_xsim;
reg [7:0] dk_b [0:DKB-1]; reg [7:0] dk_b [0:DKB-1];
reg [7:0] ct_b [0:CTB-1]; reg [7:0] ct_b [0:CTB-1];
reg [7:0] ctn_b [0:CTB-1];
reg [7:0] ss_b [0:31]; reg [7:0] ss_b [0:31];
reg [7:0] ssn_b [0:31];
integer c, i, j, errors, casenum; integer c, i, j, errors, casenum;
reg [8*80-1:0] tag, dkfile, ctfile, ssfile; reg [8*80-1:0] tag, dkfile, ctfile, ssfile, ctnfile, ssnfile;
initial begin initial begin
if (!$value$plusargs("CASE=%d", casenum)) casenum = 0; if (!$value$plusargs("CASE=%d", casenum)) casenum = 0;
@@ -61,41 +63,110 @@ module tb_mlkem_dec_katK_xsim;
$sformat(dkfile, "sync_rtl/top/TB/vectors/dec_%0s_c%0d_dk.hex", tag, casenum); $sformat(dkfile, "sync_rtl/top/TB/vectors/dec_%0s_c%0d_dk.hex", tag, casenum);
$sformat(ctfile, "sync_rtl/top/TB/vectors/dec_%0s_c%0d_ct.hex", tag, casenum); $sformat(ctfile, "sync_rtl/top/TB/vectors/dec_%0s_c%0d_ct.hex", tag, casenum);
$sformat(ssfile, "sync_rtl/top/TB/vectors/dec_%0s_c%0d_ss.hex", tag, casenum); $sformat(ssfile, "sync_rtl/top/TB/vectors/dec_%0s_c%0d_ss.hex", tag, casenum);
$sformat(ctnfile, "sync_rtl/top/TB/vectors/dec_%0s_c%0d_ctn.hex", tag, casenum);
$sformat(ssnfile, "sync_rtl/top/TB/vectors/dec_%0s_c%0d_ssn.hex", tag, casenum);
$readmemh(dkfile, dk_b); $readmemh(dkfile, dk_b);
$readmemh(ctfile, ct_b); $readmemh(ctfile, ct_b);
$readmemh(ssfile, ss_b); $readmemh(ssfile, ss_b);
$readmemh(ctnfile, ctn_b);
$readmemh(ssnfile, ssn_b);
k_i = KP[2:0]; k_i = KP[2:0];
$display("=== ML-KEM K=%0d Decaps KAT case %0d (D0: load+parse) ===", KP, casenum); $display("=== ML-KEM K=%0d Decaps KAT case %0d (D0: load+parse) ===", KP, casenum);
rst_n=0; repeat(4) @(posedge clk); rst_n=1; @(posedge clk); rst_n=0; repeat(4) @(posedge clk); rst_n=1; @(posedge clk);
// ---- stream dk into the design (1 byte/cycle) ---- // ---- stream dk into the design (1 byte/cycle); persists for both runs ----
for (i = 0; i < DKB; i = i + 1) begin for (i = 0; i < DKB; i = i + 1) begin
dk_in_we = 1'b1; dk_in_addr = i[11:0]; dk_in_byte = dk_b[i]; dk_in_we = 1'b1; dk_in_addr = i[11:0]; dk_in_byte = dk_b[i];
@(posedge clk); @(posedge clk);
end end
dk_in_we = 1'b0; dk_in_we = 1'b0;
// ---- stream ct into c_in_bram (1 byte/cycle) ---- errors = 0;
for (i = 0; i < CTB; i = i + 1) begin
c_in_we = 1'b1; c_in_addr = i[10:0]; c_in_byte = ct_b[i];
@(posedge clk);
end
c_in_we = 1'b0; @(posedge clk);
// ---- run Decaps ---- // ================= Run 1: valid ciphertext (accept path) =================
start_i=1; @(posedge clk); start_i=0; // ct == c, so c' == c, no implicit reject: ss == K' == KAT ss.
c=0; while(!done_o && c<2000000) begin @(posedge clk); c=c+1; end run_decaps(0); // 0 = use ct_b
if(!done_o) begin $display("FAIL K=%0d case %0d: timeout", KP, casenum); $finish; end verify_d0; // dk parse (errors NOT reset here; see verify_d0 note)
$display("=== Decaps D0 done in %0d cyc ===", c); verify_d4; // m' (in m_r, survives the re-encrypt)
verify_d5; // K'/r'/K-bar
verify_d6; // c' == golden
verify_d7(0); // ss_o == KAT ss, dec_reject == 0
verify_d0; // ================= Run 2: corrupted ciphertext (reject path) =============
// ct_n != c, so c' != c -> implicit reject: ss == K-bar == J(z||ct_n) == ss_n.
run_decaps(1); // 1 = use ctn_b
verify_d7(1); // ss_o == KAT ss_n, dec_reject == 1
if (errors == 0) $display("K=%0d CASE %0d PASS (D7): end-to-end Decaps (accept + reject) OK", KP, casenum);
else $display("K=%0d CASE %0d FAIL (D7): %0d total errors", KP, casenum, errors);
$finish; $finish;
end end
initial begin #120000000; $display("FAIL: global timeout"); $finish; end initial begin #120000000; $display("FAIL: global timeout"); $finish; end
// read one stored coefficient at (slot, idx): present addr, wait for the
// bank read (sd_bram, 1 cyc) + dbg_coeff_r register (1 cyc) + settle.
task rdcoeff;
input [5:0] slot; input [7:0] idx; output [11:0] val;
begin
dbg_slot_i = slot; dbg_idx_i = idx;
@(posedge clk); @(posedge clk); @(posedge clk);
val = dbg_coeff_o;
end
endtask
// Stream a ciphertext into c_in_bram (sel 0 = valid ct_b, 1 = corrupted ctn_b),
// pulse start_i, and wait for done_o. dk is already loaded and persists.
task run_decaps;
input sel;
integer ii;
begin
for (ii = 0; ii < CTB; ii = ii + 1) begin
c_in_we = 1'b1; c_in_addr = ii[10:0];
c_in_byte = sel ? ctn_b[ii] : ct_b[ii];
@(posedge clk);
end
c_in_we = 1'b0; @(posedge clk);
start_i=1; @(posedge clk); start_i=0;
c=0; while(!done_o && c<2000000) begin @(posedge clk); c=c+1; end
if(!done_o) begin $display("FAIL K=%0d case %0d: timeout (sel=%0d)", KP, casenum, sel); $finish; end
$display("=== Decaps run (sel=%0d) done in %0d cyc ===", sel, c);
// settle so dbg taps reflect the finished run
repeat(2) @(posedge clk);
end
endtask
// D7: end-to-end shared secret. sel=0 (accept): ss_o == KAT ss, dec_reject=0.
// sel=1 (reject): ss_o == KAT ss_n (= K-bar = J(z||ct_n)), dec_reject=1.
task verify_d7;
input sel;
integer be;
reg [255:0] exp;
begin
be = 0;
for (j = 0; j < 32; j = j + 1)
exp[8*j +: 8] = sel ? ssn_b[j] : ss_b[j];
for (j = 0; j < 32; j = j + 1)
if (ss_o[8*j +: 8] !== exp[8*j +: 8]) begin
if (be < 4) $display(" ss[%0d] got=%02x exp=%02x", j, ss_o[8*j +: 8], exp[8*j +: 8]);
be = be + 1;
end
if (be == 0)
$display(" PASS: ss == KAT %0s (32 bytes), reject=%b",
sel ? "ss_n (reject)" : "ss (accept)", dut.dec_reject);
else
$display(" FAIL: ss %0d byte mismatches (sel=%0d, reject=%b)", be, sel, dut.dec_reject);
errors = errors + be;
// also check the reject flag matches the expectation
if (dut.dec_reject !== sel) begin
$display(" FAIL: dec_reject=%b expected %b", dut.dec_reject, sel);
errors = errors + 1;
end
end
endtask
// D0: verify dk parse. H(ek)=dk[768K+32:+32], z=dk[768K+64:+32] captured into // D0: verify dk parse. H(ek)=dk[768K+32:+32], z=dk[768K+64:+32] captured into
// hek_r/z_r (dbg_dech_o/dbg_decz_o). ek_pke=dk[384K:768K+32] in ek_bram // hek_r/z_r (dbg_dech_o/dbg_decz_o). ek_pke=dk[384K:768K+32] in ek_bram
// (dbg_byte sel=0), dk_pke=dk[0:384K] in dkp_bram (sel=1). // (dbg_byte sel=0), dk_pke=dk[0:384K] in dkp_bram (sel=1).
@@ -103,12 +174,14 @@ module tb_mlkem_dec_katK_xsim;
integer be; integer be;
reg [7:0] got; reg [7:0] got;
begin begin
errors = 0; // errors is initialized by the caller (main flow), not here.
// H(ek) // H(ek)
be = 0;
for (j = 0; j < 32; j = j + 1) for (j = 0; j < 32; j = j + 1)
if (dbg_dech_o[8*j +: 8] !== dk_b[DKPB + EKB + j]) errors = errors + 1; if (dbg_dech_o[8*j +: 8] !== dk_b[DKPB + EKB + j]) be = be + 1;
if (errors == 0) $display(" PASS: H(ek) parsed == dk[768K+32 ..]"); if (be == 0) $display(" PASS: H(ek) parsed == dk[768K+32 ..]");
else $display(" FAIL: H(ek) %0d byte mismatches", errors); else $display(" FAIL: H(ek) %0d byte mismatches", be);
errors = errors + be;
// z // z
be = 0; be = 0;
@@ -145,9 +218,202 @@ module tb_mlkem_dec_katK_xsim;
if (be == 0) $display(" PASS: dk_pke round-trip (BRAM) == dk[0 ..]"); if (be == 0) $display(" PASS: dk_pke round-trip (BRAM) == dk[0 ..]");
else $display(" FAIL: dk_pke %0d byte mismatches", be); else $display(" FAIL: dk_pke %0d byte mismatches", be);
errors = errors + be; errors = errors + be;
if (errors == 0) $display(" D0 subcheck PASS: dk parse OK");
else $display(" D0 subcheck FAIL: %0d errors", errors);
end
endtask
if (errors == 0) $display("K=%0d CASE %0d PASS (D0): dk parse OK", KP, casenum); // D1: verify u'[i] (bank_se rel i, abs slot K*K+i) and v' (bank_t rel
else $display("K=%0d CASE %0d FAIL (D0): %0d total errors", KP, casenum, errors); // DEC_VSLOT=2, abs slot K*K+2*K+2) against the decode-decompress golden.
reg [11:0] up_g [0:255];
reg [11:0] vp_g [0:255];
task verify_d1;
integer i, j, be, ndiff;
reg [8*100-1:0] fn;
reg [11:0] got;
begin
ndiff = 0;
// u'[i] is NOT checked here: D2's forward NTT transforms u' in place
// in bank_se rel 0..K-1, so by the time the run finishes those slots
// hold u_hat. u' correctness is proven transitively in verify_d2
// (u_hat == NTT(u') golden). Only v' (bank_a slot 1, untouched) checked.
// v' lives in bank_a DEC_VASLOT=1 (abs slot 1).
$sformat(fn, "sync_rtl/top/TB/vectors/decgold/dc_k%0d_c%0d_vp.hex", KP, casenum);
$readmemh(fn, vp_g);
be = 0;
for (j = 0; j < 256; j = j + 1) begin
rdcoeff(1, j[7:0], got);
if (got !== vp_g[j]) begin
if (be < 4) $display(" v'[%0d] got=%03x exp=%03x", j, got, vp_g[j]);
be = be + 1;
end
end
if (be == 0) $display(" PASS: v' == golden (256 coeffs)");
else $display(" FAIL: v' %0d coeff mismatches", be);
ndiff = ndiff + be;
errors = errors + ndiff;
end
endtask
// D2: verify s_hat[i] (bank_a slot i*K, byteDecode12 dk_pke) and
// u_hat[i] (bank_se rel slot i, = NTT(u'[i])) against golden.
reg [11:0] sh_g [0:255];
reg [11:0] uh_g [0:255];
task verify_d2;
integer i, j, be, ndiff;
reg [8*100-1:0] fn;
reg [11:0] got;
begin
ndiff = 0;
for (i = 0; i < KP; i = i + 1) begin
// s_hat[i] at bank_a slot i*KP
$sformat(fn, "sync_rtl/top/TB/vectors/decgold/dc_k%0d_c%0d_shat_%0d.hex", KP, casenum, i);
$readmemh(fn, sh_g);
be = 0;
for (j = 0; j < 256; j = j + 1) begin
rdcoeff(i*KP, j[7:0], got);
if (got !== sh_g[j]) begin
if (be < 4) $display(" s_hat[%0d][%0d] got=%03x exp=%03x", i, j, got, sh_g[j]);
be = be + 1;
end
end
if (be == 0) $display(" PASS: s_hat[%0d] == golden", i);
else $display(" FAIL: s_hat[%0d] %0d mismatches", i, be);
ndiff = ndiff + be;
// u_hat[i] at bank_se rel slot i (abs KP*KP + i)
$sformat(fn, "sync_rtl/top/TB/vectors/decgold/dc_k%0d_c%0d_uhat_%0d.hex", KP, casenum, i);
$readmemh(fn, uh_g);
be = 0;
for (j = 0; j < 256; j = j + 1) begin
rdcoeff(KP*KP + i, j[7:0], got);
if (got !== uh_g[j]) begin
if (be < 4) $display(" u_hat[%0d][%0d] got=%03x exp=%03x", i, j, got, uh_g[j]);
be = be + 1;
end
end
if (be == 0) $display(" PASS: u_hat[%0d] == golden", i);
else $display(" FAIL: u_hat[%0d] %0d mismatches", i, be);
ndiff = ndiff + be;
end
errors = errors + ndiff;
end
endtask
// D3: verify w (bank_t rel UPSUM=1, abs slot K*K+2*K+1) == golden.
reg [11:0] w_g [0:255];
task verify_d3;
integer j, be;
reg [8*100-1:0] fn;
reg [11:0] got;
begin
$sformat(fn, "sync_rtl/top/TB/vectors/decgold/dc_k%0d_c%0d_w.hex", KP, casenum);
$readmemh(fn, w_g);
be = 0;
for (j = 0; j < 256; j = j + 1) begin
rdcoeff(KP*KP + 2*KP + 1, j[7:0], got);
if (got !== w_g[j]) begin
if (be < 4) $display(" w[%0d] got=%03x exp=%03x", j, got, w_g[j]);
be = be + 1;
end
end
if (be == 0) $display(" PASS: w == golden (256 coeffs)");
else $display(" FAIL: w %0d coeff mismatches", be);
errors = errors + be;
end
endtask
// D4: verify m' = byteEncode_1(Compress_1(w)) == golden (32 bytes via dbg).
reg [7:0] mp_g [0:31];
task verify_d4;
integer j, be;
reg [8*100-1:0] fn;
begin
$sformat(fn, "sync_rtl/top/TB/vectors/decgold/dc_k%0d_c%0d_mprime.hex", KP, casenum);
$readmemh(fn, mp_g);
be = 0;
for (j = 0; j < 32; j = j + 1) begin
if (dbg_mprime_o[8*j +: 8] !== mp_g[j]) begin
if (be < 4) $display(" m'[%0d] got=%02x exp=%02x", j, dbg_mprime_o[8*j +: 8], mp_g[j]);
be = be + 1;
end
end
if (be == 0) $display(" PASS: m' == golden (32 bytes)");
else $display(" FAIL: m' %0d byte mismatches", be);
errors = errors + be;
end
endtask
// D5: verify K' (ss_o), r' (dbg_r_o), K-bar (dbg_kbar_o) against golden.
reg [7:0] kp_b [0:31];
reg [7:0] rp_b [0:31];
reg [7:0] kb_b [0:31];
task verify_d5;
integer j, be;
reg [8*100-1:0] fn;
begin
// K' = G(m'||h) low half -> ss_o
$sformat(fn, "sync_rtl/top/TB/vectors/decgold/dc_k%0d_c%0d_kprime.hex", KP, casenum);
$readmemh(fn, kp_b);
be = 0;
for (j = 0; j < 32; j = j + 1)
if (ss_o[8*j +: 8] !== kp_b[j]) begin
if (be < 4) $display(" K'[%0d] got=%02x exp=%02x", j, ss_o[8*j +: 8], kp_b[j]);
be = be + 1;
end
if (be == 0) $display(" PASS: K' == golden (32 bytes)");
else $display(" FAIL: K' %0d byte mismatches", be);
errors = errors + be;
// r' = G(m'||h) high half -> dbg_r_o
$sformat(fn, "sync_rtl/top/TB/vectors/decgold/dc_k%0d_c%0d_rprime.hex", KP, casenum);
$readmemh(fn, rp_b);
be = 0;
for (j = 0; j < 32; j = j + 1)
if (dbg_r_o[8*j +: 8] !== rp_b[j]) begin
if (be < 4) $display(" r'[%0d] got=%02x exp=%02x", j, dbg_r_o[8*j +: 8], rp_b[j]);
be = be + 1;
end
if (be == 0) $display(" PASS: r' == golden (32 bytes)");
else $display(" FAIL: r' %0d byte mismatches", be);
errors = errors + be;
// K-bar = J(z||c) -> dbg_kbar_o
$sformat(fn, "sync_rtl/top/TB/vectors/decgold/dc_k%0d_c%0d_kbar.hex", KP, casenum);
$readmemh(fn, kb_b);
be = 0;
for (j = 0; j < 32; j = j + 1)
if (dbg_kbar_o[8*j +: 8] !== kb_b[j]) begin
if (be < 4) $display(" K-bar[%0d] got=%02x exp=%02x", j, dbg_kbar_o[8*j +: 8], kb_b[j]);
be = be + 1;
end
if (be == 0) $display(" PASS: K-bar == golden (32 bytes)");
else $display(" FAIL: K-bar %0d byte mismatches", be);
errors = errors + be;
end
endtask
// D6: verify c' = K-PKE.Encrypt(ek_pke, m', r') in ct_bram == golden.
// ct length = 32*(du*K + dv): K2=768, K3=1088, K4=1568.
reg [7:0] cp_b [0:1567];
task verify_d6;
integer i, be, ctlen;
reg [8*100-1:0] fn;
reg [7:0] got;
begin
ctlen = (KP == 2) ? 768 : (KP == 3) ? 1088 : 1568;
$sformat(fn, "sync_rtl/top/TB/vectors/decgold/dc_k%0d_c%0d_cprime.hex", KP, casenum);
$readmemh(fn, cp_b);
be = 0;
for (i = 0; i < ctlen; i = i + 1) begin
dbg_ct_idx_i = i[10:0];
@(posedge clk); @(posedge clk); @(posedge clk);
got = dbg_ct_o;
if (got !== cp_b[i]) begin
if (be < 6) $display(" c'[%0d] got=%02x exp=%02x", i, got, cp_b[i]);
be = be + 1;
end
end
if (be == 0) $display(" PASS: c' == golden (%0d bytes)", ctlen);
else $display(" FAIL: c' %0d byte mismatches", be);
errors = errors + be;
end end
endtask endtask
endmodule endmodule

View File

@@ -0,0 +1,199 @@
// tb_mlkem_hello_world_xsim.v - Hardware run of ml-kem-r examples/hello_world.rs.
//
// Mirrors the Rust example end-to-end on the mlkem_top DUT (ML-KEM-512, K=2):
// 1. Alice: KeyGen(d=0x42..., z=0x77...) -> (ek 800B, dk 1632B)
// 2. Bob: Encaps(ek, m=0xDE...) -> (shared_key, kem_ct 768B)
// 3. Bob: XOR-encrypt "hello world" with key -> encrypted
// 4. Alice: Decaps(dk, kem_ct) -> recovered_key
// 5. Alice: XOR-decrypt encrypted with key -> "hello world"
// 6. Verify: shared_key == recovered_key, decrypted == message
//
// The whole protocol runs on ONE DUT instance: ek/dk are read out of KeyGen via
// the dbg taps, then fed back into Encaps/Decaps via the streaming input ports,
// exactly as a real ek/dk/ct would cross the wire between Alice and Bob.
//
// Each step prints its inputs and outputs.
//
// xelab tb_mlkem_hello_world_xsim ; xsim
`timescale 1ns/1ps
module tb_mlkem_hello_world_xsim;
localparam KP = 2; // ML-KEM-512
localparam EKB = 384*KP + 32; // 800
localparam DKB = 768*KP + 96; // 1632
localparam CTB = 32*(10*KP + 4); // 768
localparam MLEN = 11; // "hello world"
reg clk=0, rst_n=0, start_i=0;
reg [2:0] k_i = KP;
reg [1:0] op_i = 0;
reg [255:0] d_i=0, z_i=0, msg_i=0;
wire busy_o, done_o;
reg ek_in_we=0; reg [10:0] ek_in_addr=0; reg [7:0] ek_in_byte=0;
reg dk_in_we=0; reg [11:0] dk_in_addr=0; reg [7:0] dk_in_byte=0;
reg c_in_we=0; reg [10:0] c_in_addr=0; reg [7:0] c_in_byte=0;
wire [255:0] ss_o;
reg [10:0] dbg_ct_idx_i=0; wire [7:0] dbg_ct_o;
reg [5:0] dbg_slot_i=0; reg [7:0] dbg_idx_i=0; wire [11:0] dbg_coeff_o;
reg dbg_byte_sel_i=0; reg [10:0] dbg_byte_idx_i=0; wire [7:0] dbg_byte_o;
reg [11:0] dbg_dk_idx_i=0; wire [7:0] dbg_dk_o;
wire [255:0] dbg_rho_o, dbg_sigma_o, dbg_r_o, dbg_hek_o;
wire [255:0] dbg_mprime_o, dbg_kbar_o, dbg_decz_o, dbg_dech_o;
mlkem_top dut (
.clk(clk), .rst_n(rst_n), .k_i(k_i), .op_i(op_i),
.d_i(d_i), .z_i(z_i), .msg_i(msg_i), .start_i(start_i),
.busy_o(busy_o), .done_o(done_o),
.ek_in_we(ek_in_we), .ek_in_addr(ek_in_addr), .ek_in_byte(ek_in_byte),
.dk_in_we(dk_in_we), .dk_in_addr(dk_in_addr), .dk_in_byte(dk_in_byte),
.c_in_we(c_in_we), .c_in_addr(c_in_addr), .c_in_byte(c_in_byte),
.ss_o(ss_o), .dbg_ct_idx_i(dbg_ct_idx_i), .dbg_ct_o(dbg_ct_o),
.dbg_slot_i(dbg_slot_i), .dbg_idx_i(dbg_idx_i), .dbg_coeff_o(dbg_coeff_o),
.dbg_byte_sel_i(dbg_byte_sel_i), .dbg_byte_idx_i(dbg_byte_idx_i), .dbg_byte_o(dbg_byte_o),
.dbg_dk_idx_i(dbg_dk_idx_i), .dbg_dk_o(dbg_dk_o),
.dbg_rho_o(dbg_rho_o), .dbg_sigma_o(dbg_sigma_o),
.dbg_r_o(dbg_r_o), .dbg_hek_o(dbg_hek_o),
.dbg_mprime_o(dbg_mprime_o), .dbg_kbar_o(dbg_kbar_o),
.dbg_decz_o(dbg_decz_o), .dbg_dech_o(dbg_dech_o)
);
always #5 clk = ~clk;
// storage shuttled between operations (the "wire" between Alice and Bob)
reg [7:0] ek_b [0:EKB-1];
reg [7:0] dk_b [0:DKB-1];
reg [7:0] ct_b [0:CTB-1];
reg [7:0] msg_b [0:MLEN-1]; // "hello world"
reg [7:0] enc_b [0:MLEN-1]; // XOR-encrypted
reg [7:0] dec_b [0:MLEN-1]; // XOR-decrypted
reg [255:0] shared_key, recovered_key;
integer c, i, j, errors;
// ---- pulse start and wait for done ----
task run_op;
input [1:0] op;
begin
op_i = op;
start_i = 1'b1; @(posedge clk); start_i = 1'b0;
c = 0;
while (!done_o && c < 4000000) begin @(posedge clk); c = c + 1; end
if (!done_o) begin $display("FAIL: op=%0d timeout", op); $finish; end
end
endtask
task print_hex32; // print a 256-bit value as 32 hex bytes, byte 0 first
input [255:0] v;
begin
for (j = 0; j < 32; j = j + 1) $write("%02x", v[8*j +: 8]);
$write("\n");
end
endtask
initial begin
errors = 0;
// message bytes "hello world"
msg_b[0]="h"; msg_b[1]="e"; msg_b[2]="l"; msg_b[3]="l"; msg_b[4]="o";
msg_b[5]=" "; msg_b[6]="w"; msg_b[7]="o"; msg_b[8]="r"; msg_b[9]="l"; msg_b[10]="d";
$display("=== ML-KEM hello_world (hardware, ML-KEM-512) ===");
$write("Original: \"");
for (i = 0; i < MLEN; i = i + 1) $write("%c", msg_b[i]);
$display("\"\n");
rst_n=0; repeat(4) @(posedge clk); rst_n=1; @(posedge clk);
// ===== Step 1: Alice KeyGen(d, z) =====
d_i = {32{8'h42}}; // d = 0x42 repeated (byte 0 in d_i[7:0])
z_i = {32{8'h77}}; // z = 0x77 repeated
$display("[1] Alice KeyGen");
$write(" in d = "); print_hex32(d_i);
$write(" in z = "); print_hex32(z_i);
run_op(2'd0);
// read ek (sel=0) out of ek_bram
dbg_byte_sel_i = 1'b0;
for (i = 0; i < EKB; i = i + 1) begin
dbg_byte_idx_i = i[10:0]; @(posedge clk); @(posedge clk);
ek_b[i] = dbg_byte_o;
end
// read full dk (1632 B) via dbg_dk
for (i = 0; i < DKB; i = i + 1) begin
dbg_dk_idx_i = i[11:0]; @(posedge clk); @(posedge clk);
dk_b[i] = dbg_dk_o;
end
$display(" out ek = %0d B (ek[0:8] = %02x %02x %02x %02x %02x %02x %02x %02x ...)",
EKB, ek_b[0],ek_b[1],ek_b[2],ek_b[3],ek_b[4],ek_b[5],ek_b[6],ek_b[7]);
$display(" out dk = %0d B (dk[0:8] = %02x %02x %02x %02x %02x %02x %02x %02x ...)",
DKB, dk_b[0],dk_b[1],dk_b[2],dk_b[3],dk_b[4],dk_b[5],dk_b[6],dk_b[7]);
$display(" (cycles: %0d)\n", c);
// ===== Step 2: Bob Encaps(ek, m) =====
// stream ek back into ek_bram (Bob receives Alice's public key)
for (i = 0; i < EKB; i = i + 1) begin
ek_in_we = 1'b1; ek_in_addr = i[10:0]; ek_in_byte = ek_b[i];
@(posedge clk);
end
ek_in_we = 1'b0; @(posedge clk);
msg_i = {32{8'hDE}}; // m = 0xDE repeated
$display("[2] Bob Encaps");
$write(" in ek = %0d B; in m = ", EKB); print_hex32(msg_i);
run_op(2'd1);
shared_key = ss_o;
// read ct (768 B) out of ct_bram
for (i = 0; i < CTB; i = i + 1) begin
dbg_ct_idx_i = i[10:0]; @(posedge clk); @(posedge clk);
ct_b[i] = dbg_ct_o;
end
$write(" out shared_key = "); print_hex32(shared_key);
$display(" out kem_ct = %0d B (ct[0:8] = %02x %02x %02x %02x %02x %02x %02x %02x ...)",
CTB, ct_b[0],ct_b[1],ct_b[2],ct_b[3],ct_b[4],ct_b[5],ct_b[6],ct_b[7]);
$display(" (cycles: %0d)\n", c);
// ===== Step 3: Bob XOR-encrypt "hello world" with shared_key =====
for (i = 0; i < MLEN; i = i + 1)
enc_b[i] = msg_b[i] ^ shared_key[8*(i % 32) +: 8];
$display("[3] Bob encrypt (XOR stream, demo)");
$write(" in msg = "); for (i=0;i<MLEN;i=i+1) $write("%02x ", msg_b[i]); $write("\n");
$write(" out encrypted = "); for (i=0;i<MLEN;i=i+1) $write("%02x ", enc_b[i]); $write("\n\n");
// ===== Step 4: Alice Decaps(dk, kem_ct) =====
for (i = 0; i < DKB; i = i + 1) begin
dk_in_we = 1'b1; dk_in_addr = i[11:0]; dk_in_byte = dk_b[i];
@(posedge clk);
end
dk_in_we = 1'b0;
for (i = 0; i < CTB; i = i + 1) begin
c_in_we = 1'b1; c_in_addr = i[10:0]; c_in_byte = ct_b[i];
@(posedge clk);
end
c_in_we = 1'b0; @(posedge clk);
$display("[4] Alice Decaps");
$display(" in dk = %0d B; in kem_ct = %0d B", DKB, CTB);
run_op(2'd2);
recovered_key = ss_o;
$write(" out recovered_key = "); print_hex32(recovered_key);
$display(" (cycles: %0d)\n", c);
// ===== Step 5: Alice XOR-decrypt =====
for (i = 0; i < MLEN; i = i + 1)
dec_b[i] = enc_b[i] ^ recovered_key[8*(i % 32) +: 8];
$display("[5] Alice decrypt");
$write(" in encrypted = "); for (i=0;i<MLEN;i=i+1) $write("%02x ", enc_b[i]); $write("\n");
$write(" out decrypted = \"");
for (i = 0; i < MLEN; i = i + 1) $write("%c", dec_b[i]);
$display("\"\n");
// ===== Step 6: Verify =====
if (shared_key !== recovered_key) begin
$display("FAIL: shared_key != recovered_key");
errors = errors + 1;
end
for (i = 0; i < MLEN; i = i + 1)
if (dec_b[i] !== msg_b[i]) errors = errors + 1;
if (errors == 0)
$display("Success: keys match, message recovered. (hardware ML-KEM-512)");
else
$display("FAILURE: %0d mismatches", errors);
$finish;
end
initial begin #200000000; $display("FAIL: global timeout"); $finish; end
endmodule

View File

@@ -0,0 +1,169 @@
// tb_mlkem_two_inst_xsim.v - ML-KEM hello_world on TWO mlkem_top instances.
//
// Models the real two-party split:
// * Instance A (u_genenc): Alice/Bob side that does KeyGen THEN Encaps.
// - KeyGen(d,z) writes ek into A's own ek_bram and produces dk.
// - Encaps(m) reuses that same ek_bram (no re-streaming) -> shared_key, ct.
// * Instance B (u_dec): Alice side that does Decaps.
// - receives dk (read out of A via dbg_dk) and ct (read out of A via
// dbg_ct), streamed into B's input ports -> recovered_key.
//
// Then XOR-encrypt/decrypt "hello world" and verify both keys + message match.
// Each step prints its inputs and outputs.
//
// xelab tb_mlkem_two_inst_xsim ; xsim
`timescale 1ns/1ps
module tb_mlkem_two_inst_xsim;
localparam KP = 2; // ML-KEM-512
localparam EKB = 384*KP + 32; // 800
localparam DKB = 768*KP + 96; // 1632
localparam CTB = 32*(10*KP + 4); // 768
localparam MLEN = 11; // "hello world"
reg clk=0;
always #5 clk = ~clk;
// ---------------- Instance A: KeyGen + Encaps ----------------
reg a_rst_n=0, a_start=0;
reg [1:0] a_op=0;
reg [255:0] a_d=0, a_z=0, a_msg=0;
wire a_busy, a_done;
wire [255:0] a_ss;
reg [10:0] a_ct_idx=0; wire [7:0] a_ct_o;
reg a_byte_sel=0; reg [10:0] a_byte_idx=0; wire [7:0] a_byte_o;
reg [11:0] a_dk_idx=0; wire [7:0] a_dk_o;
wire [255:0] a_rho,a_sigma,a_r,a_hek,a_mp,a_kbar,a_dz,a_dh;
mlkem_top u_genenc (
.clk(clk), .rst_n(a_rst_n), .k_i(KP[2:0]), .op_i(a_op),
.d_i(a_d), .z_i(a_z), .msg_i(a_msg), .start_i(a_start),
.busy_o(a_busy), .done_o(a_done),
.ek_in_we(1'b0), .ek_in_addr(11'd0), .ek_in_byte(8'd0),
.dk_in_we(1'b0), .dk_in_addr(12'd0), .dk_in_byte(8'd0),
.c_in_we(1'b0), .c_in_addr(11'd0), .c_in_byte(8'd0),
.ss_o(a_ss), .dbg_ct_idx_i(a_ct_idx), .dbg_ct_o(a_ct_o),
.dbg_slot_i(6'd0), .dbg_idx_i(8'd0), .dbg_coeff_o(),
.dbg_byte_sel_i(a_byte_sel), .dbg_byte_idx_i(a_byte_idx), .dbg_byte_o(a_byte_o),
.dbg_dk_idx_i(a_dk_idx), .dbg_dk_o(a_dk_o),
.dbg_rho_o(a_rho), .dbg_sigma_o(a_sigma), .dbg_r_o(a_r), .dbg_hek_o(a_hek),
.dbg_mprime_o(a_mp), .dbg_kbar_o(a_kbar), .dbg_decz_o(a_dz), .dbg_dech_o(a_dh)
);
// ---------------- Instance B: Decaps ----------------
reg b_rst_n=0, b_start=0;
wire b_busy, b_done;
wire [255:0] b_ss;
reg b_dk_we=0; reg [11:0] b_dk_addr=0; reg [7:0] b_dk_byte=0;
reg b_c_we=0; reg [10:0] b_c_addr=0; reg [7:0] b_c_byte=0;
wire [255:0] b_rho,b_sigma,b_r,b_hek,b_mp,b_kbar,b_dz,b_dh;
wire [7:0] b_byte_o, b_dk_o, b_ct_o;
mlkem_top u_dec (
.clk(clk), .rst_n(b_rst_n), .k_i(KP[2:0]), .op_i(2'd2),
.d_i(256'd0), .z_i(256'd0), .msg_i(256'd0), .start_i(b_start),
.busy_o(b_busy), .done_o(b_done),
.ek_in_we(1'b0), .ek_in_addr(11'd0), .ek_in_byte(8'd0),
.dk_in_we(b_dk_we), .dk_in_addr(b_dk_addr), .dk_in_byte(b_dk_byte),
.c_in_we(b_c_we), .c_in_addr(b_c_addr), .c_in_byte(b_c_byte),
.ss_o(b_ss), .dbg_ct_idx_i(11'd0), .dbg_ct_o(b_ct_o),
.dbg_slot_i(6'd0), .dbg_idx_i(8'd0), .dbg_coeff_o(),
.dbg_byte_sel_i(1'b0), .dbg_byte_idx_i(11'd0), .dbg_byte_o(b_byte_o),
.dbg_dk_idx_i(12'd0), .dbg_dk_o(b_dk_o),
.dbg_rho_o(b_rho), .dbg_sigma_o(b_sigma), .dbg_r_o(b_r), .dbg_hek_o(b_hek),
.dbg_mprime_o(b_mp), .dbg_kbar_o(b_kbar), .dbg_decz_o(b_dz), .dbg_dech_o(b_dh)
);
// shuttle storage (the wire between the two instances)
reg [7:0] dk_b [0:DKB-1];
reg [7:0] ct_b [0:CTB-1];
reg [7:0] msg_b [0:MLEN-1];
reg [7:0] enc_b [0:MLEN-1];
reg [7:0] dec_b [0:MLEN-1];
reg [255:0] shared_key, recovered_key;
integer c, i, j, errors;
task wait_a; begin
c=0; while(!a_done && c<4000000) begin @(posedge clk); c=c+1; end
if(!a_done) begin $display("FAIL: instance A timeout (op=%0d)", a_op); $finish; end
end endtask
task wait_b; begin
c=0; while(!b_done && c<4000000) begin @(posedge clk); c=c+1; end
if(!b_done) begin $display("FAIL: instance B timeout"); $finish; end
end endtask
task print_hex32; input [255:0] v; begin
for (j=0;j<32;j=j+1) $write("%02x", v[8*j +: 8]); $write("\n");
end endtask
initial begin
errors = 0;
msg_b[0]="h"; msg_b[1]="e"; msg_b[2]="l"; msg_b[3]="l"; msg_b[4]="o";
msg_b[5]=" "; msg_b[6]="w"; msg_b[7]="o"; msg_b[8]="r"; msg_b[9]="l"; msg_b[10]="d";
$display("=== ML-KEM hello_world (TWO instances: genenc + dec, ML-KEM-512) ===");
$write("Original: \""); for(i=0;i<MLEN;i=i+1) $write("%c", msg_b[i]); $display("\"\n");
a_rst_n=0; b_rst_n=0; repeat(4) @(posedge clk); a_rst_n=1; b_rst_n=1; @(posedge clk);
// ===== Step 1: Instance A KeyGen(d, z) =====
a_d = {32{8'h42}}; a_z = {32{8'h77}};
$display("[A.1] KeyGen");
$write(" in d = "); print_hex32(a_d);
$write(" in z = "); print_hex32(a_z);
a_op=2'd0; a_start=1; @(posedge clk); a_start=0; wait_a;
// read dk out of A (to hand to instance B)
for (i=0;i<DKB;i=i+1) begin a_dk_idx=i[11:0]; @(posedge clk); @(posedge clk); dk_b[i]=a_dk_o; end
$display(" out ek = %0d B (stays in A's ek_bram); dk = %0d B (dk[0:8]=%02x %02x %02x %02x %02x %02x %02x %02x ...)",
EKB, DKB, dk_b[0],dk_b[1],dk_b[2],dk_b[3],dk_b[4],dk_b[5],dk_b[6],dk_b[7]);
$display(" (cycles: %0d)\n", c);
// ===== Step 2: Instance A Encaps(ek, m) =====
// ek already lives in A's ek_bram from KeyGen; no re-streaming needed.
a_msg = {32{8'hDE}};
$display("[A.2] Encaps (reuses ek_bram from KeyGen)");
$write(" in m = "); print_hex32(a_msg);
a_op=2'd1; a_start=1; @(posedge clk); a_start=0; wait_a;
shared_key = a_ss;
for (i=0;i<CTB;i=i+1) begin a_ct_idx=i[10:0]; @(posedge clk); @(posedge clk); ct_b[i]=a_ct_o; end
$write(" out shared_key = "); print_hex32(shared_key);
$display(" out kem_ct = %0d B (ct[0:8]=%02x %02x %02x %02x %02x %02x %02x %02x ...)",
CTB, ct_b[0],ct_b[1],ct_b[2],ct_b[3],ct_b[4],ct_b[5],ct_b[6],ct_b[7]);
$display(" (cycles: %0d)\n", c);
// ===== Step 3: Bob XOR-encrypt =====
for (i=0;i<MLEN;i=i+1) enc_b[i] = msg_b[i] ^ shared_key[8*(i%32) +: 8];
$display("[3] encrypt \"hello world\" (XOR stream, demo)");
$write(" out encrypted = "); for(i=0;i<MLEN;i=i+1) $write("%02x ", enc_b[i]); $write("\n\n");
// ===== Step 4: Instance B Decaps(dk, kem_ct) =====
// hand dk + ct from A to B over the streaming input ports
for (i=0;i<DKB;i=i+1) begin b_dk_we=1; b_dk_addr=i[11:0]; b_dk_byte=dk_b[i]; @(posedge clk); end
b_dk_we=0;
for (i=0;i<CTB;i=i+1) begin b_c_we=1; b_c_addr=i[10:0]; b_c_byte=ct_b[i]; @(posedge clk); end
b_c_we=0; @(posedge clk);
$display("[B.1] Decaps (separate instance)");
$display(" in dk = %0d B, kem_ct = %0d B (received from instance A)", DKB, CTB);
b_start=1; @(posedge clk); b_start=0; wait_b;
recovered_key = b_ss;
$write(" out recovered_key = "); print_hex32(recovered_key);
$display(" (cycles: %0d)\n", c);
// ===== Step 5: Alice XOR-decrypt =====
for (i=0;i<MLEN;i=i+1) dec_b[i] = enc_b[i] ^ recovered_key[8*(i%32) +: 8];
$write("[5] decrypt -> \""); for(i=0;i<MLEN;i=i+1) $write("%c", dec_b[i]); $display("\"\n");
// ===== Step 6: Verify =====
if (shared_key !== recovered_key) begin
$display("FAIL: shared_key (A) != recovered_key (B)"); errors=errors+1;
end
for (i=0;i<MLEN;i=i+1) if (dec_b[i] !== msg_b[i]) errors=errors+1;
if (errors==0)
$display("Success: A.shared_key == B.recovered_key, message recovered across two instances.");
else
$display("FAILURE: %0d mismatches", errors);
$finish;
end
initial begin #400000000; $display("FAIL: global timeout"); $finish; end
endmodule

View File

@@ -0,0 +1,768 @@
91
7e
59
d1
e1
82
a2
96
48
a6
19
55
a1
54
b3
04
a8
42
f4
58
eb
a5
93
f3
06
5f
b7
d7
44
fb
a2
4f
a3
a0
d5
38
85
4e
32
84
4d
b2
48
d4
81
00
c3
89
c4
c4
b3
ca
6c
23
4f
2f
61
a6
79
32
ae
ee
80
8d
bf
e9
8d
89
6d
1e
96
68
82
09
65
c6
34
3b
bb
4a
4d
e6
4b
7a
99
fb
53
b5
26
4e
31
99
d5
87
ff
a5
e0
47
9f
6b
73
86
b2
3c
b9
c2
43
fa
6f
54
57
fc
97
db
c9
6d
cc
03
9b
d6
c4
e7
e8
5a
90
b5
c5
23
24
16
43
4e
a9
42
cc
71
13
4b
b9
a2
f4
99
1e
05
95
e3
48
7f
ea
ba
c4
79
ca
b9
51
0d
57
b8
62
50
ee
7c
96
a6
7a
9f
2c
61
21
f7
da
a0
2c
5c
fa
3b
23
b0
c7
32
c2
b1
56
94
e1
cc
ba
c8
2b
78
7c
f2
11
8d
08
42
5c
bb
a1
21
88
22
17
94
0c
89
4c
be
47
aa
e2
54
1f
5c
6e
0b
d1
ba
ab
31
fd
2b
2e
cb
34
b9
e6
93
f6
fc
0f
de
ea
90
67
16
d0
88
18
f5
1d
f0
c4
69
40
29
e8
c3
23
4b
e0
b6
24
71
b2
76
9d
9a
c4
ce
b9
47
60
23
80
f3
a4
97
b2
a0
1f
f7
b8
74
6c
1c
7a
e8
19
83
e0
16
bd
65
c7
cd
17
62
c1
91
85
7e
41
c2
32
19
81
f6
c7
aa
8d
7a
fa
aa
9f
a0
b5
57
ec
1e
c1
28
5f
8b
4d
6c
78
8a
ff
15
9e
a5
86
2e
81
4d
08
25
c8
83
4b
7c
a4
5d
b7
c8
ed
a3
fa
6a
6a
7b
8a
40
51
95
29
bf
74
b6
a0
f8
0c
48
49
17
f4
0c
10
7d
18
2b
ce
3e
34
4f
d3
6d
1b
37
7a
98
2f
6b
f2
36
1b
8d
66
28
75
c1
66
dc
ca
73
24
0b
86
df
5e
e0
fa
42
31
b3
56
f0
cd
d6
b3
17
0f
f8
91
13
db
0b
1b
9d
d2
64
33
57
83
22
2c
be
7b
e8
44
64
2b
0b
19
88
d1
8b
26
8d
a6
f7
8c
c9
44
f4
3b
82
71
43
c4
dc
5e
e1
f0
d6
58
b8
7b
9c
00
86
2f
26
3d
6f
57
98
fc
82
e8
be
07
9a
11
08
de
fd
d4
c7
86
3c
31
47
e9
bd
f0
fb
c8
4d
eb
a2
15
fd
fb
9c
a4
23
7a
84
19
b2
6f
de
ff
63
a7
f9
5c
44
2b
ce
67
96
6e
be
6b
5f
9a
f1
fd
2a
7c
be
d6
48
ea
72
76
db
74
2d
ac
3e
47
0f
6c
c7
41
d8
2e
77
e9
c0
dd
01
9b
54
58
17
75
51
97
5b
59
63
3b
e6
7b
35
c0
d4
30
b7
25
52
4d
ea
fd
eb
a6
d3
64
3c
5c
82
eb
b5
24
79
66
9c
41
1b
b5
6b
39
7f
8d
37
b8
f7
fa
4c
ed
03
16
54
6c
aa
ee
41
9c
0e
7f
1d
96
a0
ec
61
4c
6c
9c
8e
03
e0
10
03
17
65
12
1f
1e
b8
fd
54
9f
de
04
6a
50
44
3e
ba
b9
fe
a2
e7
8a
29
f4
96
44
55
92
8d
b1
f9
e7
82
0e
53
3c
57
12
98
9b
3a
36
37
ea
00
a1
de
3e
46
9a
80
0c
43
1d
4d
f2
43
c1
dc
7d
6a
89
ba
79
00
d5
2b
78
bc
c1
03
47
4f
9d
2c
21
28
02
5c
31
93
c4
d1
a0
9f
50
90
5a
d2
de
7f
e8
e0
9f
04
7e
0e
72
e6
da
b0
ed
f7
e3
b0
8e
d1
31
6a
cf
85
72
54
b6
c1
fb
f6
4c
e5
82
f2
99
0c
ce
cf
95
05
fd
7e
85
17
99
8a
af
58
3b
e1
aa
64
1e
9b
54
db
b9
1c
a9
d0
70
09
13
96
7f
b0
34
92
01
b5
d6
79
b3
2d

View File

@@ -0,0 +1,32 @@
d8
83
47
7c
2a
eb
d6
5a
11
7f
4f
0c
15
05
90
b0
8a
57
13
25
ed
3e
37
8e
4f
e9
b1
af
c9
98
72
21

View File

@@ -0,0 +1,32 @@
2b
5c
52
ee
72
94
63
31
98
3b
a0
50
be
0f
43
50
55
c0
54
79
01
e0
35
59
b3
56
51
78
89
ea
27
c5

View File

@@ -0,0 +1,32 @@
20
a7
b7
e1
0f
70
49
6c
c3
82
20
b9
44
de
f6
99
bf
14
d1
4e
55
cf
4c
90
a1
2c
1b
33
fc
80
ff
ff

View File

@@ -0,0 +1,32 @@
08
cd
24
5f
59
e6
cb
6e
36
87
c6
63
27
49
b6
c0
73
7d
18
37
01
f0
b0
49
2b
84
33
58
89
3c
6a
24

View File

@@ -0,0 +1,256 @@
afa
6ad
379
79a
bd2
36c
6c8
455
40c
6f4
444
b88
66a
0c5
061
567
04d
2e0
44b
077
63f
a66
afb
576
1bc
bee
192
a1a
1b5
c63
01f
885
02a
840
550
428
1a1
c3e
9b3
50a
7f2
2e0
69a
541
64e
ca4
820
4b2
260
a61
92c
7a6
8c8
615
85e
1e1
01e
b5a
05b
210
919
0b0
77b
198
920
b8e
094
7ab
228
691
1dc
5fa
aaf
094
0b0
4c0
1ac
a26
7ce
3fa
528
7d0
2bf
191
7d0
477
1b3
cf8
50d
2ae
3ba
0cd
5a0
78f
273
bfb
2a0
bd1
25b
48c
305
65f
07a
bad
46b
98c
98c
c6d
9de
2c4
30d
3c4
ae5
32a
68b
c6d
0cb
245
463
0d3
0c5
29e
8d2
71c
83d
0f7
431
41f
cc2
404
500
67e
699
bca
466
a1b
793
3cc
6ed
0f5
48a
3fe
09b
752
7ce
78b
b97
7f6
a11
cb1
338
06a
7f2
0ab
82b
75d
22e
808
a86
0fb
13e
1a8
b8c
0d3
b5f
908
572
9e1
a56
1eb
810
000
591
af9
858
5aa
73e
1f2
c00
25a
3cc
23f
83c
71b
867
ad6
798
b1e
9f2
0d8
7b6
0f1
12b
4f6
156
93c
138
ae7
11a
304
a24
9ac
721
793
a5c
2e8
59e
281
10f
08f
3ae
28e
723
515
9e5
ca6
763
82a
91f
ad2
026
6b7
223
241
1d9
605
5bd
227
0dd
bfe
0e6
a8e
926
741
a88
2f5
1df
7f2
68c
c41
cf6
0e7
29f
a2b
3f7
0c0
8af
1d8
b2c
2e8
86a
636
190
926
b10
008

View File

@@ -0,0 +1,256 @@
042
b06
aad
07e
3c0
49b
8d5
118
c0a
bb9
b69
399
b52
11b
72c
c8c
7d9
59a
5b9
4c5
91f
1e9
5a1
1ff
14c
786
8e4
273
4c5
9b1
7da
7f0
6bd
9a7
13b
8d8
af7
421
786
830
3fd
3d2
61b
a92
76a
3e5
b99
91e
b5f
c16
18d
3d8
4ed
a31
104
35c
78e
054
270
54d
678
b6a
aba
c52
861
902
5b5
69a
6e5
332
542
9c4
ab9
76c
274
28f
939
546
4af
8d7
09d
135
253
714
439
cc0
059
6e1
20b
19b
442
06b
66f
bf8
c5d
3c9
6f1
c0b
286
c59
8b9
1b8
729
109
888
b4a
215
6ce
54a
672
b58
2d8
6df
8db
411
6f1
0cf
b4f
9cb
c57
774
018
58c
542
21d
673
6a1
400
0e4
bf3
beb
4fb
745
99a
5c9
54f
6d1
9db
770
9dc
217
4f1
19c
cf0
63a
56d
79e
a47
6e1
57b
004
107
506
2f4
745
2fa
832
c69
260
0f8
01c
6a2
0f7
c90
1a6
922
93c
113
1cd
8e5
402
042
0c8
c37
3d3
b6b
a83
821
a53
316
370
4e3
931
b05
9c9
035
36c
2c4
4f5
84b
cb1
752
3cc
c9c
36c
28e
afb
79b
7e2
24f
a78
8d9
727
aff
08b
86b
245
c9d
8a3
7fe
280
c34
762
192
c4a
0e3
014
91d
029
69d
7d5
9d3
0bd
656
965
15d
ca3
98b
882
74e
023
62a
a00
5f0
54c
235
4ec
479
1ce
64a
73a
ad9
133
98c
662
ad4
291
73e
2ce
ac3
4af
53f
935
659
737
210

View File

@@ -0,0 +1,256 @@
4bf
019
3bd
817
cea
633
b49
346
1e4
79d
3a9
6fe
8f3
4ca
a98
3d0
26e
192
51c
a9b
3c4
b29
12a
43d
09f
6e9
9b5
45a
c87
5b2
273
552
2c3
9f3
89f
539
79f
cf3
7e7
1ba
9d6
240
b82
aba
7c6
527
319
77c
51d
4e3
579
836
7d1
9aa
62c
189
511
703
34e
5a0
712
07b
9eb
1ee
ce8
587
143
855
c27
27d
501
998
41c
350
971
9d9
104
69c
cb3
c7b
3c4
9e5
c4a
cff
ace
00a
2b8
8c4
66a
802
717
50b
a5d
6eb
afe
306
34f
448
a13
43d
479
6b5
b91
adb
6a7
22d
92b
193
595
2eb
73c
89a
b6e
2ff
bf9
a3b
69f
6b5
8cb
82e
650
371
1bc
b83
a0e
8fb
a5e
783
0d4
538
8f9
45f
bdd
75e
5d7
866
996
525
3bd
239
3d5
203
990
9cd
8f6
51c
204
1ed
606
7bd
765
334
8cf
40c
2a5
1a8
033
797
328
5be
2aa
17e
7bf
00e
7fe
7f7
050
0ac
b2f
624
718
238
7aa
89f
c09
2a6
5bc
c68
11b
680
967
913
a6f
c3f
a11
986
60e
3fe
9ef
32f
c68
2ff
c3a
239
871
0c4
207
a68
752
176
584
a8b
303
ce0
261
983
cb4
073
4bd
1b3
6b0
8c0
158
6a5
614
cef
264
8c2
652
2ce
5f8
afe
978
531
574
75f
af6
958
11f
ba0
14a
bd6
4b4
909
b1c
9fd
7a1
766
550
6ff
322
ac1
a3d
586
c50
68d
1d1
570
84c
925
811
67c
775
5a7
931
4b4

View File

@@ -0,0 +1,256 @@
3d2
43b
603
1c0
c8f
270
5f5
547
6a0
451
48b
391
8f3
bdb
3ea
70a
4f8
264
1cc
3b0
c33
554
b93
2b7
af0
8cd
09a
9f2
b18
a95
353
216
4f7
1f5
09e
2bc
a5d
2a8
b54
ac9
560
b31
864
63b
73d
937
c11
4ff
4cd
012
5f6
0fb
2e7
1f1
6e3
84c
4e2
2f8
a4a
c0d
72a
aed
7cf
b24
544
83d
cb3
b5f
029
81f
1ac
085
4bf
58f
735
017
09d
137
0f2
544
7fa
089
701
01c
222
09c
6da
1cd
5cd
b76
466
009
56b
9cf
c93
202
1e3
722
771
73f
77b
17d
419
256
cc3
3f0
8ed
377
7eb
301
9f3
5fa
0b8
2a5
c8b
c7e
9a5
a19
b1f
21e
224
280
01b
3ab
492
866
494
2ae
323
9c8
453
716
703
a20
a3f
2a1
7bf
5e2
50a
7eb
409
26f
6ea
212
58c
544
413
896
b46
ccd
256
5f6
5da
976
187
b97
1ab
7d1
6de
a20
c57
7ec
6b7
491
2a3
bf7
38d
960
a38
24f
a55
6a8
68c
274
16d
641
3bc
09f
656
ad4
b22
516
bf5
9cb
433
28a
cb7
001
b7d
52c
7fa
ca3
27d
024
42f
bf2
33b
7c7
4ad
7e7
925
651
73a
a17
a1c
741
2af
163
79f
435
897
4ae
397
273
b5f
7eb
2ea
bf2
03c
b00
22d
8cf
c2c
c58
06a
520
a7c
057
7e4
a04
a99
4ad
729
2e8
1df
38a
2cd
934
5c3
207
181
832
52d
bfe
ab5
2d5
c92
87b
a32
967
285
8fb
1dc
0a0
9f5
3ba

View File

@@ -0,0 +1,256 @@
858
7b5
385
b78
827
562
1bd
872
392
114
431
91b
00d
229
a9e
482
63c
2f5
a7a
058
af6
643
0fa
cc3
bcf
2ae
6a1
ad8
3f6
bcc
a36
6b5
77b
710
41d
697
9c1
7ed
0ea
9ff
8c6
a63
730
403
3d9
52e
bb5
28d
8b6
0c0
2be
9ba
636
7c2
93f
189
1e8
1f5
1ee
521
284
91b
c07
3c9
77b
9aa
bd6
7c9
cf1
451
7dc
3f6
3e0
48c
196
cfa
218
666
659
576
7f6
20b
c55
966
c37
855
9bd
448
11b
67d
59a
a40
162
316
57c
ae5
c3e
73a
576
754
58d
30f
757
11e
75a
78e
089
a60
b30
8fe
ba2
841
659
bdc
107
792
2e2
c6b
89f
97c
5bd
882
bbc
424
9eb
6c5
70c
414
306
545
7d6
639
205
0f4
6c8
c8c
2c5
a43
5b7
cb6
a81
01a
190
294
5b7
56f
421
b74
918
716
8e4
618
814
193
2a7
06f
0d7
93b
6d8
1b4
83b
5ca
414
0a3
1bd
b9f
190
8a6
2df
c75
5b4
59a
364
8ca
8e0
284
cf7
b81
243
2ae
8da
329
b16
cd7
6b1
8d3
36e
542
048
72a
4fa
c72
05e
403
87c
344
085
32d
744
3cf
959
3d3
9fb
90e
4c0
89f
0ed
a81
c1a
037
730
681
316
636
a46
827
a26
747
ab5
580
6dc
6e2
542
6a8
959
aa1
7a8
a1f
c5b
1b0
048
767
831
135
075
294
392
548
19d
8ac
84b
882
8b9
81a
548
643
901
190
273
c51
24c
3f0
15f
882
ce7
11b

View File

@@ -0,0 +1,256 @@
542
566
973
68e
0fa
417
1a7
6b1
0f4
3a5
605
94f
5ca
330
be9
56c
b19
882
01a
421
525
c51
ab5
942
208
a8a
1a0
3b9
04b
a87
340
659
a0f
b81
cc0
2a4
ac2
b3a
590
2cb
18d
cac
8c3
c4e
a70
aa4
7d3
20b
4bd
57c
5c4
a4d
176
90e
138
b5a
132
8d7
099
280
8c6
044
2d5
ae9
c07
c41
b61
767
9ff
9a0
57c
7fa
2ab
2c1
4b6
6ab
06f
b85
c21
bcc
0dd
942
243
145
4fa
99a
7d3
72a
bdc
a87
1ee
37e
cda
1ce
a0f
36b
27d
c14
6c5
c3b
2b8
6c8
c21
7f0
681
c9c
7bf
319
b2a
6c5
c4e
6a4
973
649
548
0e4
69b
b44
441
a26
1b4
101
176
bd9
266
9b4
1d1
3f3
97c
492
c68
cca
1fb
2f5
bcf
6b8
6d2
cc0
62c
cfe
b03
7d6
5e1
378
70c
656
48c
59d
c2a
c85
559
c44
9b7
9e1
cb0
ae5
76b
25d
b10
b23
4b9
9e5
cb9
39b
031
608
05b
afc
a56
7af
02e
b44
9c4
3bc
4f1
12e
4bd
5f1
59a
489
b03
50e
c2a
2b4
270
0ac
b37
1e8
44b
85e
c92
bfa
bdc
3e9
c44
4ac
b67
4cd
774
625
14c
14f
589
932
49c
c5e
2bb
2d2
c17
8e7
2a1
c0d
68a
351
901
8a6
646
9f5
2f5
673
6df
078
911
4f7
0f7
a19
2f5
02e
2d8
27d
4ac
521
9fb
b78
b64
ce0
ad2
be0
0fa
562
104
b98
bd3
96c
9ba
632
236
21c
99a
3b9
451
76e
50b
7e0
81d
6a4

View File

@@ -0,0 +1,256 @@
b61
000
270
410
9c1
270
5b0
410
1a0
0d0
681
751
8f1
751
821
270
4e0
270
5b0
270
821
b61
000
000
0d0
821
b61
a91
b61
270
4e0
340
821
751
000
681
9c1
000
270
340
a91
0d0
a91
340
1a0
c31
270
340
0d0
9c1
9c1
a91
a91
5b0
821
4e0
751
681
821
8f1
751
5b0
000
000
410
a91
8f1
1a0
681
5b0
9c1
8f1
0d0
9c1
270
000
5b0
340
c31
340
a91
751
9c1
1a0
0d0
1a0
681
1a0
1a0
000
9c1
410
0d0
270
270
751
340
9c1
0d0
a91
000
821
c31
751
000
410
000
751
821
410
1a0
a91
b61
a91
c31
5b0
681
b61
000
b61
c31
751
340
000
b61
5b0
b61
000
1a0
5b0
4e0
b61
821
a91
000
8f1
a91
b61
5b0
c31
270
b61
000
8f1
b61
681
0d0
a91
0d0
270
821
4e0
c31
9c1
410
681
1a0
5b0
340
410
4e0
8f1
0d0
9c1
8f1
c31
4e0
c31
9c1
340
410
b61
1a0
681
1a0
c31
751
751
9c1
000
b61
9c1
c31
9c1
410
751
410
000
a91
c31
b61
5b0
410
681
5b0
0d0
751
751
821
681
c31
821
681
410
8f1
270
0d0
b61
821
821
340
4e0
b61
0d0
8f1
751
340
410
8f1
a91
751
8f1
9c1
0d0
751
821
000
a91
000
5b0
751
000
270
0d0
4e0
751
c31
5b0
000
8f1
340
270
1a0
751
0d0
000
410
8f1
4e0
a91
751
5b0
270
8f1
a91
1a0

View File

@@ -0,0 +1,256 @@
058
013
03d
05e
045
5f5
00b
009
652
689
68d
05c
cc5
65f
cd8
670
6cf
6e5
67f
080
657
6b2
044
5ab
6c7
02e
cce
cb2
ce7
5f5
6bc
62f
66d
663
6e8
67a
c9f
cee
ce5
c94
04d
ca9
028
cda
6ab
5ba
6db
047
6bb
02b
07d
6a5
cc6
c5b
642
ca4
012
049
658
63d
014
699
6c9
097
686
618
082
031
027
ce1
63f
677
cbf
68a
021
02c
076
04e
063
6a2
028
cd7
cbd
061
025
605
05d
c13
6d7
cfe
01b
634
66b
64a
c68
666
ccf
cf6
662
063
ccc
cad
665
c35
01e
64b
60f
62d
68e
075
6e3
662
c45
65e
675
cca
62b
6d3
65d
67c
6b1
ce3
cd3
6f3
6a9
00e
00d
65d
6a8
673
6af
622
6b7
680
ce0
6cc
080
ca9
5f7
cc1
6d7
c77
cd5
01c
6f1
01a
060
c8e
60a
02f
6aa
6b8
01d
6cf
636
675
084
cdc
6da
03a
60c
cb6
68b
c60
620
cd8
5f4
cdf
728
685
634
731
048
cf8
60a
6e2
c82
ccf
65d
60c
00b
0ab
5f3
ce8
074
c6c
ce4
cb9
686
0b2
cf0
66e
6b4
c8e
006
c64
034
641
02e
61e
ce8
03b
6b2
6d0
cef
661
038
c98
698
6ba
040
5c9
696
01f
055
049
6bc
686
cf5
cc5
63a
5eb
000
cc6
030
041
5f4
661
6a0
6ac
688
635
cfa
cfd
031
050
058
c97
034
642
61c
6c0
6e6
633
66a
6d4
6da
714
67c
6f4
6af
6ba
657
647
6b9
601

View File

@@ -0,0 +1,768 @@
1c
43
de
77
0e
9c
d5
98
46
b6
f8
1f
9c
61
cc
d8
37
97
8e
26
d3
2c
33
0d
50
9d
8e
29
d9
e7
fb
1a
4f
ba
52
10
1e
48
88
0d
80
61
6e
53
3a
ac
59
1f
eb
d3
93
cb
b1
28
2d
e1
53
56
0d
43
73
cb
88
2c
66
d3
07
32
95
97
91
0e
d3
ff
10
58
40
96
4a
64
0b
c7
62
e6
32
9b
9f
3b
a4
1a
9e
c3
1e
04
c8
c9
ef
ec
96
35
e0
a9
b4
56
f6
19
f1
06
58
be
d3
6a
13
3c
ed
0c
23
0b
3c
fd
d8
07
37
75
d7
59
49
2a
7e
3b
e0
ce
27
72
5e
b7
c2
47
4c
56
8d
03
92
43
fe
81
0b
31
db
2f
ce
8e
e4
03
73
06
a5
a9
bb
ee
1b
a7
45
c2
b4
fc
11
11
65
9f
5d
e9
19
94
1c
89
c8
cc
66
1e
ca
aa
e3
e9
61
0e
ac
66
cd
41
28
e3
d4
bb
5a
bb
38
83
7d
99
6d
b7
e5
c3
1f
d0
92
22
f2
2f
85
4c
25
fa
d8
ae
12
de
d3
e3
37
c3
24
14
68
ee
eb
ec
da
5d
d6
82
e6
e5
7f
51
ad
35
28
58
d0
40
48
a4
70
3a
dc
13
52
63
c4
7b
3a
5d
6e
6c
59
5b
a1
ea
06
02
bd
34
35
3e
19
1b
fd
f3
6d
56
b2
05
39
74
8a
d6
1c
66
c2
50
e0
7f
2e
3c
6d
60
89
44
72
fe
7e
67
7c
35
3f
70
a1
75
f0
4c
60
f6
9d
d9
21
e9
b9
24
9b
d6
29
14
40
58
29
ae
fa
05
2c
92
9c
f2
3a
ba
06
7a
7e
b7
fe
d0
c1
5f
40
1e
f5
08
4a
97
a6
1c
ed
6f
bf
87
91
48
72
31
c0
5f
c2
3a
38
7c
77
c0
31
65
38
ad
09
be
82
b1
0e
e8
f8
d6
a9
d9
79
f6
3a
2e
c2
36
4f
08
67
30
6e
9b
f6
e3
c0
38
84
96
be
c8
ad
16
15
15
b0
16
e9
1b
5a
b4
e4
ee
9c
48
f0
de
49
50
aa
49
6b
3b
ac
3a
bf
a8
6b
9c
be
27
a9
2a
c8
a8
17
65
0b
2c
4c
53
6e
da
1d
2a
b5
81
95
cd
42
3e
0f
4a
fb
5b
ae
71
01
43
88
21
b8
9a
99
20
6b
a5
fd
d9
d0
6c
39
df
d6
f0
6f
ba
8c
71
94
21
3d
0e
86
f8
0e
4e
5a
24
97
7e
fa
ac
f7
eb
c0
2b
02
8c
fc
96
73
de
6c
8a
0c
c6
ae
1e
57
73
50
93
5c
91
2c
e1
d5
6c
67
08
75
c4
d6
be
d8
75
0a
9e
fb
b4
50
79
1c
3d
56
0c
e5
10
21
32
74
f7
d4
b3
b8
8a
d9
96
70
34
75
10
68
58
0a
9d
ed
f0
ab
3c
ad
bb
2f
3b
bf
37
19
ce
73
e9
38
66
6f
2a
7f
e8
2f
10
f0
8d
32
5d
20
3e
c0
b0
58
5b
58
22
16
b7
fc
05
a7
29
14
81
d1
22
27
91
38
5b
64
16
e8
07
e6
97
02
6b
e2
18
c5
19
c1
b2
15
84
2a
fa
0e
58
f9
88
f8
8f
3d
90
cf
6c
f4
21
87
87
6b
db
d7
be
0b
2c
26
1b
0d
d3
6d
16
dd
e6
ed
83
54
bd
74
32
b6
6d
10
bc
ac
cb
69
c8
94
47
78
90
2f
c3
6d
c7
0f
4e
63
85
b9
d5
9a
ec
c6
44
5c
e4
ad
65
bc
c9
58
e8
86
a9
2a
1d
4d
17
5c
f3
54
b4
fe
e8
89
0e
a4
ce
21
f5
e8
31
f6
90
5a
e5
28
db
39
91
83
4a
24
52
f5
91
c3
ea
88
d7
61
2a
59
9a
30
14
fc
8e
10
b3
0d
48
39
8b
b8
99
1c
0f
f1
2a
73
56
64
50
32
53
0d
81
8d
8a
a2
50
0b
25
21
a7
3e
18
59
1e
c6
ef
42
2d
ae
ed
66
d2

View File

@@ -0,0 +1,32 @@
12
10
3c
dc
50
6a
c9
50
3e
5d
5c
1b
f0
a6
9a
cc
46
d2
85
fd
3e
38
6b
83
bf
97
d1
51
d9
d7
ae
f4

View File

@@ -0,0 +1,32 @@
63
df
b8
42
bf
76
7f
89
71
78
39
64
2a
9b
92
fc
cf
82
bf
46
a9
f3
9b
a1
a3
29
29
95
f3
f9
34
dc

View File

@@ -0,0 +1,32 @@
01
21
cb
32
ac
d1
87
11
35
cb
34
e2
9c
1a
0e
26
cc
c0
01
b9
39
ea
fa
ac
c2
8f
13
f1
93
8d
bf
91

View File

@@ -0,0 +1,32 @@
a9
1d
9b
93
5b
57
c1
e9
bb
4f
4a
6a
8f
2b
9b
36
8a
20
07
f6
53
78
4c
01
c1
6f
a3
4b
a5
58
2c
cb

View File

@@ -0,0 +1,256 @@
c9a
365
088
c2a
6e3
b1e
448
a90
704
c74
61e
5fc
9bb
c4c
b5a
9e1
a58
55b
322
172
66f
873
ac1
b42
99a
6af
082
329
c6f
1d5
a6e
1c9
b83
35e
825
1ed
635
367
456
88e
3df
72f
688
2a6
73b
99f
8dc
5b3
48e
aa0
635
c24
283
0bc
6f8
05c
7fa
28f
649
49f
2fd
841
252
826
cc7
c68
87f
c95
1a2
4fd
92d
482
012
6f2
a91
93f
6b0
9e3
454
a3c
a8b
4d5
b55
950
0e5
b72
bd5
a9d
504
64a
9e3
377
5cc
038
c23
bcc
6e0
9ad
82b
408
4e4
59c
cd9
727
a13
2c9
019
619
02f
ad9
2c2
aad
87b
4dc
916
42e
771
4f5
79c
361
3b9
55a
716
5a5
a15
022
8e5
153
c0d
9d6
648
adc
602
95f
c8e
b91
022
a07
11f
37a
12e
60f
29f
809
139
297
c25
a6f
c9f
83b
25c
40d
1a3
8ba
c0c
14b
132
ccb
37b
aad
315
941
ac4
0d6
826
5a3
3a2
954
32d
579
3c0
606
3f5
7ab
c94
265
cde
91e
298
aa6
1a8
b5f
102
624
159
1f4
ceb
b22
175
7c6
1cf
98b
5c3
171
30a
c51
223
200
b3d
a70
570
c5f
12f
393
24a
301
43f
9e1
55b
924
39f
3bc
249
77e
5ba
b14
9ec
0c3
ad7
966
440
394
583
586
7d9
00c
47e
2eb
516
3dc
79c
ca7
bad
1e6
c71
02c
489
4cb
a9b
c9d
1e5
564
7e9
44d
673
30d
ab7
471
739
b63
5c2
aa4
aed
42a
c36
53f

View File

@@ -0,0 +1,256 @@
1ac
9e9
98a
5f8
33a
9d8
316
2b9
126
a7a
a68
b28
147
8e1
6ea
a21
358
67f
0da
1a1
9a5
b6c
217
b7e
0cb
589
757
33f
3d3
bec
9ba
bdf
880
c9b
62e
ba0
b45
c83
54a
c6d
72d
504
979
56b
491
ba2
b89
617
41d
114
916
c85
3eb
849
a63
89c
965
126
33b
2ac
6ed
37d
b93
492
756
a92
2fb
bfd
715
7be
29f
ade
420
5f8
4db
ba0
7b1
8e8
7f7
19c
673
5a9
642
bad
516
527
974
3d4
98c
c39
a9f
4ba
6a6
8f3
4c9
603
4d7
a63
366
74d
7c8
b10
b7b
b24
55f
87d
897
637
42b
689
1ef
13d
a9c
374
ba7
0ac
a87
89c
93b
14c
4a3
a0c
6f3
b14
b57
33a
31d
0bf
559
079
06a
3e5
8cb
6e5
6ac
75f
811
661
a22
148
564
184
1a6
03d
4c2
7f7
018
92d
b37
bbd
c51
bc5
148
8e5
2d0
718
a0d
6a1
1f9
4c7
171
64c
6bc
1fe
3de
19d
056
6c8
1d9
ba4
c6d
2a6
459
004
01a
002
40f
6fd
985
448
13b
102
914
8b8
3c6
339
4ad
bef
0d3
6fb
343
8f5
980
973
217
606
29f
74d
565
b59
3f7
48f
1e6
c73
16d
c6c
43c
751
240
514
894
1b9
a5a
44f
493
17b
76a
ae8
af9
0c8
4ce
3b8
91d
03b
96f
50d
04d
896
93d
c11
134
b67
04f
956
cc0
522
42b
a2c
c1a
839
66f
81f
0bd
795
295
6fb
94c
0ca
81e
8c1
be8
08c
6f1
032
869
929

View File

@@ -0,0 +1,256 @@
546
1cf
5af
6cb
908
302
8de
4d2
8dc
32a
051
c90
a20
70b
7ae
783
a3c
ab4
028
67e
02e
c40
4fe
496
671
240
328
322
5c3
0ac
0a5
142
186
55c
009
8ab
4e0
6f3
1b5
63f
b66
6a0
78a
697
747
5c4
900
0ca
99c
4a7
893
26d
7f4
3ec
9d1
96c
304
be5
126
7d8
96e
51e
a96
627
064
3e1
80a
986
c9d
0bd
c8f
533
a48
c13
a82
986
132
44b
98d
b4b
ba8
70c
bd9
c4c
50d
841
6fe
619
c37
162
b10
c58
954
c5b
6b7
3d0
4c6
240
8e9
379
1f9
a77
656
7de
316
28b
2be
9c8
6fd
51b
468
281
32c
52b
595
3e6
a4f
a9f
34c
6e6
0f3
8e1
c76
05b
5e9
a86
6bf
34a
6b2
0af
abe
122
877
17a
1ff
ae9
3c5
104
2f9
08b
56c
a6e
c18
747
9fd
36b
8d9
401
742
483
829
2a1
abd
51f
a25
7fc
820
03c
b3c
0fd
40c
a79
7bc
111
339
598
98b
5db
c4b
6ea
772
2a1
c2d
8d8
1a7
68b
0ee
3a3
230
cfe
3e4
26b
04d
02f
a83
b87
663
1f7
1db
c14
ca8
7fb
79b
269
78a
230
614
01c
8f6
74c
633
35f
09d
cc8
53c
814
5d9
428
884
6c7
56c
33e
635
9cb
cd5
c67
581
a5f
a75
824
537
597
bd7
53a
696
470
8c4
947
789
8d3
6e9
9e8
376
a01
002
5c7
ad3
28a
753
0dd
35e
7e1
710
9f7
75c
2f0
9da
60e
b88
7ca
29d
893
cf5
2d2
2a0
46f

View File

@@ -0,0 +1,256 @@
bc4
4be
5fb
7f4
166
3c8
4d3
36b
0ab
0a9
3b0
b7a
1eb
c5c
973
192
b66
531
bc0
7b1
82a
2bf
b9a
22a
0cc
3fa
861
501
ae2
70f
234
7b6
7c1
3cb
93d
3e2
479
be8
0a1
b2d
69a
a37
23c
285
7af
1d0
9a8
ca9
47b
13e
6a1
90c
9e0
0b7
9a9
a02
6fc
29c
cf0
4cb
5a6
3c4
20a
888
498
428
9ca
b61
c5a
292
3cc
909
a8e
ab9
4e3
8bb
8a9
57a
a35
939
c08
00a
bc5
2d7
7fa
58a
b00
a04
131
946
37b
22a
af7
270
462
39f
81b
06e
9b9
663
4ba
aa3
016
be2
3bd
05c
8c6
128
c61
762
a3c
4f5
3bf
03e
b8b
a45
b8d
9cb
658
79b
00f
be8
bd9
903
5b5
42c
759
6e3
33a
b83
a21
034
1fb
33b
0ca
424
06b
837
5aa
36a
100
13f
36f
bbb
116
2b5
131
237
31e
a53
06d
0de
78d
031
7fe
29a
634
6fa
b8f
70e
66d
6e6
c86
347
4e6
a94
719
2a9
3b2
7e1
4cf
3df
a09
b6a
4cc
74c
7c4
3e8
5f5
85e
769
a30
383
95d
70d
103
c8e
3d7
73c
217
698
3dd
186
6e4
992
2f4
ae2
55b
67d
710
ba2
59a
0a7
183
798
2f7
660
355
a70
24e
0f4
182
1a0
205
adc
251
855
b8a
264
378
5b0
237
b3e
99f
70d
648
a00
abe
b40
72b
221
87c
109
49e
137
215
8d5
7df
945
69c
b96
cec
677
b0e
5a4
ae8
316
877
556
929
bfa
cbd
b3f
175
68f
a00

View File

@@ -0,0 +1,256 @@
a1c
b95
b57
0b9
53b
72d
155
942
ce7
9d8
6d2
a60
c7f
5db
2f5
1f5
2ae
294
2ae
410
87f
7c2
51b
bc6
9b0
c44
bd6
431
6b5
697
1ad
0b0
4e0
baf
3f0
2f5
56f
c78
8c0
ac2
b9f
173
844
249
c9c
521
2b4
367
b37
723
90b
52e
c6f
1a3
44e
7b2
858
27a
cf7
0da
11e
514
225
518
9e5
23f
7cc
294
bb9
96f
75a
159
bc2
bfd
0d3
a29
c4e
a81
4a6
2b8
618
3c9
49c
c82
392
5a3
4e0
9aa
92e
2c5
c34
c0a
9e8
90b
c31
cda
c7f
5b4
acf
aef
462
85b
c9f
302
959
656
a2f
4ca
8d3
64c
27d
462
b8b
1a0
0b9
cea
b64
0d7
586
26d
91e
3b2
0ca
5d7
354
7d6
c1d
c1d
a19
496
075
92e
673
0dd
788
817
46f
80d
414
173
1bd
a63
7e0
189
911
2f9
882
4f7
02e
56c
2b8
357
a43
3f6
c27
499
260
29e
c7f
7c9
b23
4a3
0ca
19d
925
215
a2f
26d
1b0
44e
bcf
b03
8b6
b6e
407
b92
a74
3dc
417
548
cc6
a7d
576
4c3
938
548
7b2
67d
448
49c
82a
478
2a4
6b5
75e
5b7
0bd
323
3ac
50b
c3e
882
5ee
59a
49f
938
6c5
be9
694
a91
ab5
2b1
40a
904
c68
c62
7e3
1e4
128
2e5
7fa
54f
5db
52e
277
041
cfa
259
403
058
1e8
37b
7f3
c2e
803
650
a6d
031
6cb
5f8
30c
03e
b0c
803
602
76b
bc2
1db
878
7fd
417
340
45e
b81
be9
04b

View File

@@ -0,0 +1,256 @@
710
a36
a46
2fc
8dd
824
cb0
94f
33a
179
673
344
3a2
747
208
7af
21c
aa8
9ba
9b7
4f7
6f6
a36
280
c31
1eb
bf0
2d8
b54
05e
a1c
521
3f6
7dc
c99
6a1
8c0
68a
b8e
ae9
566
800
b10
2fc
716
57c
316
06b
14f
b88
590
c85
2e2
71d
0da
7a5
26a
b33
499
111
044
56f
858
169
125
3d3
986
7f6
0ea
c24
1fe
414
569
92b
c10
8bd
a7d
719
8dd
7f0
c2a
76e
8a9
a29
be3
421
250
23c
ab8
ba2
55c
183
3c9
162
45e
a70
757
c62
208
cc3
7a8
15c
04b
367
4fa
69b
56c
7cc
a29
465
c85
b10
2a4
7a8
656
ae9
ccd
878
294
5c4
521
aab
2e2
6cf
9a7
b6b
555
1d7
86b
885
921
c92
2fc
98d
06f
71d
9b4
2e8
62f
586
1c1
4ea
980
18d
adc
05b
3ed
4b3
1d7
0f4
472
586
14f
417
0e7
ae9
26a
4c0
21f
807
330
092
ba5
16f
747
a05
785
0da
6ec
367
b44
acf
246
8b6
52e
7a8
16c
43b
357
548
79f
a97
942
c3b
22c
ac2
c1d
26a
a81
649
51e
a77
4b6
73d
7c2
5a7
a49
6e5
9ba
0d0
64c
212
5ee
1a3
0ca
09c
504
4a3
79f
4fa
b30
cd3
9d1
7d6
417
68e
928
5ca
37b
2df
128
532
824
065
cac
218
8bd
b7e
38e
7f0
037
914
044
88c
bcf
0c0
45e
74a
b7b
74d
0c6
ca6
918
c68
a2c
61c
8d7
b23
93b
989
8f1
1ee
398
27a
94f
121

View File

@@ -0,0 +1,256 @@
a91
a91
4e0
b61
a91
b61
270
681
340
410
a91
8f1
340
5b0
1a0
270
4e0
8f1
a91
4e0
000
0d0
9c1
8f1
9c1
821
8f1
9c1
751
4e0
681
9c1
340
751
5b0
340
681
5b0
000
751
c31
1a0
270
9c1
a91
4e0
5b0
9c1
c31
000
b61
340
270
4e0
410
681
751
8f1
410
a91
821
751
9c1
b61
4e0
9c1
340
340
9c1
410
340
b61
a91
821
410
4e0
9c1
8f1
751
9c1
681
410
681
b61
4e0
681
751
821
821
1a0
a91
0d0
a91
340
5b0
0d0
9c1
410
270
c31
340
410
340
8f1
b61
c31
681
b61
751
681
b61
000
340
821
b61
9c1
0d0
1a0
410
c31
681
b61
0d0
270
4e0
c31
000
751
821
410
410
b61
681
1a0
8f1
a91
751
270
0d0
751
270
681
821
340
340
1a0
1a0
410
410
c31
0d0
751
270
9c1
821
b61
681
681
5b0
a91
0d0
4e0
821
1a0
751
410
821
751
000
270
340
0d0
9c1
c31
b61
681
000
0d0
270
8f1
a91
000
681
340
751
270
8f1
681
681
8f1
751
751
9c1
0d0
c31
000
0d0
c31
821
1a0
270
5b0
4e0
410
340
4e0
000
410
1a0
270
270
410
a91
000
0d0
681
a91
681
821
681
1a0
821
000
410
8f1
000
410
1a0
0d0
1a0
5b0
821
b61
270
681
0d0
751
410
b61
0d0
4e0
9c1
c31
b61
1a0
340
a91
1a0
b61
821
a91
b61
4e0
4e0
1a0
a91

View File

@@ -0,0 +1,256 @@
64f
cdf
cba
c92
012
08b
cb5
ca8
6b2
029
013
ce1
018
664
cd9
004
688
692
00c
6ee
04e
ccf
698
6e6
03d
632
019
022
6ae
62b
053
c69
02c
ce4
6c6
67f
00d
669
00f
62b
630
cf9
09a
003
692
014
5f5
692
636
66d
676
c84
cfc
ccf
039
5f7
679
017
007
cfb
698
020
cb1
021
67a
ccc
618
cbd
6c0
66b
043
032
684
63f
cd9
655
001
cf6
687
5f5
023
cfa
663
054
6a2
674
cdc
007
041
6a4
c92
03c
07f
6f5
680
617
cc6
c85
64d
624
696
07e
c90
692
cab
704
000
6fb
6b0
cdb
006
d00
04b
645
6a9
5ff
cd6
034
025
cdd
cf2
68c
64d
054
01d
671
053
ca5
cb4
06c
643
6a0
cc9
047
6cd
6f6
cd1
cef
c8d
c9c
02c
cbc
721
631
643
03e
014
08a
c77
cf6
c6a
004
6c9
ca8
070
6aa
6fd
6b6
ca8
68e
6b4
044
cfe
62a
6d7
62d
072
026
c8a
651
cde
6bb
06a
6a4
61e
67a
c8b
617
cf0
65f
64d
688
64b
6e4
cf8
ca4
6de
635
ccf
63f
caf
6da
cfc
665
041
046
01b
ccd
654
645
6a1
67b
610
63f
c65
00a
ca5
667
66a
6c6
ccb
d00
660
058
07e
ce7
6b3
047
cba
0d0
6a3
6a1
61a
705
641
613
03f
00a
707
011
cf6
5b2
65c
0b6
6da
685
02d
00c
010
689
661
63b
697
6ba
6c7
6d4
004
667
61e
019
027
004
64b
058
035
6c5

View File

@@ -0,0 +1,768 @@
55
33
60
42
56
12
0d
54
80
65
76
94
13
b8
2f
b5
ab
d0
01
4e
7e
9f
10
49
2f
f1
5f
d4
5d
c7
82
b2
dc
4c
55
32
5f
cc
57
68
5f
13
4f
f7
e1
23
cf
02
8f
a7
b4
5d
cc
71
7c
f2
d7
b2
74
d8
f2
a8
b7
d1
ac
d6
63
53
a5
63
35
f4
82
ec
3d
04
50
4d
2e
05
2d
ed
28
11
2a
c7
41
0f
a8
e4
7f
0d
7c
5e
b1
d6
a2
9e
94
87
81
db
38
63
76
7b
7e
a8
7a
59
1e
0d
7e
a4
13
0c
1c
9f
a5
e8
14
2d
ab
f7
ee
8c
02
19
1c
df
1b
8c
80
4d
38
e2
b6
e4
44
5c
d8
fd
34
1a
63
ec
00
01
b9
d8
82
9d
4c
8f
5e
53
dc
6e
87
86
df
67
f4
ac
0b
b9
d1
88
f0
64
da
50
c1
fa
b3
96
55
10
a0
48
eb
6b
4a
a7
8a
85
1c
47
b1
06
42
9b
30
f8
a9
a3
b5
46
48
c8
b4
3d
cf
76
19
0b
bc
8c
66
a6
a3
6d
f7
b9
5a
e3
d9
78
4a
dd
87
58
23
5b
29
1c
0a
1d
b1
ba
80
54
12
e8
b9
2c
14
16
fb
e6
4c
42
db
12
38
30
ed
1b
d9
7e
69
e5
22
e4
82
e8
33
25
e9
e8
8a
d9
40
3f
7e
86
d8
8d
53
5e
39
1a
e4
cd
33
0e
e0
58
92
a1
14
e4
43
9b
59
b3
06
02
d9
d9
87
04
aa
55
30
5f
a1
f8
5b
23
d7
c3
b0
f3
06
54
c8
b7
cb
4c
e0
29
85
e6
cb
e9
a8
7c
f0
e9
99
a5
65
41
30
99
fd
fa
f5
77
84
5a
40
7c
d6
c2
ea
5e
de
db
04
ba
43
4d
80
e1
13
24
67
08
88
61
d6
51
99
81
8e
d4
ba
3a
09
5e
06
63
39
f3
53
39
48
77
e3
bf
79
26
28
8c
dd
37
ac
31
cd
b4
99
b5
eb
8c
a0
68
59
be
b5
c6
60
73
0f
a7
93
cf
11
34
7f
bf
ed
73
a8
2e
1d
2b
22
9a
09
59
32
79
ad
04
45
bc
11
b4
f1
64
d0
15
ec
51
41
da
dc
10
d3
22
c9
28
3e
5a
64
11
57
df
e5
3b
da
4c
3c
a7
36
46
99
df
0b
f7
94
d4
68
3f
b1
fd
ec
e8
e3
18
da
3f
f0
28
b6
3a
a7
d9
f5
0b
58
78
53
78
be
79
fc
7e
8a
2b
12
73
a8
d7
87
74
85
33
57
ae
c5
23
ef
7d
92
76
44
b0
7d
3d
0f
28
76
bf
0b
55
d4
59
2e
33
a6
58
c4
61
c9
6c
8b
81
cc
c2
b1
d4
8c
39
29
ad
99
4d
01
5a
e6
dc
4c
98
a7
54
16
76
7c
7b
a1
60
bf
74
91
b4
a0
aa
db
5e
43
a3
97
f6
3c
e1
cf
7f
91
64
79
f7
63
35
0c
54
dc
29
6a
22
31
4b
4f
48
4c
8c
22
e3
64
fc
e5
a6
ca
6e
15
0b
81
02
1b
44
b5
f4
9f
91
49
27
89
64
37
21
3d
0a
bc
ae
a2
80
62
db
28
54
13
8d
0e
0b
ec
84
1e
6b
e8
e0
39
b8
a0
d7
62
e6
0e
c8
b6
41
6d
fe
7c
7c
8e
d9
b7
41
59
08
b8
dd
9a
69
89
50
69
7f
a5
fa
a5
b1
92
6a
54
de
98
6a
00
93
da
97
6c
89
ed
bf
83
71
1a
4b
aa
bc
2c
21
c7
4f
2b
7f
e9
6a
aa
9e
b0
82
dd
66
e3
40
8c
d3
00
02
cd
bd
57
3d
27
f6
6a
80
6e
b0
b3
14
4c
42
7e
07
ef
7a
39
67
f0
4f
0a
43
36
f5
5e
8e
12
c6
3a
67
80
25
18
44
80
22
73
ac
90
1d
4f
6a
55
65
02
db
49
6d
4b
b4
61
09
be
1f
90
b7
ef
a7
6d
34
03
a3
bb
ec
6a
32
e8
e5
cf
4e
db
a3

View File

@@ -0,0 +1,32 @@
d1
79
b1
cc
1a
8f
4a
19
f4
08
5b
74
33
68
62
07
3b
c7
ca
5e
de
23
5b
40
6a
99
41
6a
2f
58
26
2b

View File

@@ -0,0 +1,32 @@
13
5b
97
48
c6
aa
6d
1a
e9
b5
42
0c
72
67
9f
f6
5c
ae
62
2b
8a
7d
f5
4c
d7
65
01
31
b5
fd
77
f8

View File

@@ -0,0 +1,32 @@
34
b9
61
af
5d
62
54
af
72
c0
d5
0e
70
dd
9b
49
91
15
0c
cc
09
19
2a
a4
6f
19
53
d5
c2
9a
33
ec

View File

@@ -0,0 +1,32 @@
bd
b9
ea
a5
62
80
be
33
30
be
de
f9
32
ca
62
b8
3f
d7
33
88
b5
21
66
75
37
f9
6b
4f
53
3a
ad
2e

View File

@@ -0,0 +1,256 @@
992
664
638
614
c57
023
714
879
cd7
178
c60
399
959
c6f
6b2
ab4
030
4ed
ca7
955
a06
834
869
c5e
a84
c35
38d
861
55b
b0f
8db
022
5f9
21b
359
8c9
cbe
66a
359
605
566
16d
457
4c3
1cd
16a
93a
c2d
b21
a4c
444
cad
b5f
2c4
95f
cc1
12e
335
993
594
abd
aec
210
447
185
c17
4fc
ca6
a27
c28
31f
ccb
882
c85
aee
728
128
394
47f
cb3
8c9
b46
65b
7bc
cbc
376
379
bb9
9be
b6c
03a
2cd
60e
c63
c34
6f3
516
745
305
1c6
9eb
9b0
4cc
77f
360
165
b71
1ac
1d5
609
9c1
9c1
77b
88e
986
b33
7d6
2b1
60f
8d9
8c7
c1c
64d
42e
a5c
6f7
5e0
ca7
91f
7a8
99f
0f1
662
461
81d
a75
b53
385
229
72e
118
7ff
33a
7e4
a28
922
316
3ac
08c
3ac
8ff
46d
3cf
3a4
64f
342
495
1b7
5d5
17d
3d0
7c2
ab5
6f2
319
52b
b74
9f3
8f2
cf4
106
28e
c2c
1d0
0c9
5f1
72f
535
72e
978
315
a80
7a6
1b0
051
2e0
99e
ca3
127
46e
436
5e7
3ea
61c
81e
9b5
57d
926
7ba
8b8
c3e
228
79c
1ec
830
58b
331
bc4
12c
6d5
b61
b44
4b5
1ae
bbb
52f
41e
bb2
92d
c07
6f0
843
bd6
1cb
733
b7c
4c3
c03
cff
a3c
7a6
ce8
a99
57f
1be
136
9fb
a00
bb8
8df
858
78d
b86
bca
c5b
046
582
2d8
1b9
5a9
c74
3db
9cd
4f3
5e2
ce1

View File

@@ -0,0 +1,256 @@
65e
517
bcd
424
759
b64
81d
873
4d4
21e
555
0af
4fb
8aa
051
33c
a3a
244
647
0c2
35d
47d
be1
896
99f
712
966
26c
a2c
c06
a3c
47d
b48
cc9
34d
c8a
b93
694
caa
28d
9d0
3bf
737
bd6
b02
03f
5cc
34e
bf2
022
74e
700
693
cc1
07b
a1d
318
14b
a42
173
abe
306
42c
3a5
cff
8ab
46f
afb
25c
a72
51a
167
3b4
271
384
63c
12f
1f8
0b5
5d0
3ae
045
01f
adf
498
80d
520
1b3
708
690
62d
3e5
0fe
8ef
152
07d
ce4
0d9
435
cd7
520
418
7fe
451
36d
3ca
8fd
c00
abb
716
382
9ab
af7
02f
ab2
02b
af7
c8c
a33
b08
653
b96
5f8
445
bfd
2ab
7a4
90f
a74
6d2
8ab
3cd
b6b
b4f
324
177
6fc
357
7cf
ac2
60e
af8
bae
76b
0c8
39d
44c
5ad
264
a7f
5ce
3f3
275
1f8
2a4
c31
c1d
802
b24
18f
ce1
734
188
ba8
530
21c
0fc
bae
b88
037
9b0
3d9
664
4b2
88b
01d
9d5
a06
396
a7a
794
895
901
528
927
154
1fc
7ac
4cb
5da
060
ba5
80b
adc
30b
1f2
66c
77e
4a9
ce3
627
727
022
4ef
3a7
404
734
672
945
a03
806
14c
303
60a
3fe
3b6
06b
854
d00
8a4
16c
cf9
ae1
8fc
370
112
55d
ad9
1f0
0bd
7d2
a98
c00
4ef
ae1
84d
5ec
800
69b
73f
bd1
7f6
a8a
026
94e
674
c8b
620
b2c
6a8
58c
537
ab3
440
359
926

View File

@@ -0,0 +1,256 @@
bf4
82f
311
055
502
9d7
7df
c61
6c5
5a3
8a9
3de
383
72b
64a
af7
6ac
883
36c
6fd
27c
b91
cd1
81f
50d
60c
9cb
a34
204
892
939
810
5aa
021
6e3
a7d
c7f
78d
53f
ce5
a32
c85
c74
3dd
999
b56
000
2a0
726
cbb
cd2
c97
9fc
5c1
037
690
250
145
2de
353
7ca
64e
568
030
00b
6b6
8b4
96c
407
5ae
86d
06a
550
b6f
92c
66a
aaf
b34
048
605
a95
09e
12b
66e
c4d
093
9b6
341
2e5
20a
b71
97a
94c
7d2
c06
b7a
53f
5cb
714
638
ca3
4c7
72a
47e
941
046
2b0
07f
b08
7aa
853
5e5
a3c
4ef
b84
9a0
a0f
b00
274
c61
782
abf
9ce
cc5
416
29e
c7d
878
243
9aa
9ce
97d
cbf
1f3
643
783
b14
515
b4e
b22
564
8fb
69e
724
87f
550
4d4
70b
392
9e7
409
adf
657
63e
86d
208
4b6
7df
13b
75a
8d3
67d
554
b4e
4fb
c22
2e3
b30
aa7
cac
175
76e
921
18c
9d3
74e
8a9
8f3
210
a65
b3c
8bd
378
5e2
636
08b
53c
0ba
847
2c0
aed
0e8
992
8e4
b8e
038
7ed
10c
546
8cf
225
8e0
526
9e2
383
700
9f6
72b
bd9
439
5d4
2d8
78d
280
170
abf
1f0
cf8
37a
274
41f
a18
c2f
962
6cd
1a3
707
6f7
2ca
b95
cf4
618
abd
596
1aa
012
a2e
9c3
ca1
4a3
847
a18
854
566
bf4
c97
751
953
a1e
4c5
115
b5f
219
4b0
859
8dc

View File

@@ -0,0 +1,256 @@
987
039
6f1
611
98f
5c8
be0
18f
c8c
529
bfe
535
30f
30a
239
300
50e
4f2
6f5
7a5
8c1
43f
9d2
6bd
55e
818
cba
781
bff
caf
155
822
103
338
27a
564
374
311
463
b3e
247
4f8
a7c
a08
342
222
4de
287
686
34a
013
909
843
bf5
cb8
1af
81b
218
4d0
4bc
259
093
734
8d4
69a
710
5b6
c56
88d
1f7
597
19a
cdc
7a2
bb9
790
56b
629
773
8e2
00e
0de
191
592
181
72c
265
36a
7bb
27e
cc3
c4f
72f
02c
811
0f0
07e
afa
43a
82b
877
1d2
348
2b3
090
085
bf5
6da
9bc
504
c44
037
2bd
656
52b
b19
784
be2
524
0b4
acd
64d
044
0aa
735
ce9
168
860
681
0cf
00e
96f
6b4
23a
4e0
afa
3f7
903
1ab
0c3
91b
808
3c0
a89
548
281
9e0
54f
36b
0b7
3f5
b26
cd8
882
224
184
969
54d
5a4
17f
355
771
baa
a16
87c
7f7
51c
686
561
5a0
1f2
539
22b
9d9
b14
54e
3a3
695
72c
219
891
a13
009
570
08c
4f3
345
5d3
a6c
7f8
891
18e
7f6
b91
70f
c65
14e
9dc
be6
a70
02f
2cd
ab0
6b5
139
cca
8ef
7dc
170
728
995
168
568
774
6d5
90b
758
237
621
5ad
4f0
164
583
6e3
70b
c8f
ab8
749
644
937
969
a5b
691
c8d
87d
4ef
51e
b39
9e0
4ed
288
816
bf6
b42
0cf
bfe
69f
0b7
99e
2bc
c47
51d
3a1
936
bbc
b03

View File

@@ -0,0 +1,256 @@
ad5
027
07c
462
37b
34a
010
528
180
2e8
b64
26a
c0d
089
05e
3f6
b5a
07f
1d7
266
cd0
38b
60f
a1f
827
a50
29a
455
a63
a0c
4d3
54c
af6
c3e
b3a
b78
a33
246
30c
882
589
a0c
a1c
650
cd3
24c
ab5
afc
313
639
398
8c6
c78
2be
795
50e
0ac
266
90b
323
00d
ad2
966
041
3d3
740
37b
222
5c7
c65
821
b9b
4dd
9cb
62f
901
938
be3
42e
6e2
b64
730
726
602
810
6e5
be9
489
3a2
b6b
767
0fe
027
c48
7a2
bcf
381
914
b4d
c21
848
751
5b4
b54
058
072
2be
2db
95f
3d3
0fe
4b0
5fe
40d
552
507
2ff
0d0
b95
aff
4e7
a40
319
4cd
10e
c14
180
6d5
c96
392
921
096
59a
72a
9db
51e
2c5
111
bf0
921
528
044
684
3af
cbd
875
7fa
709
1b0
5c7
a02
055
a97
07c
b6b
89f
552
573
1ad
a2c
589
c62
b20
148
024
a5a
7d3
872
552
608
bc6
499
622
730
21f
b3d
1b7
2b8
583
218
6dc
a97
9f8
979
1a0
1e4
824
96f
08f
4f1
c00
bb9
778
925
3d3
2d8
3dc
9b0
518
670
496
259
757
6a4
cb3
437
85b
bd3
501
0b0
cda
666
1b4
b40
3f6
4ca
73a
354
2d2
2a1
02e
737
3b9
834
041
329
589
48c
8c6
1a3
514
b10
1b7
824
465
273
475
703
5ad
1ca
c7c
09c
a81
058
111
653
260
3e6
618
431
7d3
a5a
2f5
a49
9d8
be0

View File

@@ -0,0 +1,256 @@
532
496
048
273
532
8ed
af6
615
82e
048
c3e
ae2
8f7
c1d
629
b2a
68e
306
2b1
684
c9c
34d
7f3
06b
4fa
52e
39f
7c9
824
3b2
bf3
2f9
69e
52b
71d
2e8
cd7
792
1aa
60f
ca3
7e9
7cf
208
507
663
8fa
284
29a
7e3
ae2
bf6
1c7
703
528
9aa
8cd
09f
a70
0c6
be0
ca6
39b
2a4
b5e
b2a
a8a
88c
3d6
907
6ef
7d3
35e
1e8
b9f
8cd
34d
9f8
398
925
30f
051
46f
bfd
448
855
5db
0da
92e
76b
848
326
125
121
4b0
b57
ca9
84e
29a
30f
89f
50b
521
b5a
9e5
407
42e
552
40d
b20
921
bd3
2e2
834
cf7
c31
703
8b3
7f6
b0c
cdd
687
b71
43b
807
7e9
c48
670
b81
1c1
a60
88c
c7c
3ac
11b
29e
79b
49c
744
c24
817
555
0e7
8f4
4d7
c62
821
5fe
c2e
417
421
48f
a56
507
501
9f8
47c
a63
250
694
918
16c
434
726
3fa
ab1
535
3f0
684
528
5de
3e6
baf
3c6
489
5fe
b54
132
6a1
9b7
4b9
3b5
6a4
8a9
948
2bb
72a
7b2
320
101
33a
67d
1d7
7a2
b44
511
0ac
34a
5c1
21f
7d9
0ea
246
407
0ea
9ff
703
b88
145
4dd
7e6
a49
4a6
901
034
021
058
448
ab5
81d
518
5eb
1db
51b
3f3
aab
212
98d
8b6
082
703
b23
082
2b4
2a7
0bd
024
400
632
56f
2f2
807
b6b
827
93b
52e
306
a29
590
ac5
cac
656
814
7c2
b57
354

View File

@@ -0,0 +1,256 @@
751
410
681
000
681
8f1
a91
a91
821
751
751
4e0
751
681
000
410
751
4e0
c31
5b0
410
821
821
c31
410
821
0d0
8f1
1a0
751
821
4e0
340
410
b61
a91
681
751
821
4e0
000
000
270
751
821
a91
5b0
751
9c1
4e0
751
681
a91
b61
c31
8f1
270
681
0d0
5b0
821
0d0
8f1
340
821
821
9c1
8f1
9c1
1a0
0d0
1a0
5b0
9c1
c31
340
8f1
1a0
c31
5b0
751
b61
821
4e0
821
821
b61
751
000
8f1
1a0
681
a91
a91
4e0
4e0
270
b61
000
340
9c1
681
270
a91
000
000
1a0
000
a91
9c1
a91
8f1
5b0
410
a91
270
5b0
1a0
4e0
c31
821
4e0
000
681
b61
4e0
000
8f1
270
8f1
340
0d0
9c1
340
1a0
340
b61
5b0
5b0
000
c31
b61
821
5b0
751
270
5b0
4e0
000
c31
c31
340
821
000
270
340
4e0
270
410
c31
b61
410
b61
681
1a0
0d0
4e0
9c1
821
270
5b0
4e0
000
681
410
1a0
681
0d0
340
340
000
681
1a0
1a0
270
5b0
9c1
821
000
751
a91
0d0
c31
340
821
4e0
410
410
410
4e0
1a0
000
8f1
a91
751
340
a91
4e0
8f1
340
340
8f1
0d0
4e0
751
000
b61
8f1
c31
0d0
000
751
5b0
8f1
c31
b61
5b0
821
a91
4e0
340
270
270
000
270
821
8f1
8f1
9c1
b61
821
4e0
1a0
270
681
b61
410
b61
c31
9c1
b61
340
8f1
a91
270
821

View File

@@ -0,0 +1,256 @@
cdf
cbf
6a7
c95
726
617
cad
033
637
c98
ca6
66b
61f
686
ccc
646
6c1
cf5
02c
cb8
017
66c
6be
cac
658
69a
699
654
c72
6c1
cb7
6c1
64d
cfc
673
61b
66d
02d
6eb
018
0b2
6a2
030
011
cb9
6e5
6e2
008
ce9
cda
671
04e
66c
04e
664
cf4
6d1
688
675
733
001
689
044
6c1
cdc
69c
01b
cf3
73f
65d
660
03a
c76
031
082
cc1
059
cf7
6a8
69e
656
caf
6d4
06a
673
cae
670
61b
c60
685
6a9
69f
cd8
cb2
024
cba
063
05b
048
ce9
659
6a7
608
004
68d
cb1
63f
68b
6a0
cbb
690
65b
6a5
6b9
032
5d3
6dd
cdd
02d
5e6
635
057
01e
5bf
03d
016
6a3
01d
5ea
06d
c7b
001
668
047
066
6b5
62e
035
67f
051
5f5
cc7
01c
0c5
c94
015
6a3
64b
00a
cc5
02c
01f
018
022
67c
6dd
cc8
091
658
6c1
642
cb2
cd6
698
007
047
06b
ccd
607
ce0
cd1
670
68e
05a
091
ceb
cf0
70a
074
6b1
cdf
675
c99
017
023
051
6bc
027
06e
6e3
caa
62d
691
6b3
691
6a9
c6d
6d4
6ed
049
6af
003
ce6
6d9
62c
cb6
029
c82
69d
672
cf6
c86
63c
086
68c
cf6
6d5
036
705
ce6
697
ccc
6cd
70c
007
648
c83
087
07b
04c
69b
65b
cf7
680
ce0
6ab
64a
c96
05e
64d
6b6
65b
017
ce7
692
61d
009
041
cff
cdb
6b9
663
c7f
658
6b9
634

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,32 @@
51
95
69
07
f1
73
e1
cc
99
d4
72
ca
06
c6
57
39
62
bf
ef
5d
7e
a6
36
e2
d8
43
d7
20
0b
21
1e
40

View File

@@ -0,0 +1,32 @@
b4
08
d5
d1
15
71
3f
0a
93
04
7d
bb
ea
83
2e
43
40
78
76
86
d5
9a
9a
2d
10
6b
d6
62
ba
0a
a0
35

View File

@@ -0,0 +1,32 @@
20
a7
b7
e1
0f
70
49
6c
c3
82
20
b9
44
de
f6
99
bf
14
d1
4e
55
cf
4c
90
a1
2c
1b
33
fc
80
ff
ff

View File

@@ -0,0 +1,32 @@
95
ad
a5
16
59
59
17
37
1a
53
3e
83
f3
d7
95
10
06
92
67
41
28
1c
42
ea
73
71
13
29
ed
f7
25
5a

View File

@@ -0,0 +1,256 @@
09c
0f7
4e4
904
54d
70b
68e
b11
6ba
507
9fb
4fe
624
aba
6ba
2a2
cd7
bda
31a
871
575
666
ce1
7aa
41e
5b5
c23
546
68e
618
4c5
68f
cc5
3b8
9bc
cc4
bca
7af
366
b6a
816
617
407
a88
88a
728
125
395
9d9
bd7
0b1
644
69b
ac0
9bc
1cc
374
bcd
579
911
3b0
1ff
a2c
b29
24d
993
934
547
705
57b
90a
4e9
20d
8a1
6a0
818
ca3
58c
968
370
a40
561
b3b
4ef
a62
411
193
6c4
ccb
3c1
b9d
239
9df
97c
19f
149
70b
c63
5e7
17a
cae
8f6
b26
338
546
2ae
3d0
11a
af7
ce9
5a0
6ca
9b9
1c2
6a0
1a1
a98
c4a
23e
baf
155
836
112
009
b12
60a
43a
c0c
4be
a46
598
8ee
1cb
7e2
02a
2b1
18a
8b5
9bb
c4f
157
2f4
c03
1a0
c82
7ec
ca6
8f7
5d1
114
4e5
365
7da
38a
23e
c9e
a42
15d
5f6
817
9f0
566
b3e
a38
b75
a12
159
493
b73
c7d
237
444
8ed
6c4
76a
7ad
8bb
9cd
cab
191
534
341
539
8fb
b58
cf6
100
3b8
705
440
bde
78b
49d
b3c
0a1
54d
0e7
901
65f
6b0
bc2
76a
243
88d
93e
6e0
974
889
1a0
266
367
3a6
89b
749
38c
c72
208
98d
891
4ee
cdc
4c8
3bc
994
89e
8cc
58a
4d8
069
2b4
a8e
a4b
cd6
09c
2ab
224
40b
138
4da
b73
acf
b2a
4c6
7fb
016
cb1
8b1
b0d
580
1f0
9a7
74d
3ff
b75
71c
268

View File

@@ -0,0 +1,256 @@
caa
2fa
a3d
9ca
86a
936
12d
720
7f2
4d1
098
909
2b8
ba2
0cf
5b1
77a
0fe
2a5
969
2d6
c7b
961
004
8a9
69f
6db
601
909
bb3
11e
6b1
91c
13e
ace
4ce
ae6
2c0
cd9
ab8
292
88e
000
867
06f
4be
304
c02
cdc
04e
9d3
21f
cfb
0a8
1d5
6ac
a07
3f7
424
218
02d
ab9
b2b
14d
a29
83c
87a
7df
629
34d
438
0a4
c27
3e3
494
a18
b48
541
7e6
128
ce3
c1f
2e5
796
392
ba4
33f
9b3
2f1
5c0
b5c
291
9e1
4a2
a0a
3e7
7fb
5eb
347
1cb
a12
65f
ac9
7a0
cdb
2ac
0ea
27b
68c
519
53b
942
35d
2bc
89f
2d3
127
a25
57c
72a
152
274
769
655
4f9
5cb
988
23f
8c2
698
5bd
c7a
0af
604
904
132
3f4
30d
5c0
3c4
498
425
5dc
8ea
ae2
948
bbf
85e
4f2
9cb
521
56a
0ff
4ef
609
6ad
7ba
5a8
948
391
a0b
75b
786
7bf
0df
b1c
9f6
b53
c86
59f
91a
25b
90c
518
3e1
c24
7f9
90c
a69
c57
c1a
159
93b
334
415
4a6
773
462
b74
08f
53c
2a8
210
b87
101
be8
b1e
8fc
659
9e7
0e0
379
257
663
725
6f3
a9f
33b
580
5ca
2ca
784
16e
a41
c76
7b9
147
c56
bf5
11d
62d
98f
739
9d5
b82
03a
340
4da
cd6
152
b16
cd5
667
6fb
504
546
56a
6bf
36a
746
967
3b3
428
2c2
340
87c
300
490
aa6
730
702
253
907
b20
508
6d9

View File

@@ -0,0 +1,256 @@
d00
71f
35b
9a2
cf9
416
08a
14c
c7d
630
9f8
aff
230
72a
6cb
29d
329
953
1ca
09d
337
2ec
474
815
35f
aa9
c9a
064
b61
a4d
1db
06b
49f
b5a
494
cf7
08f
ad1
645
3c5
998
063
2ed
4b3
75f
6e7
557
be2
693
968
6c0
79f
89e
9d4
08b
658
369
c61
787
4d3
cfe
8aa
1db
533
06c
c69
007
699
4ee
2f1
0d8
b30
b72
0a1
5ea
223
00d
4dd
185
9bb
587
482
0e7
5e0
692
74e
5a2
163
a4d
2e6
653
77b
44a
2df
c21
771
4bd
546
4c2
5f4
068
4fd
135
067
8af
c0c
ca2
8eb
44f
67a
a67
296
057
60b
9f0
92e
33a
926
774
729
416
1b3
a1a
87e
b6a
7d0
0ee
134
2bd
45e
59c
7d9
bcc
522
063
2eb
32a
a6e
c90
b84
456
9bc
6db
995
9c1
976
c95
b13
a05
4c6
6fb
2a3
4d3
6f6
7b5
39d
834
b81
5fe
6f5
91d
24c
4cc
b37
7f9
87d
364
357
75e
512
9f3
8ee
af5
b3e
7bb
4f9
8be
4d8
a0b
85d
cb8
4df
cce
850
328
ad5
27a
526
b8c
bc3
032
2f0
9a4
bb6
989
568
421
4f9
9fa
422
09c
6c1
639
324
90e
bfe
23c
218
515
3ed
a96
768
8c2
1e5
900
06f
ce6
a30
272
26a
786
4cd
b9f
52f
aa2
be4
be5
782
18d
5b0
5f6
c7a
457
935
c52
977
7f9
562
11d
5df
547
58f
6b5
6c4
782
274
37a
5cb
001
c67
ac0
8a5
6f8
7ee
2df
4a5

View File

@@ -0,0 +1,256 @@
cb1
9dd
3bb
716
b4d
c33
bf4
399
bdb
23d
cc8
b49
233
658
afc
0ff
123
506
54b
4b6
a49
5a2
9ef
762
3b7
bca
688
ce6
13c
6bf
ba8
444
158
762
944
af6
713
cde
662
cde
3fc
5e0
2b2
714
7ea
121
29c
2e6
2d0
913
4d7
6ca
29f
8b0
528
959
5f4
829
b40
30c
8cd
916
0c1
b65
9cf
9e9
27b
758
143
b16
109
703
bb9
231
150
107
b2d
21d
726
8d0
08a
c1e
adc
1a2
199
4f4
07b
9b5
29f
459
b9c
ae4
074
b88
c49
72d
2bd
5a2
bae
3e4
56d
922
ca4
3d5
582
6bb
cac
3f9
399
cbc
b9c
005
17a
c8f
82d
20f
bf0
299
af6
265
8e3
81f
bb3
223
3df
b1f
0b0
baa
5c2
53d
692
0c5
2a3
a37
6f2
cd1
3be
980
56d
583
1a4
7dc
836
84b
4df
1bc
2b8
304
463
24a
27a
10e
444
bbd
bda
0e1
737
737
70f
29f
545
031
5cd
5ce
724
39a
b22
12d
cf0
102
b2e
61a
5ab
b78
b74
17a
4c7
bfc
9a4
419
9e3
ad7
0b5
625
c70
b50
487
514
bfa
8fe
3d1
b9b
cd7
c36
329
c8f
7c9
6f7
916
9b0
7f8
5c8
991
268
7c3
ae5
b09
673
be4
431
606
ce0
615
8cd
c9f
595
534
6eb
3d7
519
ba6
c95
474
89f
a46
b07
7ec
821
5d5
bef
484
162
c23
8c3
17b
21b
211
bc5
be5
916
b53
c47
c87
87a
32f
98b
bf5
4c9
801
469
b10
a05
850
702
5bb
5a9

View File

@@ -0,0 +1,256 @@
6c1
171
1aa
a26
69b
ce7
9bf
20f
67b
9b2
6f7
8d3
582
1f1
35a
a6c
4f7
004
738
ca2
2c7
bbf
926
5de
62a
57f
71d
2d9
9e0
a20
8b3
c0c
34a
17a
52b
898
c6e
4fa
c92
770
b71
629
417
981
baa
191
c59
862
ce8
204
a6d
ac4
7ec
19b
100
aad
1bc
79e
4e9
2d9
2a4
c8b
72f
81a
755
c58
2b7
580
5fe
b88
4eb
068
7d9
cef
754
020
40a
b92
67d
35f
677
c4d
047
870
684
21a
c7b
38e
559
c13
9a0
4b4
476
6e1
2e0
5c4
1b2
3d6
0f0
1b0
b89
6f9
7a7
92e
9e4
6d8
148
46f
9e1
64b
858
012
274
00f
8de
0a4
c1d
1d7
1ea
b17
a93
580
480
b4a
02d
856
c23
641
5e7
820
ad0
5ee
ad4
cf5
7a2
10b
9ba
555
971
09f
931
2c0
b76
2fb
bbf
44b
719
34a
489
34a
4cc
2a4
ab7
a0d
4bc
c11
5d5
798
b86
731
4c4
69b
aab
1f6
b14
372
665
a59
a02
8b8
6a6
072
b87
063
134
bd5
6ad
15f
2e5
644
1e6
9c4
13a
347
268
01a
a9f
607
212
4b8
b80
ac6
ba4
7dd
2bd
4ae
b78
8e8
14c
5f9
754
344
382
a2b
a89
7c6
a6c
7aa
a75
298
33e
c6c
0d7
4bf
458
c7b
876
919
ced
0d6
639
118
2f8
753
4fe
af5
69e
abc
78f
ae0
547
475
4d3
223
784
8e7
80e
4e9
3e8
010
9fb
4fa
201
858
219
b3d
473
6c4
b45
4e6
ab0
85b
4ca
26e
957
5ed

View File

@@ -0,0 +1,256 @@
57b
1c3
20d
76c
0a5
1d1
62c
6c0
4c4
338
392
a0b
4ed
85a
aa9
230
a46
0ab
5e8
28c
584
cf4
119
b1d
cf9
c66
9e2
4cc
88d
9f7
c3b
1b6
062
68d
8e9
aac
941
3d8
516
3f1
5e0
400
7d6
bdc
b66
a2b
647
23d
a69
c30
43c
b02
58d
b01
4b9
ae8
3ce
a57
a1c
3ba
4eb
9fc
859
16b
52a
c4f
7e6
26d
c87
7fb
2b7
bbf
1aa
bb1
cc5
5ea
1bd
353
650
42d
b90
cb8
6ee
a04
031
911
b9c
0f6
c53
918
151
b59
355
88f
727
bac
9c5
b0e
1fe
b57
1b5
542
ad6
b4e
c9b
24c
00d
247
cb7
b65
324
154
bed
7d9
0ac
30e
372
c74
09c
6db
04f
473
3e3
42f
377
9ef
b4f
b21
854
85b
7cd
7ff
760
140
8fd
35d
5ba
352
8f3
523
777
6d6
6ae
1df
6ce
c60
277
b90
8c5
bcb
5a0
3da
417
a70
847
208
a33
479
143
2dd
033
49d
cd1
aa1
758
703
91f
6f9
195
84e
57e
a4e
1e5
c9f
602
5dc
4e5
168
bb7
7ef
b2a
1be
53a
769
032
a97
632
c2d
587
446
549
9d5
2bc
a11
2c3
b16
04f
9e7
540
914
193
be1
238
089
051
6e5
0ee
881
26b
a09
435
977
b57
9ba
8d0
c79
713
18f
af1
aa5
1cf
2dd
b5f
a93
7de
091
1a2
5b5
620
aa6
0de
4e2
a44
093
03f
308
655
54f
6a5
589
b3d
1e5
35b
096
1a1
b12
0f0
c31
988
2ea
6f7
6b3
16b
a06
757
4f6

View File

@@ -0,0 +1,256 @@
6c8
cb6
b64
3a5
4f7
8ed
659
148
5d1
2b8
7a8
65d
586
562
7ed
291
542
1c4
aa4
636
096
19a
1e4
121
3e0
b67
cf1
c89
c24
b20
b03
504
09c
576
a5a
4b0
62f
424
33d
5c4
6d2
7a8
596
c27
5ce
aef
659
03b
075
3b9
284
6ef
55c
a81
27d
c41
a8e
c55
66d
528
a1f
b4a
976
062
b44
918
744
4d3
87f
3e6
1e1
612
9b7
444
1ca
573
4d7
5ad
4dd
9a3
858
12b
08c
39f
489
38b
9ff
04b
075
7fd
180
72d
875
7c9
a67
3f3
3c9
586
74a
9cb
42a
99d
9c7
710
14c
c4e
865
844
848
803
0b3
96c
2a7
2ae
a5d
612
6c5
81d
9cb
a6d
a6d
60b
a02
8cd
93b
979
4fe
a87
57c
70c
169
101
c92
22c
a81
19a
166
2bb
76b
ac8
726
2ae
9aa
73d
aae
855
441
653
904
60f
0e4
650
33d
589
726
492
9ad
ced
697
30f
8c3
66d
c03
7af
c85
253
8a3
5ee
b2a
605
b9b
589
2a4
482
326
cb0
71d
b9b
5b7
b64
adc
b78
983
76b
7cf
9d1
670
73d
abb
928
2e5
747
c6f
acb
068
6b1
180
b7b
72a
055
92e
82a
942
afc
1a7
5f1
504
1ce
cb0
7ac
a2c
c2e
a7d
05e
323
344
87f
9a3
8d7
593
8c0
8b9
659
1e8
8b6
434
3e0
800
643
193
56c
492
bd9
c48
9e8
34a
152
b23
07c
cc3
59d
40d
4e7
1f5
778
cd3
b3a
716
6b1
0f1
70c
a1f
989
6c5
ae2
831

View File

@@ -0,0 +1,256 @@
09f
78b
774
8f7
8da
660
16f
a49
021
2cb
726
c07
20b
0fa
593
a5a
5aa
280
33a
232
444
7a2
468
ced
06f
907
bcf
9d1
ac5
ab8
41d
baf
1ce
c14
0e0
79f
7c2
593
996
8d7
50b
1ca
29e
1a3
a50
adc
6d5
437
29a
b64
862
501
212
06f
9f2
a6a
901
183
0c3
364
a60
138
a81
9eb
70c
42a
031
089
966
bac
1ee
a2f
986
5e8
2db
1de
cac
5ba
243
ce0
062
703
bfa
774
aab
c85
0e4
764
6ff
800
cb6
646
966
16f
6fc
97c
6fc
ae2
8a6
a87
7bc
2ec
10e
548
01d
bb5
75a
83b
993
2ef
ca3
67a
7b5
55c
848
559
4da
6c8
2e5
7e6
4f4
47c
90e
afc
190
615
34d
7fa
7b9
1c7
068
017
767
6a4
87c
be3
7c6
bd6
2ab
0b9
232
3ed
ae5
88f
9b0
003
abe
9bd
3b9
a46
942
44e
ad5
6dc
5ca
b10
058
9ee
b10
10b
b71
b09
b8e
3cc
3af
6c8
044
6c2
05b
7d6
878
b6b
528
a8e
4a9
c51
75e
78b
a1c
1de
80d
38b
180
6dc
9b4
be3
ca3
90b
3a2
4ac
5b0
361
21c
2b8
0d0
17c
98d
75e
04b
30c
41d
a33
cca
c0a
cf4
437
969
b78
31c
68e
889
0e0
475
a2c
b06
b20
80a
472
93f
b78
bb5
858
a67
bbc
1f5
548
b5e
c89
764
955
2a7
6cf
169
4c6
bf6
706
c27
77b
aae
86f
21c
225
ae2
c62
078
3b9
c8f
b7b
980
844
062
3af
4ca
959
740
788

View File

@@ -0,0 +1,256 @@
8ed
cb6
43b
7bc
2bb
acf
a3c
1a7
a49
6cf
72a
1e8
670
583
b61
bcf
a29
096
785
7d6
3d6
666
007
901
774
504
a9b
a0c
2c5
162
003
a74
01d
bb9
72d
976
0fa
85b
639
771
c07
357
5bd
7b5
8f1
5ad
6e5
990
cda
800
666
12e
aa4
75e
46f
c14
bc2
548
4c0
5e8
472
c03
91b
63c
cd3
bbc
1c7
670
98d
73d
135
b13
058
0a3
485
068
b64
827
152
cac
78b
23f
92e
078
673
b03
cd0
afc
740
51e
973
041
691
622
c4b
044
49f
580
625
9eb
a12
291
751
9ee
744
16f
7a8
47c
2ab
acb
653
6b8
107
962
128
1f8
8a9
73a
0fe
02e
a0c
330
6d8
7bf
3cf
5e1
518
c24
385
cda
23c
062
193
6cb
834
092
cac
7fa
983
6cf
8a9
976
b5a
71d
64c
ad5
1f1
28d
11b
901
45b
5db
371
03b
089
28d
125
5a3
aa4
cac
b3a
c44
cea
4c3
aa8
b09
54f
a46
cdd
911
89c
400
542
b8b
ba2
37e
844
52e
3d9
837
720
46f
86b
1c1
95c
10e
4b6
72d
b20
8a9
1e4
87c
6d5
08f
4f7
52b
a05
834
aab
a15
37b
b23
615
a60
1eb
3fa
525
82e
921
713
bb9
8dd
c44
1aa
694
1a3
52e
cfa
16f
9db
0b6
4f4
4c0
788
6dc
6e2
754
af6
986
c4b
068
249
af6
26d
39f
6c8
0c0
55f
c99
45e
398
53b
b44
844
72d
4b6
c3e
6d5
c5e
6b8
1a3
589
cea
a02
55c
4d7

View File

@@ -0,0 +1,256 @@
821
000
c31
8f1
340
000
000
9c1
681
821
a91
340
1a0
681
a91
8f1
4e0
c31
410
751
1a0
410
a91
821
270
b61
270
0d0
340
410
270
270
0d0
9c1
821
000
8f1
0d0
4e0
821
a91
751
681
4e0
751
681
751
4e0
4e0
b61
751
a91
9c1
a91
410
b61
a91
340
8f1
270
821
270
b61
821
821
270
c31
5b0
821
1a0
751
8f1
340
000
4e0
b61
5b0
410
270
b61
8f1
c31
410
000
340
1a0
c31
0d0
9c1
821
0d0
0d0
821
000
000
821
b61
5b0
1a0
4e0
9c1
9c1
751
270
0d0
751
5b0
a91
000
a91
4e0
a91
1a0
270
8f1
751
821
410
751
8f1
4e0
a91
a91
751
270
5b0
4e0
270
000
9c1
0d0
a91
681
340
681
410
9c1
681
c31
751
751
000
0d0
1a0
1a0
270
8f1
410
410
681
c31
a91
c31
410
270
a91
a91
000
681
8f1
821
000
4e0
410
270
821
1a0
5b0
270
340
1a0
5b0
410
0d0
4e0
270
0d0
340
4e0
751
821
0d0
5b0
821
000
b61
1a0
340
c31
8f1
4e0
1a0
4e0
340
c31
c31
4e0
340
1a0
000
9c1
1a0
410
000
a91
751
5b0
410
340
751
270
9c1
340
821
5b0
8f1
751
c31
9c1
000
0d0
340
a91
000
5b0
b61
821
0d0
1a0
410
0d0
270
a91
a91
8f1
751
270
681
8f1
8f1
000
a91
4e0
b61
a91
8f1
8f1
821
8f1
0d0
751
c31
4e0
b61
c31
1a0

View File

@@ -0,0 +1,256 @@
050
052
c74
01d
cfa
688
067
005
61b
62d
61f
cea
054
6f2
cfc
670
655
615
64d
cce
69a
63a
cd6
6d9
699
cfa
0a2
041
cce
6a1
650
655
6e7
6a9
651
5fd
07c
00a
039
cfe
04f
01a
cbb
cdc
5f7
6d2
69f
006
66c
ce2
035
5dc
ccf
05b
6d5
ca5
cd7
041
6c3
6fa
04b
68d
695
074
6e2
62c
006
c90
058
cf9
69c
678
04c
6b1
cdc
014
05c
cc2
035
5e0
05e
041
cf9
cc8
01d
6aa
00e
cf8
607
ce3
051
67a
5bb
6a7
001
706
cff
c90
688
081
c73
014
754
d00
052
636
66c
73d
619
012
62f
627
00d
5f2
61d
02e
698
661
6c0
69e
671
035
ccd
651
6a1
ca8
c72
6a8
6cf
636
696
676
67f
653
07f
6c7
01f
057
6c8
0a5
64a
cec
cae
02c
67c
cbd
ca5
cf3
670
cb4
642
643
04d
63b
637
6cc
ced
c9c
6b3
cd9
64a
c81
6bc
c85
63d
cc2
6d4
cdb
6dd
6de
6f8
6c4
08b
c96
692
691
035
036
691
6a0
cd2
cbb
642
cf8
036
cf9
cd1
c94
6aa
015
cfb
6c6
62e
069
cc3
cce
cdb
6ac
cfe
638
088
c1c
674
616
071
5ed
cf7
04c
667
6ae
053
5f3
632
c4b
034
cdd
65e
6b7
cc0
024
6d7
65d
cd2
009
cf2
077
6ad
6ec
680
680
688
64d
015
ceb
086
c7f
053
044
cb8
688
644
6a0
6e4
704
600
6e6
60f
6a3
658
648
668
6b2
698
650
681
614

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,32 @@
25
89
30
2d
db
8d
af
8c
5b
03
d1
e8
54
14
9a
e5
59
78
ac
cb
a8
c4
e4
06
86
d5
e5
7e
82
5b
87
1a

View File

@@ -0,0 +1,32 @@
8c
97
02
42
40
61
11
e2
63
68
ad
87
60
c4
d0
2a
8b
28
d1
7d
13
82
10
ad
c1
27
19
7b
50
96
81
40

View File

@@ -0,0 +1,32 @@
01
21
cb
32
ac
d1
87
11
35
cb
34
e2
9c
1a
0e
26
cc
c0
01
b9
39
ea
fa
ac
c2
8f
13
f1
93
8d
bf
91

View File

@@ -0,0 +1,32 @@
8f
0d
5a
52
a5
87
1d
6e
df
1d
94
0c
0b
ec
6b
e5
80
05
ae
c6
b1
d5
47
26
2a
df
36
e6
e8
6e
98
b9

View File

@@ -0,0 +1,256 @@
87d
56a
523
0d4
22b
757
c8e
569
c95
61e
966
91e
683
166
43b
3d3
49a
860
53a
74f
9c1
8ee
a21
069
365
796
bb7
9d2
c1c
a74
4d2
4e0
16f
c08
0e0
09c
686
805
67e
153
3c4
005
888
33b
a95
753
a8a
b23
5f7
4ad
b7b
709
363
73d
2b4
539
c8a
3a5
cd1
89f
1ae
8d6
477
3f1
8e9
18f
1d4
b64
29a
a17
827
603
641
142
a11
261
ce5
c5d
852
81c
70e
9fc
3f8
a57
2c8
53b
7a9
a21
1c5
6f0
3cd
7eb
63f
ae7
74e
315
2bd
353
962
0f5
682
bb8
111
2ad
454
3e4
1aa
9a3
03d
8fc
2bf
a0a
44c
803
9c3
284
8ed
b02
308
920
6e1
2c3
223
702
91a
648
45b
081
53d
4fa
3bc
ac9
5ab
197
727
c57
460
2ec
395
597
924
22a
1fc
be6
5b9
3f2
c3c
3e9
82e
8b3
308
6b7
792
a8c
927
319
bee
40e
3ff
c0a
4d0
c06
715
8dc
86f
42a
b90
0c6
4ce
c47
86e
b94
277
75d
25c
1e2
357
c1e
6d2
504
814
365
c82
2d3
527
5d0
5d5
b8d
121
8cf
517
c4a
91a
72f
032
2e6
2f6
184
6ba
c34
6c0
ae4
26b
7c1
3bd
1d0
9cc
a37
63b
067
8ad
1e2
8ef
c5d
7bb
251
486
26d
1b4
b8b
4fc
6d4
a1f
2ad
9ab
6ee
8a6
317
602
386
795
2e4
4f9
bf8
bdc
cfd
b5d
630
664
1fb
631
9cc
169
515
8bf
28e
a6d
c04
ca0
b08
37f
528
ab6
93b
119
0aa

View File

@@ -0,0 +1,256 @@
9e1
3c6
2c7
6c7
a95
494
91d
93c
117
94b
11a
074
1f9
954
96e
137
384
9c2
97f
64b
038
821
b12
8ce
36d
864
267
840
5df
59a
a8b
2e4
72e
a40
943
6ca
0a3
874
cd9
527
659
545
44f
c3d
a61
7e4
006
675
67c
b59
12a
9f3
021
765
327
bd2
738
873
699
5de
75b
45b
c04
96c
3a8
120
c7e
409
8c6
645
3fc
657
435
4f6
aeb
1ed
69f
24a
6a7
569
603
927
191
3f6
b9e
03c
4de
a81
3ae
b59
a02
75f
115
a6a
b8a
ab2
b8c
61f
35d
06f
2e8
61c
9a9
239
710
0f9
a9c
54d
483
c35
912
5a1
8ad
b0c
96b
b1e
626
200
b09
a34
447
202
c19
1ca
c8a
220
0cf
6ee
a4d
756
051
37a
a62
5d6
319
872
67f
caa
941
3c7
af7
192
046
6d9
0dd
02f
21b
6cd
bdf
ca7
207
a6c
375
68c
9e7
b45
23d
1b1
b27
267
121
b3b
32f
6d2
533
790
7a3
836
57d
84d
67d
46b
675
22e
7be
7ba
b06
857
96b
464
79d
5a3
b92
3a7
a64
aa2
2f6
00e
745
a90
401
c06
bef
72a
b33
961
656
56d
83a
4bf
cd6
768
538
c2d
937
c39
bc9
b55
773
7ef
180
7c1
501
bbc
a84
492
0eb
896
c01
1fc
404
289
672
073
983
2f5
c0d
4a2
8e0
721
20e
9dd
b45
5f2
142
2e7
8ec
779
b2f
755
14f
30c
666
c56
19d
598
7f9
6b2
c56
7e2
276
83f
86e
4ee
63d
31a

View File

@@ -0,0 +1,256 @@
18b
888
bca
7d2
878
323
7b2
335
69c
4b4
c3f
7fc
447
cb6
1f0
319
bce
106
161
a0a
3bd
544
2fe
179
c54
a89
0ef
cde
014
5d7
4f2
337
71a
31c
465
1e0
77c
bda
bb6
a28
04d
aad
96a
075
a23
ad1
52c
1fb
bd9
8bb
9d1
176
093
975
070
18a
427
895
4f8
84f
3e7
a73
a4a
569
5d4
a78
4a3
7f7
c5f
aa5
32c
8ab
090
40f
900
c7b
926
707
8a9
bf4
8d8
b41
9a6
2ea
42a
101
775
6ea
b69
3c9
3b4
a0d
4be
97d
22b
a3a
641
57a
32a
bb0
9a1
363
747
57c
203
1b6
150
8d7
601
bfc
606
75f
a3a
a53
9b4
bab
82a
2ff
2f6
884
6a0
c9b
222
745
7ca
2aa
a7d
16e
b9a
cca
bdb
891
469
9f9
a1a
081
040
7d4
23d
be8
bdc
4fb
be0
9e3
16d
8c7
5dc
b33
389
2ad
951
0d3
8d5
873
397
623
302
646
381
591
990
9b7
166
5cb
0b4
264
4f8
8f6
3da
ac1
9f2
7da
63e
72a
0a9
42a
a46
bfc
a18
716
56b
b9f
ac8
164
818
741
86f
3bd
311
158
0d6
aee
807
ce8
9a2
c22
997
0d3
3f8
c75
b5e
067
19a
4c6
6cc
c24
12d
73a
bff
85b
21c
1a7
3e5
4bf
348
123
5a8
84c
714
0e1
b77
53d
9c2
7f8
239
095
c2d
5a4
10c
8cf
1cd
b8e
8fa
02d
b4b
34f
449
31a
beb
9ec
b2a
13a
b4b
c21
040
885
67a
50e
ab8
6fa
b41
43f
8bb
77f
067
4c8

View File

@@ -0,0 +1,256 @@
022
464
789
394
8bb
cb9
c5b
a9f
ac9
613
c5f
64a
9ea
cd0
19f
2c9
1fb
aea
a9b
399
b1d
2d1
0ac
33c
53c
7a3
520
0a0
c7a
42d
3f1
46f
79d
991
099
467
42f
6fd
8d4
157
73a
74e
741
8f3
90f
53f
a40
a0a
684
88c
819
b6e
1d6
a4c
502
49c
77e
ad0
125
4e7
059
34b
bf2
a3c
85f
bb6
bc8
5a5
36b
643
81d
9bf
7e6
5cb
a49
c1a
953
063
727
986
326
3fa
936
bc6
4cc
934
b6d
618
4af
a23
65d
823
3c6
817
af1
8d7
499
718
945
4c6
6e2
91c
013
cbb
558
58b
4b4
c9c
007
194
89e
9f5
8de
966
1d3
941
642
b8f
5e7
3a9
b1f
b22
37f
782
74c
4a9
6e5
6b1
0b5
412
345
3e3
b2c
43d
28c
0b1
5ee
2c1
161
410
7a8
6bc
8fd
839
236
4ef
5d2
b18
226
8ca
7f5
1eb
492
2c4
0ab
711
52d
aa1
344
70c
3a5
c64
91f
b8f
3f7
669
45c
a9f
475
857
5f1
64c
5aa
bad
746
ca8
3cc
6a5
827
352
692
731
704
175
c1e
585
52c
064
612
03f
be2
088
9b7
08f
ace
b1c
7d8
91d
18b
a1f
0a8
337
1de
1e0
265
530
313
9a7
b03
754
2e6
40d
5e1
c23
6af
7e2
a35
8cf
1fc
810
68a
5e2
01a
7c6
12e
a92
b99
21b
283
205
146
a04
c42
12b
c97
2a8
986
8a2
9f6
310
853
566
8b0
31e
0d9
081
870
34a
206
8b4
8c8
bcd
c8f
8f0
34c
b87

View File

@@ -0,0 +1,256 @@
41f
ae5
013
5cb
639
5a1
751
275
ba3
310
511
3af
bfc
166
9ae
0c4
06f
759
32f
60d
1d4
0c4
7cb
897
7ef
a57
2b6
531
650
6a9
901
10a
731
284
b5a
298
777
b48
9be
39e
456
ac6
11f
b25
809
040
767
73f
974
132
638
8ad
72d
834
ba5
1fc
250
373
07d
a4a
b85
1da
232
54b
2b3
107
463
2bb
02a
b2b
a09
7d2
ab2
90c
11b
232
3c4
b79
31f
c25
5d6
b1d
c25
a64
0a2
ace
18d
317
c6f
92d
4b7
60a
5ec
5a2
229
c28
7ac
0c6
137
cec
4b7
00a
a5f
455
abc
08c
7fd
9b1
c1d
2f7
32b
3b3
ba0
bfa
ae0
c00
04b
822
b59
0b9
713
bb8
5ce
827
c73
5ac
02e
594
8c5
770
5ff
005
85a
ada
172
2d2
268
406
9bf
679
580
976
5fb
92a
56b
280
42b
96d
af4
b2e
767
8d4
998
502
52c
1ef
011
562
01b
418
440
74f
517
972
8ca
563
9be
4e2
931
268
a20
0f3
9eb
3f4
af8
bbd
6b5
71f
6b3
bf5
b01
af6
c13
ca6
3ff
5bd
2bc
3fb
bfd
59b
a0c
3f2
c72
819
96d
841
a9a
5dc
a76
cbc
3d3
be4
54a
221
a8c
635
a4c
678
ad2
96c
5cf
5f1
77b
761
35e
cc8
7b2
ca6
7fa
29f
1ca
ac0
b04
818
74b
27a
642
07c
631
06b
9b3
c8c
c4b
28f
bb6
7df
4ea
2d1
8b7
2e6
5ad
63a
35f
96b
9a4
cfc
c0b
12a
11e
c1a
23c
196
8a5
ce0
b08
29a

View File

@@ -0,0 +1,256 @@
a15
52c
29a
162
c76
040
631
9ff
6ca
4b1
5fa
14d
b5d
200
5ed
bba
431
3ad
bcf
25e
384
2c9
a97
6d9
ca7
b16
2bf
6e6
c18
2a8
20a
60c
ca7
35a
bf3
4c2
c9a
8c2
41e
009
5fb
6d7
76c
a0c
259
44a
7fe
0e1
06b
802
361
a8d
cba
010
6f5
4a4
24d
121
73c
068
8b5
426
ab3
772
127
501
088
7d7
217
23c
466
64a
1b0
8fe
4b3
016
06b
132
93b
9c8
a0f
b45
4a2
0f6
0d9
94c
b2d
a4c
76e
101
1c5
c8a
b42
598
99e
aae
2d8
763
0d9
98d
1bf
c20
37d
046
3a1
56d
01c
267
494
b51
954
9f3
76d
b40
2f1
61f
531
a99
70c
b9e
acb
c4f
716
26b
30f
738
625
174
322
b35
b8b
201
73a
0e2
2c0
4b2
9e5
795
890
32b
964
2e1
c3e
1db
9d3
1c3
b54
c3d
87c
246
5d0
736
955
2c5
4a7
a98
3af
732
30e
049
33f
792
cd2
aa6
2a2
b77
241
1f3
5cd
5ba
93e
669
676
85a
528
661
2bf
9b8
072
289
793
552
856
4fd
631
358
a1f
00f
c1a
a54
cc5
520
173
1f3
c87
1b0
38b
9fd
16e
228
8ba
70d
11e
149
6c5
575
01e
235
96c
6e2
2d0
72e
52b
5ec
43f
3e0
815
9a2
07f
c47
c85
042
04e
486
38d
25b
414
40f
6d2
6a7
722
a78
82e
175
cdf
11c
81d
573
06d
91f
b40
110
8bc
037
b00
a58
13e
588
642
c23
515
730
7a0
3a9
3ae
966

View File

@@ -0,0 +1,256 @@
437
cfe
23c
b6e
aef
250
118
6cf
75e
2c8
381
13b
099
872
911
2f9
67d
973
75a
521
a4d
54c
94f
767
320
27a
407
135
1d7
774
0d3
a56
52e
31c
3fd
8f7
58d
1fe
239
492
33a
719
58d
70c
be3
3e0
b16
13b
b5e
892
19a
263
9bd
cda
3bc
000
47c
118
148
4f4
2c5
496
320
4e4
962
bcf
901
62f
b03
c99
0fa
46b
827
2df
875
5d7
04e
7b5
7bc
3a2
51b
88c
632
398
907
2d2
385
948
8a6
22c
0fe
b2a
a33
2d2
3d6
2a7
2db
c99
058
04e
1a0
6be
71d
b0c
13b
612
082
6d5
868
18d
b0c
485
410
0f7
b23
73d
31c
bbf
6c5
706
bbc
5de
340
cca
000
196
0ea
663
37b
9d1
4b9
7fd
9c1
504
5ad
74a
7a8
6a8
af9
236
cc0
aff
148
cd0
521
8b0
9fb
0dd
455
adc
918
9ad
078
2ab
c27
c4b
771
63f
8c6
055
b09
1d4
952
3a2
8dd
691
3ed
8c0
c7c
9c4
579
148
114
b3d
0bd
2df
43b
590
996
798
2fc
821
0e7
1ce
569
50b
996
aec
3ed
4e0
1fe
07c
5e1
622
bd3
3d3
844
410
378
1fe
b09
858
3cc
579
c85
287
38b
2b4
89c
a12
8f7
b64
aa8
bfa
41a
5a3
911
2b8
cfe
af6
253
52b
11e
afc
44b
86b
6f6
8f1
444
79f
b78
54c
573
3d3
107
cb0
973
4da
c5e
205
0b6
b6b
9d8
260
48f
0e4
c0a
c2e
ce0
b8e
ca3
935
468
092
306
848

View File

@@ -0,0 +1,256 @@
656
92e
938
cb9
075
239
cf4
687
0ca
378
5ba
b51
6ff
75e
39b
c00
82a
3c6
41d
ad5
798
118
1ca
713
055
472
57c
814
7f3
b23
45e
691
579
771
381
511
000
3bc
26d
40a
55f
4ca
706
30c
2ef
ab8
cea
629
2ab
a02
8b3
75e
59d
30f
16f
10b
86b
2a1
b16
5ba
a9e
a46
142
be9
3fd
ab1
499
28d
a40
472
48c
417
1fe
bb2
5f1
a50
ad5
72a
c85
183
518
cac
938
814
659
39b
a19
b92
395
87f
aae
6e5
107
37b
434
c48
326
a74
ba8
23f
5ca
8e0
872
778
128
cda
bd6
9ce
3c2
5b0
2e8
9de
bc6
02e
55c
72a
b3d
3e9
2d5
455
632
a43
589
50b
c00
cf1
be0
a70
229
af9
a8e
5b4
256
8d3
48f
138
adf
904
0cd
202
993
2be
0bd
5b0
6c5
2fc
1c7
566
844
0fe
472
034
44b
a9b
36b
7e3
baf
1f8
6a1
2b1
914
b20
781
222
914
8c3
96f
868
326
55c
36e
0f7
3f3
bf3
16c
a8e
63f
256
a50
b37
29a
3ed
798
608
014
73a
b3a
ca9
b20
01d
78b
1ca
b6b
af2
215
49c
3d9
c82
a8e
7b2
388
875
60b
7bf
400
49c
2a7
162
037
8ea
bdc
2cb
4a6
125
737
c07
096
0b9
13f
36e
b64
4e0
b71
8cd
38e
a5d
b6b
1e1
837
cc0
b2a
646
744
525
208
320
10e
625
427
159
7d3
39f
5fb
496
6dc
cc0
629
6f6
4cd
528
ca6
cd0
9a7
c9c
612
5bd

View File

@@ -0,0 +1,256 @@
a2f
bcc
41d
90e
43e
3ed
417
54f
4b3
9f2
43b
148
1ba
7b9
02e
4d7
9f2
347
7d6
b44
865
000
14c
872
36b
cc0
bf0
179
1db
c37
b6b
0d7
771
3fd
9d8
114
b47
6c5
514
1e4
528
6f2
21f
2bb
a39
bcf
be3
232
c3e
179
33a
344
431
b85
5f5
cf1
9b0
159
0c0
569
6f9
3c6
27d
280
82e
c55
492
2e8
ae9
ab8
831
6ae
367
6f6
361
562
acf
68e
027
1a0
1d7
04b
19a
7f6
71d
507
3f0
320
837
468
01a
7a2
c62
a15
0bd
424
b64
632
45e
5c4
05b
c2e
4b0
320
287
23f
2db
41a
0b3
79f
381
757
a5a
101
90b
2c5
a70
5b7
4ea
5bd
694
0b0
0f1
8e7
68a
8d3
104
3d3
b51
781
482
c5e
625
bcc
69b
c99
4dd
a70
7d3
50e
5de
76b
ae5
277
bb9
28d
c14
7fd
9a3
297
8cd
0c3
90e
22f
639
586
952
44e
4ac
b26
c78
a49
28d
a81
c82
c27
918
3dc
173
885
76e
2b8
b8e
acf
6f9
424
9ff
072
30f
532
b7e
9d8
814
16f
485
0b9
280
b88
5ee
63c
7bf
202
3d6
9b0
c75
37e
858
59d
5de
183
cac
80a
9a0
2db
36b
88f
7d9
43e
79b
284
3fd
23c
218
51b
b95
27a
507
925
589
212
bac
583
b85
37b
2f2
ce7
521
3a5
723
a8a
c82
b61
ce0
9f8
c6b
0ca
c7c
6be
42e
7e9
9eb
45b
b54
24c
6ec
6b1
c2a
c03
3d6
2db
085
3e9
9cb
ba5
118
125

View File

@@ -0,0 +1,256 @@
4e0
751
270
4e0
681
410
1a0
1a0
751
8f1
000
681
0d0
8f1
340
270
a91
410
a91
410
751
c31
751
8f1
681
270
b61
4e0
270
751
821
751
c31
1a0
b61
681
1a0
270
c31
340
821
8f1
340
681
0d0
9c1
c31
1a0
a91
681
4e0
b61
1a0
b61
c31
5b0
000
8f1
000
5b0
a91
751
5b0
410
821
5b0
4e0
b61
b61
b61
681
340
821
821
c31
270
b61
1a0
821
5b0
000
5b0
340
751
4e0
681
a91
8f1
4e0
c31
9c1
681
821
8f1
1a0
0d0
340
681
a91
9c1
340
b61
270
8f1
270
b61
340
821
8f1
5b0
0d0
410
c31
000
4e0
821
4e0
821
9c1
821
821
9c1
000
821
000
4e0
b61
751
1a0
681
9c1
1a0
9c1
000
9c1
9c1
c31
751
410
a91
000
0d0
000
000
a91
9c1
410
a91
681
5b0
000
270
270
8f1
410
5b0
000
751
9c1
821
8f1
751
8f1
270
751
1a0
270
a91
b61
8f1
0d0
000
000
340
a91
000
b61
4e0
8f1
5b0
8f1
a91
340
4e0
a91
000
b61
0d0
1a0
1a0
9c1
0d0
4e0
1a0
c31
c31
8f1
5b0
340
1a0
a91
c31
5b0
4e0
4e0
821
b61
b61
821
000
4e0
410
1a0
410
a91
821
a91
410
000
410
340
a91
821
b61
000
340
8f1
681
b61
0d0
000
0d0
751
9c1
340
5b0
681
b61
000
4e0
340
751
410
b61
340
8f1
b61
000
681
000
4e0
8f1
b61
4e0
9c1
5b0

View File

@@ -0,0 +1,256 @@
6dc
cc9
cf7
cc9
015
026
c6f
003
6c9
06d
cec
01c
081
658
c95
cb3
6b1
69d
ca4
650
061
05d
6b5
6f4
07c
706
006
00e
67a
656
cc4
0b3
ce8
cec
6a1
6d0
002
67a
04e
714
6e6
cbe
cb1
cf1
65d
07c
6cd
64b
61b
6af
618
00b
cbf
cf6
cd5
686
656
053
079
026
6ae
c65
cab
cb4
687
06a
630
ce9
6d0
6b7
cdf
02b
628
649
071
6e5
089
cec
656
6ab
ce0
ca1
645
cd6
634
65d
058
04b
ce7
675
cf4
c9b
c5a
680
661
6e3
04d
cdb
6a1
672
696
cbe
cd7
6f3
c9f
63d
c99
6bd
65b
046
026
0a0
00d
6d3
620
636
cd7
003
014
035
002
6e4
69a
014
078
650
057
002
cc6
049
66d
62d
03e
01d
604
6d8
051
cd7
c83
014
01e
cec
635
697
6ba
caa
cdf
06e
06d
01b
03b
cba
660
cf0
03e
6f5
678
6d2
023
64a
6f0
033
c98
6cd
64c
62e
052
001
cd2
664
ceb
668
cbb
612
714
6c1
08c
6bf
02d
66f
69c
660
676
62b
028
08c
67f
657
cd0
66e
ce8
728
c6f
60f
019
01b
cf3
c8d
6e1
66c
698
6ee
636
6a7
026
cfc
cbe
6e1
6ff
6aa
cb1
cd2
6c1
057
cbc
05f
673
030
04c
065
614
696
69e
6dc
640
65a
01b
055
697
06a
075
618
67c
c88
5e9
6e9
cf7
071
cdf
65e
683
657
68d
64c
653
675
d00
722
6da
cf6
cac
00a
65e
02a
02e
6b0

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,32 @@
07
13
2d
84
fb
8c
49
59
05
a8
ca
67
09
e2
56
3e
90
fe
55
27
ab
72
e0
f8
0d
e1
db
34
29
ee
54
be

View File

@@ -0,0 +1,32 @@
c0
d4
57
64
e3
db
f0
94
8b
91
4d
6f
65
c9
2b
d0
eb
d2
15
56
e5
07
67
53
af
48
df
8f
ff
d6
ba
dc

View File

@@ -0,0 +1,32 @@
34
b9
61
af
5d
62
54
af
72
c0
d5
0e
70
dd
9b
49
91
15
0c
cc
09
19
2a
a4
6f
19
53
d5
c2
9a
33
ec

View File

@@ -0,0 +1,32 @@
c9
f6
7b
d4
70
62
84
c9
62
9b
6f
b1
3a
25
db
24
5a
70
94
63
9e
95
77
e2
8b
e5
14
df
09
02
01
70

View File

@@ -0,0 +1,256 @@
a76
8df
a08
3a0
b20
8be
640
1f3
c77
b44
3de
837
8dd
958
283
397
76e
4eb
be3
c7b
cb4
980
32f
314
7dc
27a
4d3
c27
9a4
ac5
b4c
1bd
8c9
9ea
ccd
378
88f
a6e
654
921
2bd
6ea
7be
3cc
83d
c2e
ac2
39a
6c3
1cd
b85
28b
b8e
8ab
738
93c
28a
7af
b2b
23b
690
546
9c1
66a
218
610
b48
018
639
a7e
baa
2cd
961
bad
2d5
245
a5c
360
178
65c
080
b1e
663
aef
27d
b0f
b12
106
c7d
7ad
59f
580
1e9
2da
844
7b5
661
aa4
589
182
1a7
156
ac4
a69
163
a5c
78a
00e
6b9
08e
4cb
5fc
b5f
a97
298
ce3
a72
6b6
b51
5f5
4af
032
405
af7
96d
0f0
a8f
a4b
9a4
6ff
8b8
15d
7d4
a97
aa4
b73
64e
953
382
87f
825
617
68e
15c
326
499
bc8
93e
862
62f
2ff
af5
28f
92a
028
cba
8db
1f3
092
85b
306
a6c
06f
4de
591
994
2da
ad3
7a6
997
221
312
2df
6a2
924
38a
c4b
81e
263
096
153
028
b9a
2a9
b8f
cfb
506
6a3
9f2
bfb
1d1
3b6
42d
62c
cf7
1dc
01d
72c
778
693
967
8f5
2f7
8b2
848
640
5e8
9ff
b9e
3ee
622
a1f
3a4
6f9
c37
56c
98d
5d2
63f
16c
679
bcc
b8e
18c
387
5ab
c09
2b3
b43
462
87e
182
455
4e7
20a
a86
74d
877
b47
a06
209
01a
433
496
699
95f
21f
b53
81c
76b
72f
08d
b16
893
5eb
c61

View File

@@ -0,0 +1,256 @@
080
038
177
1fe
cfc
b37
4fd
550
29c
a59
50e
011
4f8
84f
a0c
43e
7c8
c7c
715
9a9
504
b7c
603
87c
984
2df
80a
660
9ef
921
112
267
0e0
2bf
853
b9f
8fa
952
909
8b3
a4a
a99
6b0
4ac
6d8
1d6
193
43f
454
516
858
120
3ae
3a4
032
b41
49f
897
b4d
5fc
6ea
50b
5cf
132
930
2d8
673
076
41b
cc4
c03
7d2
31c
7b9
651
67a
cb0
27c
252
4c6
013
a58
5c3
916
70c
0c9
3ef
8b2
7dd
98d
523
2b4
47a
0e2
2e6
9db
6ef
919
988
79b
287
18b
047
971
6a0
bbf
a1d
bec
a93
b23
14e
530
635
64a
4d1
23a
275
31d
637
277
aff
16c
91d
2d2
480
097
9af
364
5af
5f2
940
5df
0d4
056
28c
a41
03e
27b
b36
035
12c
78c
a6a
4ff
b1a
b0a
bf8
3d7
9b1
87a
280
018
c2a
799
1f5
655
7ab
64a
bda
2e9
543
c40
23b
241
988
b3d
a40
48b
211
9f4
1cb
056
7c9
383
383
377
25d
532
57b
121
cb2
25c
60f
4fa
643
beb
572
c8e
649
14a
364
62d
672
c6f
a84
417
136
675
3a4
432
201
272
cbf
768
2fb
946
693
5f2
8fc
994
cd5
698
927
4a0
046
5d5
9b9
ce4
3c8
0d0
91b
cf1
c4f
5f9
8b1
2f5
46e
771
b28
007
6ce
b78
b6a
69b
1ec
bf1
15b
34a
bfb
407
aa7
c29
284
c3e
1e5
8b0
3f5
a45
8b3
770
4dd
c55
991
bed
349
814

View File

@@ -0,0 +1,256 @@
000
8eb
9a8
02c
b01
9b3
16a
b61
ad0
486
334
22b
75e
a3c
5a5
91c
276
24a
40a
4f9
94c
5bf
2e0
71b
348
a3a
1fc
a45
5d7
3c2
208
a06
700
848
1f5
b94
7bf
7fb
bc4
8af
b6e
426
c8d
8cb
651
a8a
1a1
9f8
4be
cef
511
15c
911
239
c6c
824
0a1
27f
0fa
924
483
79c
58e
457
c85
a3f
0e8
4c0
93d
172
c7b
751
706
05c
c91
27f
48b
aea
b69
a7d
c8e
af6
643
17a
4bc
65c
c24
710
6df
9a3
61e
c6f
bd1
aa2
595
8a1
65c
8f1
a29
ab3
6b6
5cd
3b1
01c
7ce
1a4
377
b98
11a
8da
897
1b2
b2e
647
6f9
4ce
b4c
0ae
8b1
bc1
5e2
6ce
043
43a
188
2ff
b05
11c
ac6
c8a
ba6
c64
63b
bf5
3ee
229
7c4
aae
a59
9e9
022
ab4
280
6ef
589
a0b
ccd
573
c87
899
cf4
9b1
887
c71
56b
c49
ba7
1b9
1f7
014
976
55c
0ca
bc4
71d
a50
c31
022
771
3af
b33
81b
cf0
795
b81
5c2
765
3b3
9a0
a0b
533
6ed
bfe
781
255
6ee
0a9
b54
834
10e
743
6b9
671
320
40e
643
9a9
359
b49
208
b45
15f
ab3
a72
762
c6f
a6b
331
819
57e
609
a05
a55
b80
017
a82
b3a
25b
0df
215
cca
442
6f5
7ea
bd8
5de
1fa
34d
b20
391
9ef
797
c49
879
097
296
714
3f3
58e
3b0
6c2
a87
060
6f1
24c
125
1f8
3ae
28d
9e8
8e9
a9d
226
baf
7ff
46c

View File

@@ -0,0 +1,256 @@
c6f
992
2ac
8e7
2b5
2f8
7e6
c70
84f
ccb
3f0
4d1
0be
359
72b
6a3
8d7
c34
772
24c
2ae
9ab
cdc
1e9
9b2
634
bbe
57b
09d
2fa
065
025
550
068
7d6
8e4
ca6
853
b81
30a
588
ab9
09e
89a
38a
64e
1a7
950
2c2
31c
c8e
c13
208
8c6
41f
b85
c43
634
a69
90c
548
958
6d1
20b
a09
7af
3d1
9f8
b49
08f
33c
acd
c31
887
c56
a52
b4e
069
856
503
7c1
48b
9f0
23c
92a
46e
98b
b98
c11
4dc
5c7
0b0
112
2aa
243
395
0bb
8c3
567
6d2
0f7
cb5
8e9
bce
85e
459
149
a10
08f
5f9
638
5cc
913
2a2
a62
5c7
b5c
6b4
bbc
52d
9c7
4eb
796
b4f
25a
bfd
2f2
c21
0c9
1a6
372
8f4
950
c48
ae5
aee
1fc
348
a06
49a
01d
365
357
57d
bea
67f
3f3
024
313
78d
b88
0af
927
4e5
752
c3c
159
593
b38
05c
924
403
340
b41
513
149
22e
1d8
7f8
0d6
711
bde
871
ace
302
2b2
1c2
1c6
a3f
93c
b6a
bbc
c49
554
873
a6b
831
47e
4ab
52c
5af
9b2
792
6c6
97c
920
6e5
826
7ba
d00
422
aed
ada
c4b
146
2c0
484
b0d
66c
063
2c8
37a
6c4
00f
b2d
8e8
217
448
26f
77a
b51
ba6
1b1
179
73d
172
6ca
401
525
1c8
5e6
6e9
640
573
04e
c4e
a90
a54
b9d
0a6
50c
ab7
1b7
3a5
528
452
892
9f7
c67
29e
196
285
556
2d3
8e1
71b

View File

@@ -0,0 +1,256 @@
4ac
246
6ca
791
649
c6b
6f2
420
6ee
93b
8f7
169
339
579
83e
8a4
108
211
236
651
986
36b
bdd
b81
3f2
7a1
214
a49
246
024
695
45a
0ca
9ae
797
019
1da
9a2
432
3fd
41c
895
1b0
82d
bb8
5cc
5d5
cc0
31c
439
900
b46
16c
b66
cda
273
ab3
b77
bb4
ae9
6a9
a00
6a1
72d
44f
456
a02
739
613
cf0
5cf
2b2
3b8
70b
7a2
050
135
712
aa7
7a2
209
853
a6f
419
185
9d1
7c5
6a0
352
a65
b92
1f7
201
761
0e8
5fb
746
50a
c08
180
9ba
946
6ba
21b
5b5
329
b19
00b
c41
289
8d0
c17
981
c6e
14e
ae9
2c5
1a2
6ed
ac0
7fc
2a8
39b
335
236
23b
62d
262
781
a59
454
a2d
c56
bfc
3e9
0d1
a1e
5ca
9db
a37
c56
4fd
36b
b50
59e
ace
c6c
3b8
3a7
02e
274
3cc
29f
b4d
b1c
3ef
980
750
479
842
286
106
4a7
bc9
7ad
075
a9a
98e
474
b03
8cf
39f
3c6
14d
a46
19e
3b7
9e1
cb3
63c
50a
31d
be6
347
9ab
0a2
826
aff
4f3
597
c83
6b3
458
185
49d
36a
4b6
27a
cf9
c8c
2ba
861
a2c
89f
7c3
c79
ab1
b4d
b2e
286
858
b88
748
5f5
b62
ab3
87b
54b
762
124
370
c0b
53d
635
876
491
a04
400
c8b
3db
49e
5af
9c3
73b
64d
949
a4b
23b
837
2ea
999
5b7
82c
3f8
462
023
286
3ff
a63
36e
652
398
197
a30
272
a90

View File

@@ -0,0 +1,256 @@
a41
bcd
88e
93e
aa4
12b
698
5fc
1d4
401
097
065
a06
219
cf1
b45
323
cc9
422
4e9
521
75e
a2b
c1c
bc3
091
925
41d
c2a
cf1
73a
9cf
17f
2b0
a60
024
b5a
4b9
b32
595
52c
68c
966
137
a57
871
21d
c2f
39f
0c0
b87
bca
25a
946
cba
222
aae
462
3ed
c0b
cf6
8d5
24b
c03
431
3b5
4e5
a35
343
1ee
064
3ed
7bc
0e6
50b
9a2
5c1
ca1
678
4c1
79f
a91
ca3
03d
6dc
537
0b1
584
01d
bed
96f
2d1
692
18f
a9e
45d
812
5bc
98b
cb0
84f
875
7e8
135
526
79d
0b6
49e
b08
b1a
462
bcd
9e8
1bc
98d
272
838
1e5
382
bd2
59d
927
a5f
566
c84
317
322
952
9fe
12b
5ad
4c0
8f4
94f
8ca
621
687
1e5
af8
9a7
3bf
607
99d
5b8
c7c
b73
2f7
88f
8b6
14c
3ec
961
010
0eb
04c
30b
1bf
430
a6f
31c
80e
5c4
2f9
2d9
854
3ea
af7
544
153
163
6e8
9d8
146
670
387
96a
1ef
89c
617
4f3
a5b
35a
a08
76d
175
3fb
b69
7a2
881
07d
3f2
419
863
61d
034
52a
3f9
c4e
813
39d
2a2
887
c2f
c4d
3ef
af4
4df
b18
273
ab6
400
568
a7e
9c1
867
237
38f
920
1df
b79
0b7
48c
713
86d
4f7
142
1b0
3c7
220
3e1
052
624
70c
09b
c8b
47c
7e0
955
b90
35b
bd5
9d5
b2b
362
362
5af
09d
3e4
50e
90e
987
472
5a6
2c7
adc
b2f

View File

@@ -0,0 +1,256 @@
36b
22c
ae2
1fb
0e4
11e
448
0d7
3b2
1b7
07c
b8e
93f
baf
8b0
441
489
646
b54
6b1
017
13f
a7a
2bb
1b0
c85
a26
007
1b4
72a
55c
8c0
1b4
7c2
726
492
636
8f7
ced
3e0
b09
183
202
935
9a0
07f
1f8
34a
1a0
7c9
4f7
aef
6df
22f
ad8
ce0
8f1
868
4e4
697
6be
c48
05b
a26
83e
6ec
cd0
2e8
0d3
2a4
3d3
2b8
1f5
532
c41
bed
36e
c17
1c7
778
baf
938
6cb
3e0
0e4
403
5f1
0ed
0ca
528
767
507
3e0
3cc
733
381
c37
c27
5f1
821
51b
0fa
055
0ea
a5a
983
a77
bcc
650
a53
4e7
14f
a1f
608
021
ba8
468
47f
c37
cc3
11e
280
792
8c6
559
76b
0dd
1d1
5fb
a12
8a3
8c0
b44
444
0c6
142
50e
79f
bd3
5e8
35a
4da
8b0
71d
28a
ced
50e
2cb
014
46f
333
9cb
30c
101
114
6ff
96f
cb0
7bf
27d
67d
a29
128
18d
cbd
795
76b
632
2ae
7d3
4a9
aae
21f
5ee
b98
2bb
576
7b5
778
50e
996
4d0
273
744
3e9
20b
b71
7c6
a0f
361
04e
179
54c
0cd
4ed
872
b1d
0b6
88c
068
04e
aae
3f0
bdc
837
c0a
803
7b9
9c4
abb
a0c
63f
983
7a8
309
a5a
179
52b
3fa
3b2
ac5
284
77e
adc
a70
5ee
92b
5de
b3a
9ce
4e7
b8b
948
9aa
4f1
00d
76b
771
0b6
266
2b1
8ed
1ca
410
639
63f
5a3
02a
ae9
c6b
2f2
a5d
5e4
196
6c8
bb2

View File

@@ -0,0 +1,256 @@
a22
827
629
367
59a
6f9
8ed
b37
6a1
ca6
885
7ac
6d2
983
709
326
4ed
b54
058
583
2d2
bfd
ad5
0ea
485
374
0ca
c3b
1eb
590
87c
74a
42e
64c
a67
67a
5de
357
4e7
677
4e4
00a
280
99a
980
6c8
c68
2c1
1e8
c96
6f9
01a
c0a
cc3
ac2
841
a15
13b
1e4
0bd
2a1
1de
9a3
c65
49c
9ce
4b6
6ff
723
4c3
7f6
8a9
afc
9fb
677
205
49c
0b6
b2a
5e4
82a
acf
183
44e
73a
8dd
9a7
173
b7b
901
176
cfe
8d7
ad2
4f7
4dd
215
9ff
273
3c9
785
56f
2b1
bb9
71d
1b0
121
88c
19a
055
56c
bb9
1db
455
2a4
cd7
43e
4e7
455
330
21f
670
81d
b30
46f
22c
32d
b09
885
7a8
83b
3a2
70c
b5e
7a2
a77
b7b
a94
400
b19
ae9
1b7
827
2c1
b7b
5e8
b23
46f
22f
878
914
593
2ef
65d
a43
a22
573
71d
7e9
aef
7d6
b5e
a22
814
431
46b
4a9
407
329
232
590
af6
a60
18d
b13
02e
64c
381
a94
1e4
5f1
a49
1a3
193
a6a
559
23c
608
c7f
23f
8bd
757
3d9
291
b5e
918
c10
51b
b61
68e
cdd
6f2
43b
0d7
121
055
8a3
294
243
cd0
2ec
38b
84e
01a
a9e
1c7
357
448
848
781
744
639
b78
acb
ccd
899
4e0
259
c62
98d
4d7
357
807
309
b57
c6f
4cd
6b5
7b5
85e
0ca
53f
67a
014
aa8
9d4
9a7
653
aae
4d0
663
c2e
878
710
08f
04e

View File

@@ -0,0 +1,256 @@
650
49c
173
518
9e5
945
a67
4c6
694
263
9d1
70c
b4d
260
681
22f
b19
034
2ec
91b
788
3a2
7b9
8b0
444
cea
986
b10
aa8
21f
9d4
921
bdc
681
514
625
208
0bd
316
072
c2a
027
27d
38b
07f
821
5d7
a4d
ca3
243
a19
507
4b3
61c
a08
a7d
099
84b
5e4
ca6
0da
54c
892
051
a1c
27d
2ef
8b9
229
74a
2f5
0d7
336
76b
a6a
2a4
b37
9de
183
13f
7a5
875
344
5ee
1f1
c2a
a50
800
378
3ed
c99
bc2
670
b6b
4f4
4d7
8d7
9ce
b1d
8a9
1d7
a77
507
a43
bf3
8f4
23f
320
065
c58
837
5d4
580
5d7
1a0
c55
437
67a
a02
000
9e1
0e4
3c9
33a
723
c31
3ac
625
000
67a
74d
744
566
6c8
86f
7b9
189
b16
489
085
0a3
7c9
767
54f
270
8fe
a94
7c6
6dc
0c6
104
03e
0ca
320
948
1c4
444
a0f
72d
ce0
104
5c4
101
4e0
744
a87
407
c4e
7b2
364
90b
51e
31c
a7a
4e7
96f
bf6
0b0
38e
ab8
548
90b
681
b06
190
6d5
0fe
6bb
785
ce0
0f7
761
159
62f
128
aff
00d
3e0
862
bc6
c6f
5b4
50b
5b4
5b7
28d
be3
2ec
458
132
3d9
5d1
3f0
09f
aa8
0b3
23c
8d3
347
9d4
13f
a53
7e9
a87
3e0
ad5
904
a94
208
024
152
acf
a2f
3d3
5c1
54c
49f
225
b2d
5bd
2c1
3cf
5c7
590
39f
7ed
cc6
821
569
96c
54c
041
96f
69e
7cf
1c7

View File

@@ -0,0 +1,256 @@
410
821
c31
1a0
000
0d0
b61
c31
a91
340
410
a91
340
270
681
410
b61
8f1
821
681
a91
1a0
4e0
4e0
8f1
000
410
751
a91
a91
a91
8f1
270
751
a91
000
5b0
4e0
c31
c31
8f1
410
b61
681
8f1
821
751
a91
0d0
4e0
4e0
b61
821
681
8f1
1a0
410
a91
8f1
0d0
b61
b61
270
751
9c1
410
681
821
9c1
8f1
5b0
9c1
a91
751
0d0
8f1
a91
c31
821
8f1
9c1
1a0
681
5b0
340
681
a91
a91
b61
b61
000
000
0d0
4e0
a91
410
681
821
9c1
751
5b0
000
681
c31
410
751
340
9c1
681
0d0
751
410
270
751
4e0
9c1
a91
5b0
270
340
4e0
1a0
340
681
000
751
5b0
b61
681
5b0
821
8f1
821
8f1
b61
4e0
b61
270
8f1
751
1a0
000
4e0
8f1
4e0
b61
b61
681
0d0
751
751
0d0
681
5b0
340
681
5b0
751
751
c31
751
340
b61
a91
b61
270
5b0
270
751
4e0
000
4e0
1a0
9c1
000
1a0
410
270
5b0
340
340
681
1a0
751
9c1
751
1a0
9c1
751
5b0
a91
5b0
340
681
821
0d0
1a0
8f1
751
5b0
b61
b61
751
270
1a0
270
681
8f1
5b0
340
8f1
000
1a0
a91
410
681
340
5b0
4e0
270
a91
270
8f1
0d0
a91
821
5b0
681
5b0
c31
8f1
1a0
751
4e0
681
340
410
681
b61
270
0d0
751
4e0
751
681
410
8f1
a91
340
340
9c1
5b0
681
000
681
000

View File

@@ -0,0 +1,256 @@
04a
cbd
623
039
6a3
656
cf0
01d
6d0
c97
cbb
65e
646
688
02f
617
6ba
011
060
cbe
c8d
622
5d7
03f
6d4
656
6bc
662
003
679
cfe
5ee
699
0e5
642
689
640
050
655
02e
c9e
642
049
053
044
638
646
c8c
cc9
075
679
cb5
62c
08e
6f0
c90
684
697
62f
654
04c
61b
cee
61a
cbc
726
03d
cc7
6b1
67e
625
cdc
059
ca6
03f
ced
c83
088
696
6e1
67f
cfb
646
030
5f5
00a
6c4
632
041
64e
704
71c
ce8
c87
01c
ca9
04b
015
cc4
cd6
664
67f
5ed
030
653
cdc
6be
6cf
6d4
038
680
626
637
6a0
009
645
652
034
0bd
684
6c4
000
004
668
06d
cb2
6cf
ce2
5db
c76
cfa
ccb
5e4
cd3
ccf
624
680
062
69e
01a
6a5
067
072
019
06a
ca5
6ef
627
034
ca4
021
cba
cb4
036
673
6d6
020
c79
5e1
6e6
6d8
043
084
6bb
038
cd2
c67
041
6a3
c4f
c85
6ba
61f
01a
d00
03e
001
69a
06a
6dd
cc7
6ec
c8c
018
064
009
6bd
01b
016
619
08b
69b
6a8
615
6b1
63b
011
628
6ad
023
6a3
064
ccd
612
65a
cb6
09f
032
5e3
655
025
02e
6b2
04e
602
cb2
6f7
cf5
6b1
011
647
cc0
657
5e8
caf
63c
caa
00c
cf1
024
6be
645
cd2
6a0
078
691
6e6
001
cd0
67a
674
5f9
005
ccc
73e
699
c82
026
023
c7b
706
6ec
cbc
691
66c
63e

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,32 @@
52
d0
42
14
da
32
7d
b1
27
94
31
10
1e
f0
b8
d8
c1
ab
39
fb
c3
69
60
18
4a
a8
69
c2
4b
16
79
71

View File

@@ -0,0 +1,32 @@
23
f2
11
b8
4a
6e
e2
0c
8c
29
f6
e5
31
4c
91
b4
14
e9
40
51
3d
38
0a
dd
17
bd
72
4a
b3
a1
3a
52

View File

@@ -0,0 +1,32 @@
20
a7
b7
e1
0f
70
49
6c
c3
82
20
b9
44
de
f6
99
bf
14
d1
4e
55
cf
4c
90
a1
2c
1b
33
fc
80
ff
ff

View File

@@ -0,0 +1,32 @@
3e
27
51
88
8a
87
ac
c8
33
a6
e8
83
01
8e
16
0d
e9
28
5e
2b
f9
60
33
f0
ca
8b
e9
7d
42
b1
63
85

View File

@@ -0,0 +1,256 @@
a4b
c48
100
8a2
124
509
2af
33f
793
486
b4a
cb6
7f6
643
76c
50f
a15
7b6
935
36a
ad0
255
a64
337
468
89e
31a
0b0
9eb
9fa
5f9
50d
3ca
0e8
bbf
4a9
3ae
1f2
cc2
40d
a73
98a
a41
181
28b
44c
32c
495
1f2
400
3c5
78a
603
797
b84
230
5a7
bd9
50e
94d
b9d
5d0
b66
b03
71c
5d5
37f
45f
494
00f
370
195
64c
c4a
9ec
04f
658
4fe
980
8ee
9cf
b0c
462
5e9
9b1
222
1c5
3f8
9d1
37b
a0b
ce7
52c
70b
27d
847
462
af7
c20
c63
1bf
8ab
32f
52b
165
16b
30c
393
63a
58b
2d7
431
14a
499
b61
ca6
38b
9c8
a8f
85f
5c7
4d0
96e
7e6
86f
1b1
831
580
c77
944
0fb
894
b80
984
99c
1cc
cb3
a5d
bda
318
3b4
327
471
12b
8cc
473
67b
834
86b
830
573
33a
88d
166
8e7
99f
b3c
16e
0e2
086
362
c40
765
69a
9be
687
8a9
9c1
25e
830
9de
0d5
15c
c56
3b1
83a
3d1
5b6
4ed
7bd
8a4
6dc
c80
623
25f
ba2
68a
098
33f
ba0
6a8
38c
895
058
6b5
7e3
91b
377
005
c5d
3aa
6ff
22a
c05
01c
358
016
c3b
48e
078
6b3
13e
532
3c4
bc3
737
2ea
916
017
69d
7b9
033
98f
9fe
63e
970
466
91b
3a5
540
80a
535
182
9d6
925
0f5
32b
1fa
5d1
a22
04f
66e
ab6
213
65c
cfb
1a5
388
b1b
910
cc3
4ee
1e5
5fe
66f
635

View File

@@ -0,0 +1,256 @@
a30
14d
26f
653
323
af4
5cb
62c
393
0eb
9be
9b3
3d0
278
6b1
56f
bb1
ae5
6fd
1fe
57a
195
932
b4c
8d2
8ec
9ef
9b7
83b
5cf
628
b78
1dc
b83
a1c
27d
7c0
3bb
bf4
22c
471
825
997
749
a88
ad7
936
7f2
33e
650
6d8
16c
94a
74e
cd0
b0e
299
507
9a7
2ae
c74
3df
c5a
3db
278
30d
376
9f6
79d
43d
c74
54e
aec
320
af6
c1b
81c
ace
bc2
70e
cec
934
4ac
86e
688
5be
708
254
8fc
993
adc
c17
c46
bb9
800
875
282
79e
02c
c43
8fe
ace
644
8d1
c8a
8cb
a53
395
787
0c9
09c
6a7
8ef
b87
9de
055
969
1c7
9c1
b3c
7e8
2af
c49
47c
28f
abf
5b0
61e
261
693
b3d
7cf
8b5
6f3
acf
c76
a74
b37
128
2dd
988
674
c64
b8f
8ee
2c6
488
626
ada
c81
8b0
ae2
bb6
6c5
c77
94f
1f6
1e5
2f6
0fc
866
5c4
aa6
27e
ab7
33b
89f
658
0fa
951
27e
c7f
4ef
6cb
4a5
198
676
b3d
cdc
75c
537
2f1
48e
2c1
cb1
938
2e2
123
24a
6f4
20b
880
4a3
5c0
594
a9f
145
560
5d8
90f
7a4
999
85f
c76
7b2
993
8be
614
263
61b
3e9
b13
1c1
b16
b48
3dd
406
243
018
b91
72d
8df
818
9f9
725
9fc
89d
1f0
ba1
263
007
99e
1cf
55a
867
3fe
4aa
b49
cdd
3a5
8ae
67f
32f
3e5
41d
3c6
019
0b5
520
5fb
0b4
7b1
697
44e
809
91e

View File

@@ -0,0 +1,256 @@
c0f
05f
12a
b59
05a
209
26a
39a
601
1b7
8e9
57e
67f
27f
87d
7c0
510
4cd
1c6
251
39d
a5c
9bf
450
656
54a
52d
085
1de
a58
228
c1a
ac2
3bd
2fc
188
294
2df
3e9
003
b7a
024
491
6ba
965
865
b85
189
53f
39a
c3c
6a4
4cb
877
961
a85
96a
7f7
414
6b6
6b8
125
3bb
bac
49a
91f
0b1
b38
809
967
ac1
71e
164
48e
2b3
b3a
b7f
c0b
249
cec
8fe
638
4fa
77f
09b
a3c
0d2
3c2
54d
786
8b4
0e6
1d2
0f5
970
783
a3a
776
b1a
977
a28
517
811
c45
4eb
556
ba1
b8e
8fc
3c9
b78
b20
188
649
64f
0a3
498
b9b
854
a2b
783
0f4
047
962
736
030
aae
639
735
038
3a0
650
bda
a03
25e
440
682
630
7d1
845
9ae
377
172
6b1
324
20f
71e
99c
0a0
aa3
4cd
33b
4d1
091
8eb
b19
3db
a09
c4a
659
14a
886
4cb
748
0c2
b48
4db
3fd
a38
3f6
944
ab9
975
552
86a
443
09d
183
810
aa8
832
463
bc2
45d
9a1
35d
49e
0dd
904
a22
650
60b
715
3b1
a2a
53a
325
602
767
a13
3f8
252
985
392
83d
c92
1fc
3b2
237
076
5d9
39c
4a2
90a
98a
62a
230
c1f
138
a60
9b3
256
6b4
611
796
3e3
7c7
43f
a03
cd1
b72
633
212
453
a8a
aab
301
659
9d4
158
bd6
4f2
130
bca
9ee
333
94c
95f
69f
8e1
b0b
af6
163
9c5
8d2
4c5

Some files were not shown because too many files have changed in this diff Show More