Add Hard-Coded Checkpoint Lists (#674)
* Add checkpoint list generation scripts * Limit the checkpoint block data size * Limit the checkpoint height gap * Add Mainnet and Testnet checkpoint lists * Parse hard-coded checkpoint lists The lists were generated using the following limits: - 256 MB spacing, based on block byte size, and - 2000 blocks.
This commit is contained in:
parent
474de52e5c
commit
1b0c0f027f
|
|
@ -20,6 +20,21 @@ pub mod amount;
|
|||
#[derive(Copy, Clone, Debug, Eq, PartialEq, PartialOrd, Ord, Hash, Serialize, Deserialize)]
|
||||
pub struct BlockHeight(pub u32);
|
||||
|
||||
impl std::str::FromStr for BlockHeight {
|
||||
type Err = SerializationError;
|
||||
fn from_str(s: &str) -> Result<Self, Self::Err> {
|
||||
match s.parse() {
|
||||
Ok(h) if (BlockHeight(h) <= BlockHeight::MAX) => Ok(BlockHeight(h)),
|
||||
Ok(_) => Err(SerializationError::Parse(
|
||||
"BlockHeight exceeds maximum height",
|
||||
)),
|
||||
Err(_) => Err(SerializationError::Parse(
|
||||
"BlockHeight(u32) integer parse error",
|
||||
)),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
impl Arbitrary for BlockHeight {
|
||||
type Parameters = ();
|
||||
|
|
|
|||
|
|
@ -110,28 +110,52 @@ struct CheckpointVerifier {
|
|||
///
|
||||
/// Contains non-service utility functions for CheckpointVerifiers.
|
||||
impl CheckpointVerifier {
|
||||
/// Return a checkpoint verification service for `network`, using
|
||||
/// `checkpoint_list`.
|
||||
/// Return a checkpoint verification service for `network`, using the
|
||||
/// hard-coded checkpoint list.
|
||||
///
|
||||
/// This function should be called only once for a particular checkpoint list (and
|
||||
/// network), rather than constructing multiple verification services based on the
|
||||
/// same checkpoint list. To Clone a CheckpointVerifier, you might need to wrap it
|
||||
/// in a `tower::Buffer` service.
|
||||
/// This function should be called only once for a particular network, rather
|
||||
/// than constructing multiple verification services for the same network. To
|
||||
/// Clone a CheckpointVerifier, you might need to wrap it in a
|
||||
/// `tower::Buffer` service.
|
||||
//
|
||||
// Avoid some dead code lints.
|
||||
// Until we implement the overall verifier in #516, this function, and some of the
|
||||
// functions and enum variants it uses, are only used in the tests.
|
||||
#[allow(dead_code)]
|
||||
fn new(
|
||||
network: Network,
|
||||
checkpoint_list: impl IntoIterator<Item = (BlockHeight, BlockHeaderHash)>,
|
||||
pub fn new(network: Network) -> Result<Self, Error> {
|
||||
Ok(Self::from_checkpoint_list(CheckpointList::new(network)?))
|
||||
}
|
||||
|
||||
/// Return a checkpoint verification service using `list`.
|
||||
///
|
||||
/// Assumes that the provided genesis checkpoint is correct.
|
||||
///
|
||||
/// See `CheckpointVerifier::new` and `CheckpointList::from_list` for more
|
||||
/// details.
|
||||
//
|
||||
// Avoid some dead code lints.
|
||||
// Until we implement the overall verifier in #516, this function, and some of the
|
||||
// functions and enum variants it uses, are only used in the tests.
|
||||
#[allow(dead_code)]
|
||||
pub(crate) fn from_list(
|
||||
list: impl IntoIterator<Item = (BlockHeight, BlockHeaderHash)>,
|
||||
) -> Result<Self, Error> {
|
||||
Ok(CheckpointVerifier {
|
||||
checkpoint_list: CheckpointList::new(network, checkpoint_list)?,
|
||||
Ok(Self::from_checkpoint_list(CheckpointList::from_list(list)?))
|
||||
}
|
||||
|
||||
/// Return a checkpoint verification service using `checkpoint_list`.
|
||||
///
|
||||
/// See `CheckpointVerifier::new` and `CheckpointList::from_list` for more
|
||||
/// details.
|
||||
pub(crate) fn from_checkpoint_list(checkpoint_list: CheckpointList) -> Self {
|
||||
// All the initialisers should call this function, so we only have to
|
||||
// change fields or default values in one place.
|
||||
CheckpointVerifier {
|
||||
checkpoint_list,
|
||||
queued: BTreeMap::new(),
|
||||
// We start by verifying the genesis block, by itself
|
||||
verifier_progress: Progress::BeforeGenesis,
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
/// Return the current verifier's progress.
|
||||
|
|
|
|||
|
|
@ -11,11 +11,15 @@ use std::{
|
|||
collections::{BTreeMap, HashSet},
|
||||
error,
|
||||
ops::RangeBounds,
|
||||
str::FromStr,
|
||||
};
|
||||
|
||||
use zebra_chain::block::BlockHeaderHash;
|
||||
use zebra_chain::types::BlockHeight;
|
||||
use zebra_chain::Network;
|
||||
use zebra_chain::Network::{self, *};
|
||||
|
||||
const MAINNET_CHECKPOINTS: &str = include_str!("main-checkpoints.txt");
|
||||
const TESTNET_CHECKPOINTS: &str = include_str!("test-checkpoints.txt");
|
||||
|
||||
/// The inner error type for CheckpointVerifier.
|
||||
// TODO(jlusby): Error = Report ?
|
||||
|
|
@ -30,21 +34,60 @@ type Error = Box<dyn error::Error + Send + Sync + 'static>;
|
|||
#[derive(Debug)]
|
||||
pub struct CheckpointList(BTreeMap<BlockHeight, BlockHeaderHash>);
|
||||
|
||||
impl FromStr for CheckpointList {
|
||||
type Err = Error;
|
||||
|
||||
/// Parse a string into a CheckpointList.
|
||||
///
|
||||
/// Each line has one checkpoint, consisting of a `BlockHeight` and
|
||||
/// `BlockHeaderHash`, separated by a single space.
|
||||
///
|
||||
/// Assumes that the provided genesis checkpoint is correct.
|
||||
fn from_str(s: &str) -> Result<Self, Self::Err> {
|
||||
let mut checkpoint_list: Vec<(BlockHeight, BlockHeaderHash)> = Vec::new();
|
||||
|
||||
for checkpoint in s.lines() {
|
||||
let fields = checkpoint.split(' ').collect::<Vec<_>>();
|
||||
if let [height, hash] = fields[..] {
|
||||
checkpoint_list.push((height.parse()?, hash.parse()?));
|
||||
} else {
|
||||
Err(format!("Invalid checkpoint format: expected 2 space-separated fields but found {}: '{}'", fields.len(), checkpoint))?;
|
||||
};
|
||||
}
|
||||
|
||||
Ok(CheckpointList::from_list(checkpoint_list)?)
|
||||
}
|
||||
}
|
||||
|
||||
impl CheckpointList {
|
||||
/// Returns the hard-coded checkpoint list for `network`.
|
||||
pub fn new(network: Network) -> Result<Self, Error> {
|
||||
// parse calls CheckpointList::from_list
|
||||
let checkpoint_list: CheckpointList = match network {
|
||||
Mainnet => MAINNET_CHECKPOINTS.parse()?,
|
||||
Testnet => TESTNET_CHECKPOINTS.parse()?,
|
||||
};
|
||||
|
||||
match checkpoint_list.hash(BlockHeight(0)) {
|
||||
Some(hash) if hash == parameters::genesis_hash(network) => Ok(checkpoint_list),
|
||||
Some(_) => Err("the genesis checkpoint does not match the network genesis hash")?,
|
||||
None => unreachable!("Parser should have checked for a missing genesis checkpoint"),
|
||||
}
|
||||
}
|
||||
|
||||
/// Create a new checkpoint list for `network` from `checkpoint_list`.
|
||||
///
|
||||
/// Checkpoint heights and checkpoint hashes must be unique.
|
||||
/// Assumes that the provided genesis checkpoint is correct.
|
||||
///
|
||||
/// There must be a checkpoint for the genesis block at BlockHeight 0.
|
||||
/// Checkpoint heights and checkpoint hashes must be unique.
|
||||
/// There must be a checkpoint for a genesis block at BlockHeight 0.
|
||||
/// (All other checkpoints are optional.)
|
||||
pub fn new(
|
||||
network: Network,
|
||||
checkpoint_list: impl IntoIterator<Item = (BlockHeight, BlockHeaderHash)>,
|
||||
pub(crate) fn from_list(
|
||||
list: impl IntoIterator<Item = (BlockHeight, BlockHeaderHash)>,
|
||||
) -> Result<Self, Error> {
|
||||
// BTreeMap silently ignores duplicates, so we count the checkpoints
|
||||
// before adding them to the map
|
||||
let original_checkpoints: Vec<(BlockHeight, BlockHeaderHash)> =
|
||||
checkpoint_list.into_iter().collect();
|
||||
let original_checkpoints: Vec<(BlockHeight, BlockHeaderHash)> = list.into_iter().collect();
|
||||
let original_len = original_checkpoints.len();
|
||||
|
||||
let checkpoints: BTreeMap<BlockHeight, BlockHeaderHash> =
|
||||
|
|
@ -52,9 +95,11 @@ impl CheckpointList {
|
|||
|
||||
// Check that the list starts with the correct genesis block
|
||||
match checkpoints.iter().next() {
|
||||
Some((BlockHeight(0), h)) if h == ¶meters::genesis_hash(network) => {}
|
||||
Some((BlockHeight(0), hash))
|
||||
if (hash == ¶meters::genesis_hash(Mainnet)
|
||||
|| hash == ¶meters::genesis_hash(Testnet)) => {}
|
||||
Some((BlockHeight(0), _)) => {
|
||||
Err("the genesis checkpoint does not match the network genesis hash")?
|
||||
Err("the genesis checkpoint does not match the Mainnet or Testnet genesis hash")?
|
||||
}
|
||||
Some(_) => Err("checkpoints must start at the genesis block height 0")?,
|
||||
None => Err("there must be at least one checkpoint, for the genesis block")?,
|
||||
|
|
@ -124,12 +169,13 @@ mod tests {
|
|||
|
||||
use std::sync::Arc;
|
||||
|
||||
use zebra_chain::Network::*;
|
||||
use zebra_chain::{block::Block, serialization::ZcashDeserialize};
|
||||
|
||||
/// Make a checkpoint list containing only the genesis block
|
||||
#[test]
|
||||
fn checkpoint_list_genesis() -> Result<(), Error> {
|
||||
zebra_test::init();
|
||||
|
||||
// Parse the genesis block
|
||||
let mut checkpoint_data = Vec::new();
|
||||
let block =
|
||||
|
|
@ -143,7 +189,7 @@ mod tests {
|
|||
// Make a checkpoint list containing the genesis block
|
||||
let checkpoint_list: BTreeMap<BlockHeight, BlockHeaderHash> =
|
||||
checkpoint_data.iter().cloned().collect();
|
||||
let _ = CheckpointList::new(Mainnet, checkpoint_list)?;
|
||||
let _ = CheckpointList::from_list(checkpoint_list)?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
|
@ -151,6 +197,8 @@ mod tests {
|
|||
/// Make a checkpoint list containing multiple blocks
|
||||
#[test]
|
||||
fn checkpoint_list_multiple() -> Result<(), Error> {
|
||||
zebra_test::init();
|
||||
|
||||
// Parse all the blocks
|
||||
let mut checkpoint_data = Vec::new();
|
||||
for b in &[
|
||||
|
|
@ -170,7 +218,7 @@ mod tests {
|
|||
// Make a checkpoint list containing all the blocks
|
||||
let checkpoint_list: BTreeMap<BlockHeight, BlockHeaderHash> =
|
||||
checkpoint_data.iter().cloned().collect();
|
||||
let _ = CheckpointList::new(Mainnet, checkpoint_list)?;
|
||||
let _ = CheckpointList::from_list(checkpoint_list)?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
|
@ -178,8 +226,10 @@ mod tests {
|
|||
/// Make sure that an empty checkpoint list fails
|
||||
#[test]
|
||||
fn checkpoint_list_empty_fail() -> Result<(), Error> {
|
||||
let _ = CheckpointList::new(Mainnet, Vec::new())
|
||||
.expect_err("empty checkpoint lists should fail");
|
||||
zebra_test::init();
|
||||
|
||||
let _ =
|
||||
CheckpointList::from_list(Vec::new()).expect_err("empty checkpoint lists should fail");
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
|
@ -187,6 +237,8 @@ mod tests {
|
|||
/// Make sure a checkpoint list that doesn't contain the genesis block fails
|
||||
#[test]
|
||||
fn checkpoint_list_no_genesis_fail() -> Result<(), Error> {
|
||||
zebra_test::init();
|
||||
|
||||
// Parse a non-genesis block
|
||||
let mut checkpoint_data = Vec::new();
|
||||
let block =
|
||||
|
|
@ -200,44 +252,23 @@ mod tests {
|
|||
// Make a checkpoint list containing the non-genesis block
|
||||
let checkpoint_list: BTreeMap<BlockHeight, BlockHeaderHash> =
|
||||
checkpoint_data.iter().cloned().collect();
|
||||
let _ = CheckpointList::new(Mainnet, checkpoint_list)
|
||||
let _ = CheckpointList::from_list(checkpoint_list)
|
||||
.expect_err("a checkpoint list with no genesis block should fail");
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
/// Make sure that a checkpoint list for the wrong network fails
|
||||
#[test]
|
||||
fn checkpoint_list_wrong_net_fail() -> Result<(), Error> {
|
||||
// Parse the mainnet genesis block
|
||||
let mut checkpoint_data = Vec::new();
|
||||
let block =
|
||||
Arc::<Block>::zcash_deserialize(&zebra_test::vectors::BLOCK_MAINNET_GENESIS_BYTES[..])?;
|
||||
let hash: BlockHeaderHash = block.as_ref().into();
|
||||
checkpoint_data.push((
|
||||
block.coinbase_height().expect("test block has height"),
|
||||
hash,
|
||||
));
|
||||
|
||||
// Make a checkpoint list containing the mainnet genesis block
|
||||
let checkpoint_list: BTreeMap<BlockHeight, BlockHeaderHash> =
|
||||
checkpoint_data.iter().cloned().collect();
|
||||
// But use the test network
|
||||
let _ = CheckpointList::new(Testnet, checkpoint_list)
|
||||
.expect_err("a checkpoint list for the wrong network should fail");
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
/// Make sure a checkpoint list that contains a null hash fails
|
||||
#[test]
|
||||
fn checkpoint_list_null_hash_fail() -> Result<(), Error> {
|
||||
zebra_test::init();
|
||||
|
||||
let checkpoint_data = vec![(BlockHeight(0), BlockHeaderHash([0; 32]))];
|
||||
|
||||
// Make a checkpoint list containing the non-genesis block
|
||||
let checkpoint_list: BTreeMap<BlockHeight, BlockHeaderHash> =
|
||||
checkpoint_data.iter().cloned().collect();
|
||||
let _ = CheckpointList::new(Mainnet, checkpoint_list)
|
||||
let _ = CheckpointList::from_list(checkpoint_list)
|
||||
.expect_err("a checkpoint list with a null block hash should fail");
|
||||
|
||||
Ok(())
|
||||
|
|
@ -246,6 +277,8 @@ mod tests {
|
|||
/// Make sure a checkpoint list that contains an invalid block height fails
|
||||
#[test]
|
||||
fn checkpoint_list_bad_height_fail() -> Result<(), Error> {
|
||||
zebra_test::init();
|
||||
|
||||
let checkpoint_data = vec![(
|
||||
BlockHeight(BlockHeight::MAX.0 + 1),
|
||||
BlockHeaderHash([1; 32]),
|
||||
|
|
@ -254,7 +287,7 @@ mod tests {
|
|||
// Make a checkpoint list containing the non-genesis block
|
||||
let checkpoint_list: BTreeMap<BlockHeight, BlockHeaderHash> =
|
||||
checkpoint_data.iter().cloned().collect();
|
||||
let _ = CheckpointList::new(Mainnet, checkpoint_list).expect_err(
|
||||
let _ = CheckpointList::from_list(checkpoint_list).expect_err(
|
||||
"a checkpoint list with an invalid block height (BlockHeight::MAX + 1) should fail",
|
||||
);
|
||||
|
||||
|
|
@ -263,7 +296,7 @@ mod tests {
|
|||
// Make a checkpoint list containing the non-genesis block
|
||||
let checkpoint_list: BTreeMap<BlockHeight, BlockHeaderHash> =
|
||||
checkpoint_data.iter().cloned().collect();
|
||||
let _ = CheckpointList::new(Mainnet, checkpoint_list)
|
||||
let _ = CheckpointList::from_list(checkpoint_list)
|
||||
.expect_err("a checkpoint list with an invalid block height (u32::MAX) should fail");
|
||||
|
||||
Ok(())
|
||||
|
|
@ -272,6 +305,8 @@ mod tests {
|
|||
/// Make sure that a checkpoint list containing duplicate blocks fails
|
||||
#[test]
|
||||
fn checkpoint_list_duplicate_blocks_fail() -> Result<(), Error> {
|
||||
zebra_test::init();
|
||||
|
||||
// Parse some blocks twice
|
||||
let mut checkpoint_data = Vec::new();
|
||||
for b in &[
|
||||
|
|
@ -288,7 +323,7 @@ mod tests {
|
|||
}
|
||||
|
||||
// Make a checkpoint list containing some duplicate blocks
|
||||
let _ = CheckpointList::new(Mainnet, checkpoint_data)
|
||||
let _ = CheckpointList::from_list(checkpoint_data)
|
||||
.expect_err("checkpoint lists with duplicate blocks should fail");
|
||||
|
||||
Ok(())
|
||||
|
|
@ -298,6 +333,8 @@ mod tests {
|
|||
/// (with different hashes) fails
|
||||
#[test]
|
||||
fn checkpoint_list_duplicate_heights_fail() -> Result<(), Error> {
|
||||
zebra_test::init();
|
||||
|
||||
// Parse the genesis block
|
||||
let mut checkpoint_data = Vec::new();
|
||||
for b in &[&zebra_test::vectors::BLOCK_MAINNET_GENESIS_BYTES[..]] {
|
||||
|
|
@ -314,7 +351,7 @@ mod tests {
|
|||
checkpoint_data.push((BlockHeight(1), BlockHeaderHash([0xbb; 32])));
|
||||
|
||||
// Make a checkpoint list containing some duplicate blocks
|
||||
let _ = CheckpointList::new(Mainnet, checkpoint_data)
|
||||
let _ = CheckpointList::from_list(checkpoint_data)
|
||||
.expect_err("checkpoint lists with duplicate heights should fail");
|
||||
|
||||
Ok(())
|
||||
|
|
@ -324,6 +361,8 @@ mod tests {
|
|||
/// (at different heights) fails
|
||||
#[test]
|
||||
fn checkpoint_list_duplicate_hashes_fail() -> Result<(), Error> {
|
||||
zebra_test::init();
|
||||
|
||||
// Parse the genesis block
|
||||
let mut checkpoint_data = Vec::new();
|
||||
for b in &[&zebra_test::vectors::BLOCK_MAINNET_GENESIS_BYTES[..]] {
|
||||
|
|
@ -340,9 +379,27 @@ mod tests {
|
|||
checkpoint_data.push((BlockHeight(2), BlockHeaderHash([0xcc; 32])));
|
||||
|
||||
// Make a checkpoint list containing some duplicate blocks
|
||||
let _ = CheckpointList::new(Mainnet, checkpoint_data)
|
||||
let _ = CheckpointList::from_list(checkpoint_data)
|
||||
.expect_err("checkpoint lists with duplicate hashes should fail");
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
/// Parse the hard-coded Mainnet and Testnet lists
|
||||
#[test]
|
||||
fn checkpoint_list_hard_coded() -> Result<(), Error> {
|
||||
zebra_test::init();
|
||||
|
||||
let _: CheckpointList = MAINNET_CHECKPOINTS
|
||||
.parse()
|
||||
.expect("hard-coded Mainnet checkpoint list should parse");
|
||||
let _: CheckpointList = TESTNET_CHECKPOINTS
|
||||
.parse()
|
||||
.expect("hard-coded Testnet checkpoint list should parse");
|
||||
|
||||
let _ = CheckpointList::new(Mainnet);
|
||||
let _ = CheckpointList::new(Testnet);
|
||||
|
||||
Ok(())
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,456 @@
|
|||
0 08ce3d9731b000c08338455c8a4a6bd05da16e26b11daa1b917184ece80f0400
|
||||
2000 8c388b125a9612ebea9c70a5acc57d2f94d633faaf0ece2cec81339406000000
|
||||
4000 c6504df5ff490ca933ed6d1dd9127bcc005b7f9418d057fab9a3770001000000
|
||||
6000 f8e6ead5c80244ef07d46948594a490ba5b46e928e4ab705b2e92c4c02000000
|
||||
8000 8cea66dd675c22331fd0eeaece3a4c3f40464e9eb2777bee22114bb000000000
|
||||
10000 c95a6d16c023b41ec0e903701b8edb09037eab7b54aeacb0ba63202c00000000
|
||||
12000 58b66729c3f4d7a0c25b0143d8f5de984299a8ea1ff01b56871bcc6700000000
|
||||
14000 3acad06405ef5ea8ddb27929bb3e6870fb81b82d280097c8fbd3b9c000000000
|
||||
16000 425fe2a45fa7db1f88622bebf4bb1fb2097c64e8c85a30167c44500f01000000
|
||||
18000 cd3800234c56d8813259d12ee85e8e7239a07311e8cff0a5cc1f164b00000000
|
||||
20000 08988d4ecb187f75ba0cc8fe68a7c57953d972367166a3d1442ad15800000000
|
||||
22000 d544e5711eb4497de1f0deb9eaa10571c2c86344a0266df770c4993800000000
|
||||
24000 10587b1a9bae6ab54561b8783bbcd7f0212df3078ea3371973fbd83700000000
|
||||
26000 b092c5e4b430ff8e5b2b39ba73ab70114c685beb8d65f03b8961e70400000000
|
||||
28000 9ba9526d509d1d14d0a4dc19a628ee954221f553b990b1f03401880800000000
|
||||
30000 219e674131a4762dab348c4e4792f5fc30b72fb41001aeed3c90d57c00000000
|
||||
32000 1fe237ff616a1543937bd0e95934d707037b0625bf24934b0f467ba600000000
|
||||
34000 54883f2d5b7c4c3dc4666229ce4b49adeddf150ba5aff5cef203167700000000
|
||||
36000 e4cff04acf045b14b717e96572c4fe67a6eab0967760286c30710e4200000000
|
||||
38000 63ca4885024f748fa56c3851d3ad7eae15bea71300dbe2c24c62692200000000
|
||||
40000 d477ffed1c2870fcf36dbcdcf21e393815d74069f488c1d0cd371e5a00000000
|
||||
42000 5c09983ef4668d748390414869f94b81761d8aaa4b6e80b7b7694a5000000000
|
||||
44000 33a8c331d9cfb0363b6f9cfb4ed82a8e5072899903f8f2a35b4d030900000000
|
||||
46000 96327ef0ffef861cc5862adaef41bf8603e4f83329deb7c644cd1f0d00000000
|
||||
48000 567ab94f72912e03cdcca8c56f10ee474be58342222ffec5b4c0d86800000000
|
||||
50000 63b46852d0dd59d94701c03d3f76a7cbd8be4873c1c9e978de650b0800000000
|
||||
52000 87cca471013a50c885e1f913959442b748a161e7857c5e90ad1eb55900000000
|
||||
54000 5381a03701edbf6a8f6872df3575563ea4f41c5a013983c1036c728100000000
|
||||
56000 d85373ba68f0cb6d5d718c89537241eb8d2b40add956b02e0beace4e00000000
|
||||
58000 8f5105e79a1c194f9db61712145872762eaf0de4f4133c0d595a456700000000
|
||||
60000 b66e95cbf7b05ad2981ff5eea999cd756a8ff1075851f968e011b84000000000
|
||||
62000 83c9e091df2b3668f95da5bbd53cd6680223478450d9769c02068f0f00000000
|
||||
64000 fea3d4649cd9459aa92aeacadae1713d6a9479d7d62c5607b2211d4b00000000
|
||||
66000 e56908d158ae8fc1c92fa9b33bfc83a5dd33962fb8959a4b1e509c8500000000
|
||||
68000 0b3fc240fbffc1ba7471e64a8f7bd86f8a7c0aa723fb16c0b501627100000000
|
||||
70000 6bcc4d0c3dfe356c74921c7947b614768077fd9988d185943b17293d00000000
|
||||
72000 7015f8d4d7612f20872f9eee929edb217f35cdfba6dbc6ef4c803ea100000000
|
||||
74000 433e439bf224b7d78c087ab8eec2bde5b99cf5ef36ce03999b79488600000000
|
||||
76000 2ef16c0f5386c67890e2f34f4057cf664cc1b0d0a2a2055b50a2226800000000
|
||||
78000 9d9cd2d8a387ceb315b6d2a8f7c4d79364acd2d9aed554f99a98c74500000000
|
||||
80000 d021b2c5b9768bb5c1c43b140442a695eb87ec0be48c497efc133b8b00000000
|
||||
82000 f22f806a75101de55e05fa6dacf0f82daa093afc39045504fd29124200000000
|
||||
84000 48f6f9275ace0c568f346c745011c96be14c2ef3ab828751830b7c4900000000
|
||||
86000 5e3a16d39c98c4d08fc87b54d7d3d878096d5950dda31c7549a9cd3800000000
|
||||
88000 1805d435d854625555a0dc119ec18fc9567a4ebc1adfb3f636f63a7000000000
|
||||
90000 f737924c4dd726a9e2b0667b5324e3ac65cf857c76b6dc8e9225e85700000000
|
||||
92000 6cce23263d3818b92709ff9eef923e5ed632eba83ad1a05be51af43c00000000
|
||||
94000 7d52795aff04e6f6af277eee03c9c2183bcaffa14d228e104d37614c00000000
|
||||
96000 2146281ab269764db82e9540d35fe1342311ca0a4590649589a2692d00000000
|
||||
98000 3cc1987de4dba7e7654c93ed187d9d7a7f0ddcc741ac27f9f373337200000000
|
||||
100000 85b20e613c259a7ac3a27fe1edd550fd30389e87c0cfac6bcd825c1c00000000
|
||||
102000 671291748cb995fdce8e917b7a0758137e706ffafa7d13571e02ff6400000000
|
||||
104000 0c02727c59fd6ad1f8e2807e82b379419d4bb257be821cf88ee57d1400000000
|
||||
106000 dbe5acb6c7ab1014bd136dd947c0d2e5d9e9595f796942b3d794785100000000
|
||||
106580 1b4076b5a0d8bc22ad855bc7663c2515362541c6f1b8b43abb30694600000000
|
||||
107063 01cb2903af5a93ba1c1f405ad10e4e9dcf5599b9afaa400cffbf3b0000000000
|
||||
107440 b1c816c94e924108e13a6aafc35b7a1d8efe3e0c4e3bd57a3716bd4d00000000
|
||||
107838 17a97c2b48a89c2a63370027a1b0d45976437f346e9d81893d07d86500000000
|
||||
108448 7b66d3c0131449f1fca83139eb62286b08a383e44eaff087fdd7976100000000
|
||||
110448 11fcefa5add5922a5f158bb03d2d2288c11997033216efe2b759fc2900000000
|
||||
112448 32b519954e834209ca3739a44e5d803e5d0c5104b9122d9f7b41ed3b00000000
|
||||
114448 805858529af290c63229bf262ec8fbea93d4542b427138d41c38040a00000000
|
||||
116448 9e7ab06a4ea7ff6e3394fd22e23a06eb3ba9b84597dc786aa4ba952700000000
|
||||
118448 01a8d62dbb0196e1601bc23969f6bdae0d11c84ae4fd3630ae92573200000000
|
||||
120448 e3a8014f154ee464849dda9eee3a2d0763471cc201dfb09d78d0251500000000
|
||||
122448 dd7779b41e4e2f6b306575170737daf920a90e09c7eeb3b2e082271900000000
|
||||
124448 def68d45d346d4085fd8b60e9e795b0768b1ce81352d8a531be89e1b00000000
|
||||
126448 0bf155f9ca32e5e74f5240014cfc0178f4052ec45a59dc9e9bddd41300000000
|
||||
128448 f0b63da3a01cf408ad5ce1491e6ad4f2b9b587db8232dcfac31e5e2c00000000
|
||||
130448 3dca80a2516eb8a2e922abd0752eea83b14a04b27d959a97563b420500000000
|
||||
132448 a900bd44108ca38e10896dd09cef7a2056c836abc8bde2905eb58c3300000000
|
||||
134448 a6bfce3c7a2b9e3b3bdac4f1839f252ba305e5d4b9cb93a45b651b2a00000000
|
||||
136448 c3b086bb8718d2bad3f6009c74eee331de87a9e99c31fdcc021b520300000000
|
||||
138448 d24112c2fba27696da4afe9b6b8da23899898bf706974734248ccf0d00000000
|
||||
140448 7b9f2584f792d4f7ac2e69ecb86b97389b1698ceac3134fc3e9cff1600000000
|
||||
142448 52af74b024c7fa58247c79b5c539f0e826a1e344b5141fb25521e70f00000000
|
||||
144448 945cb1100ccb3574a89790f92f021825f72145f13f28b10365909b1a00000000
|
||||
146448 571433b3804516f094a144e4d2acfa83aa19a02c305c3132b715fe1600000000
|
||||
148448 5efbbf06c42cd16d6cd7f7e18813fa7ec6b13ca5a95b5fbdf45a4e1900000000
|
||||
150448 3db356ce85a7de72eed01b933195602d248a4936c032a4e5328d531800000000
|
||||
152448 847c78a37fdc061be5fd36cd09301d185c71116db28c0d2b854f190600000000
|
||||
154448 ecfce4d5afccdf2c74fc67ffbd054b1bb917a59021f1b53f7a01780a00000000
|
||||
156448 886a1dbf8c3efb85210d7fdd8bf9ada7906b9f77018bd1172b746b1a00000000
|
||||
158448 043eab2f85d9cfbd4f467a45dcbc55db2f33fd2896dfd4dedddfa31900000000
|
||||
160448 115294111d9da6268191c6d11b4e32535cbe88e7f4d5b649dce4650000000000
|
||||
162448 36b48dd3bff4eea3a685c622612099207cb93f9b500fe0afc0c0740f00000000
|
||||
164448 d59621281a108d311c678c6d3bdd927c8f1a8e8c01f7bd3f3a3b370400000000
|
||||
166448 23b464c967f3715932af11035d0bbcc8bce4ea05d3943c8e619f900300000000
|
||||
168448 07fcf306984826b1801ead650ca43b101e1998510f96c2b6412f821100000000
|
||||
170448 442ffb07a08fd7fbf6aab486e6ffa7f5637a3c25daef42c071fbe91800000000
|
||||
172448 914503836529934adf98db3f6767afabcdd4fe7f86b62cad376dc81300000000
|
||||
174448 a1e1399fbd187a6587076967b4608cd9dab05ae09fd26ea0fcf86e1700000000
|
||||
176448 c80393cb1112c236a255eae9b5468488dfa7d8bb9e44c909f930b91500000000
|
||||
178448 2d8f082d52f9a7e2a200b777eac4fd047dd2edb21979e4ec968e610600000000
|
||||
180448 5f41bc628a7f857bbc1eb7707934a2221fca3510f370cd8e9562a20100000000
|
||||
182448 8b8a89938bbb44815e2fe7df6f9f0c376bcc2b80dc77b7a02c8aa20600000000
|
||||
184448 dc4938c1f06c75184fa4ecc533719888f9b0137d0440b66e3f4db41300000000
|
||||
186448 d0fcfba67964133417ab30329a2903178b93639f1c3f71933cc8dc0800000000
|
||||
188448 7cbd43475cf0f0e87e900dfe7c650983396db6f94cc3ef6d071e140b00000000
|
||||
190448 821af7a4242943d647830a437df13b72b1587fa467e6ec874a17dd0600000000
|
||||
192448 af507a3f13ce86ef4a074a1db2e5b602da11824382ead8c3b496d90600000000
|
||||
194448 da610d0e44516421a4deb63d7bfd298fc5cf3339433bfadc255f650f00000000
|
||||
196448 8bb666474a287d4dd54b16b5079d9b847a5656ef8dfb0f19c1ba6c0100000000
|
||||
198448 03d88a0019cddfe2cccfff3ebda7bbb158099ef8f8edf8d3361a5f0900000000
|
||||
200448 266897da8c4c47a8151ba674f6b27406064624f96f804a4e10a0f80200000000
|
||||
202448 cd18860140f18e57a55a55245788ad3e77032bf42cdd22f61050af0b00000000
|
||||
204448 2c20d51b23e7e0b54f7a5f05fa1467b35b4f168911ca209a4206f40000000000
|
||||
206448 14c803e2cbfb14ca0b745d475d57fbc30091ad8e2fddad3a1b83b01000000000
|
||||
208448 187060238427a832cacc234ce335745e805cecaebc9299ca06cd871400000000
|
||||
210448 8578c355c81f278621e5eabb13f548bd1043fe6341ddfc573d47fd0f00000000
|
||||
212448 6b6582b98b51250b406edf8ced42f7233fe423a8df1c5919fbd3331600000000
|
||||
214448 87ca3697a45e0a1a7a34d7b7060070b21f0c84401f0aecddfc482e0d00000000
|
||||
216448 9cd0431104ef1b149b10f1af39c3f63208d9fd7d9fe4a7037bd6fb1000000000
|
||||
218448 e21540e44333d95cc193c7c24744cddab80bf3d7acc7c8654899e10f00000000
|
||||
220448 f7c3460a9eca4bb0fa63a54ee789b0e0a69f111a8d4ea53f4595a60e00000000
|
||||
222448 9f35f996f7e34817859d0b84f9471f5c409366d24b7ea78cfcdea50e00000000
|
||||
224448 cf07d11cf56a8db84e4691dc7a2cfa3a78019cd649893705540c050300000000
|
||||
226448 6a21d71d9ce4fdea792e72b8e360fc087e8b8f7fc92ae0072e782e0b00000000
|
||||
228448 47974b2b2106a385e2d3d128e4d8a97205c1ae8ba09cf78e4188c90e00000000
|
||||
230448 f69fcc5a158b80f63e35541919dfb145f4da98c5efe66b6d5e384d0100000000
|
||||
232448 3437f8cd6b13eeef37eb39f41102d59e955b9ddbf775aa14af84410e00000000
|
||||
234448 c03bc42ecdd009cddb5a5fe1fee5f55f5c302eb711653673d0bcd70f00000000
|
||||
236448 942b9ac9aa8a548708014b961f27ce5c5c6971d2be60f116107b470500000000
|
||||
238448 1fa52e4e2f4f30aa4b67781c42333913a0263614e8ebb19b95758e0800000000
|
||||
240448 273d337b1b066b32c00e0c4412d0e83843f93f9f97e0c9fa34a21c0100000000
|
||||
242448 ebeeab9b924e2a295031d565f81ddfe6ac0a887b632fc686a093850d00000000
|
||||
244448 111210b300595d7518f9d26021363f353a9971c7c97f476aa626d61200000000
|
||||
246448 88a1279230125c6707caac340c54fce491bcac845510ed256a7b660400000000
|
||||
248448 2a41aa5891ebcb5a4e89f0e0a82d386d528b52576831914504c3250d00000000
|
||||
250448 4b44c017f4e3b18537f37879d3fb74259b31d0085dc1c35ed203760600000000
|
||||
252448 722f9e57b096be502d550c443f79ca1a130ad3c4eabca686b41b301100000000
|
||||
254448 f58261b863eb03a04955c99189f787599f69166bae736b74187b7a1200000000
|
||||
256448 3b6b310170c7ffc6d79208bc47cdf5f5a8137c565a1e450342906d0600000000
|
||||
258448 987b850bf81ad99972dd93ba86353e835e93c8ef7a0ff25673607d0100000000
|
||||
260448 a8b74fff2ea08198c9548c4f8e9d637cf3b7474852700d028d2f030000000000
|
||||
262448 07e896b6b5b1a769116f6226a652a1725a5641836450897c79ba9f0600000000
|
||||
264448 46ab2ea660827ea9336f3a1fbfb89d910662528f54bbec549dc2b40100000000
|
||||
266448 33aa7ef6d4536c5100e50dfa4feb406ff5f6a5fb704528e4be0e8e1000000000
|
||||
268448 b9309b66ac7d55b8d17a60ff4eb2965ea4752110de03c8673942a70400000000
|
||||
270448 6fa803d527b4b67e8a587bf080a3929f042d2682ed63d994fdc78f0f00000000
|
||||
272448 fc08956db487607282a660767e6f5abe093218a6e94cc31c2beadc0b00000000
|
||||
274448 ec0547b6f15b3c561ef9d45345653f27f81a60ecaef13214724a700900000000
|
||||
276448 cd4d5174e79f738a6b550bd73f55b32065ae51162b4f81a4db07c20400000000
|
||||
278448 b3d97ffaa212256257b3d8a3912c15acc434ded9eec58f281feec50700000000
|
||||
280448 5039e7ed79182c0fe3d1c92e061ddb7bbadd749232bc73dcbb82450500000000
|
||||
282448 677f48d353ff580b9f1a4ca3dac6398246c396c88f84df360d3b020e00000000
|
||||
284448 7bf3ca431c2edeb8a7e061ddb3d27faa65850db823bcb3f7b118e80a00000000
|
||||
286448 26598d156cc591e6117ddafcba511878ccfa4a02462a1a3c08788b0300000000
|
||||
288448 73646479dd391c43331e070a1a2fb047fb4d8040b2d652ed70c8b60500000000
|
||||
290448 b83ddaeb8a7d8a210722319043e1db305b505aa2836cf1427613f00b00000000
|
||||
292448 e73ecbc065b927222cb2f585c14ec530e6980ecc5a0cb1df7ffcbc0600000000
|
||||
294448 31cf812ffdf140b15b8007556b9427342dd84b52b083b4879edb5c0300000000
|
||||
296448 18026f2eece0c867707766ad74f773a89665f2c8b72828f66688930100000000
|
||||
298448 7efa66fcd3902989ee56e644c60c783d699107e1530414fecf36f50100000000
|
||||
300448 9dc047572879c6d840f61b3266e15a38fe171db42202e93a620fc30800000000
|
||||
302448 f18773b0badffbff38cd102710675a90d6f953b7e8b1359f6a58360800000000
|
||||
304448 c39a524478d796807a58b6c8d28408525a39545c9782e8f0d9820d0700000000
|
||||
306448 58a1bd7f28d97f3cb271c7030915d7fd22cfb048173eb40e2adfc60800000000
|
||||
308448 6274a2dabb531cfd28837db73ae4fe8045de36756072e44fb746450800000000
|
||||
310448 68535999963746c7e40501c5df558f2b517d75c81493d4a00ed0df0400000000
|
||||
312448 c6b8ecd09c29d1b830fe9682be7271a9090ea84c543108bcd7b7450b00000000
|
||||
314448 511732cf7233e843bd6a6611d9026673c9fa7750b2568fb9e5736c0c00000000
|
||||
316448 98416b4c065dc11486eeac81334029940895ef2ae86ce0c3c038ca0200000000
|
||||
318448 9722ce839beed07ee40b6b827a2814c03e05711a185c290bcb3a130500000000
|
||||
320448 7f4ffc3edb304a1b0f187149e82eeffbc455725c51f2a079e237a81000000000
|
||||
322448 c4a16d5f891dacd1549f2ccf64aac56755693daf6257a508bdb8fb0500000000
|
||||
324404 f86abaa625b1987bc4d14dccf5309a44c904398f4410221f7a0fe40c00000000
|
||||
326347 44cbe08d604b52c478f1db32961733348047642229bd744ee6f0120c00000000
|
||||
328347 7158c8f9a8a4229f01eb16a531d533eefe2884983bf4c75a4e96201000000000
|
||||
330347 a3a92291882bbc16488385f0156cccff983474e78617b35ee5c3090a00000000
|
||||
332347 a1946271f7ff496c349218907e1e0581518fb289e290d4a7bcee380f00000000
|
||||
334347 c967857a50a8603c14c49c61d8a7ab73dfdf7670a190bdcd7ab8110800000000
|
||||
336347 dd1f0c1e223834c768c2abad0c0ace5a9780efd7b62b5ce2859ec00400000000
|
||||
338347 8652269619aa35f28684685da47df40f887b51a83ae1675fe3db3b0a00000000
|
||||
340347 1aecf033cefc0daa3f2fe973f15cd96250a8bc58eb20f1b2d950660000000000
|
||||
342347 15e8a1f6a794556cca36c35f74d98425008435341aa35d31f6e58f0900000000
|
||||
344347 9981eb82152555824726ab3e6a3e7f80ac1d4e25c567f4526d91620d00000000
|
||||
346347 b38d55716d1563385926406dbc4a5170ed2aa6bccfde597280f1210000000000
|
||||
348347 cda5363917e4ba1d922ba69ac17bd19ba13ead4f4b57a85e318d080600000000
|
||||
350347 aa9fe187f9c84ad676bfd2ab692cbd70fe4a5e3688a375b4fbd00d0a00000000
|
||||
352347 0e5818c21028fcf1ebe4c90d38fb88272bc78080af98ccd194dfaa0500000000
|
||||
354347 2951e683724ba3a5d59aeac44a6be750a215c4e16022bd669b40190300000000
|
||||
356347 429039c77692eeb996c15605d8e5ed90db23e75a05a5178224b92a0e00000000
|
||||
358347 634d37284a61f7a27f42f666af8bc96b40690fdc9d24b8bccb09100600000000
|
||||
360347 5a75c49deb9472383107fb70e4a4dc8e3c8129aa327265724b66210a00000000
|
||||
362347 9c52c6b239292b9ffd0af66e91a2340c54416f6a52c3b80ca264c20800000000
|
||||
364347 0551330692ad43dec0a7bad1c4a0fe34296d011dbbae3da95349380600000000
|
||||
366347 8b13efe4d3917c304a7483dfe000d58a7384ae11264a4c7e3072250800000000
|
||||
368347 b564bd662dd179fda0ea82320882fa59302998c067af4bf9a7bdc60200000000
|
||||
370347 9540347b2034a362fdb864e4aa8845dcfc82b208067a96483083500600000000
|
||||
372347 46b65c6bfda4c0a6a9b38eb122641754d5bd62bde4379a58cc5e990400000000
|
||||
374347 c1d10a8008e98952f8c6bded0cae6940aa0c30c81db1daf614f0530700000000
|
||||
376347 307fae4ae6d86f7bbd881377457c8539fc331e161af25cadcebddb0600000000
|
||||
378347 3fb73769bb117aabaa155b32898d146fa2edd33609f87bd91363c20500000000
|
||||
380347 e1ff1bf0471c0141ebf0edfca96509bb3ae7df17235469b9c23ef90300000000
|
||||
382347 4f73a42a9594ecf50f3de6cd6856ea1e3016997a791985087a6a0a0400000000
|
||||
384347 c3eed7f6d83c32e4fb495691314712971eb4f3b25ed691cedcd6bf0000000000
|
||||
386347 366576f55e3755d4eab83f20a744445986290b9f4f89a02d09a7eb0000000000
|
||||
388347 3fa9ac3c6a9dc2d1d9dc27497b793dc56d0b54a04904874bfea3ed0400000000
|
||||
390347 39b3b15667944cdcfad9d6e638b2311475fe6e7652a1a1464044000500000000
|
||||
392347 f28b413ecb4a7abfd4833705d45aba13ff50621ff9434cf2010c190300000000
|
||||
394347 c14f4bc7f30239e822a3641592ec64e684d99225c5dfbd5fbd3f930400000000
|
||||
396347 24be7b64ce5e2393060181b389b9fc21b16fb9cc8808772dabe49e0200000000
|
||||
398347 73a999451017fb393a44f2318c9a58be3ba1b3041c8a9149cb7ccd0300000000
|
||||
400347 685edc1c2cbf6b0aeff82fa8a0fbf6cd117e9a0c4e84494677ddb00200000000
|
||||
402347 3b8d3ec3c95af32b2a990e984303825c593b35432575e224e8abc80200000000
|
||||
404347 8e2168a04bbf39a58f3698137bee1e772103341ac31c38899917e90100000000
|
||||
406347 fbdb7eae643ef9ef9bbe0db0b361ec5e99e7e925537a81a31d10300200000000
|
||||
408347 590222223921a71d16ffadb4385b462e51f79acb60b4ab6e84c3390400000000
|
||||
410347 fd2819f67cfd33a047dacd6b8308a1e51a3d4ac5c34122528f986a0100000000
|
||||
412347 a83a4022d094a7b214ecbbe03fe3872c98dc7a31470d5027c4e4aa0200000000
|
||||
414347 80272eddea307894081b90c08e3cee32c9bab6b9fb1f9ea816bc800100000000
|
||||
416347 9bae9501eff6f9647ab8d31d7391d3d73344c0c4ee14402dc1440a0200000000
|
||||
418347 8fb913b9c1abe5805ea5b8b928e65b16711763183ba01d3d9c88350100000000
|
||||
420347 ab26e04f50c18ca2a8be27aeaf3165a49a9c68581ca3e164c5f2c30100000000
|
||||
422347 2ba4ba8bf84a1d1a5ba98890270d8fe6b028722525b4566ed705d10100000000
|
||||
424347 720ffcf9c72033913e7418e18e7583735a1e407fd39b0c90979f2e0200000000
|
||||
426347 cc10a11722b92ddb2cb7600936efeb8de9dacea30beef84be8aaac0100000000
|
||||
428347 10891d7b3fb51631c7f3f77cb603df706a95a693cddd4883383a190100000000
|
||||
430347 acfb9f53483f7d739d4a9ffab7238eab793fbb83bab57f06bcfe220200000000
|
||||
432347 078056d13852296bb64aee87625d1ba4e30cb7d566e9a2f23fa3860200000000
|
||||
434347 6fa99cd8818ee97e9c29f01c2bdeac53203c64764c3e434e486b5c0200000000
|
||||
436347 dc9a82cc91abd3462550a1baad80fe9e0be3c52a605e5209bcde6f0200000000
|
||||
438347 ff3e7eee6ec0df77f567884bc6dc980017e2d4594e844e39b3b75e0200000000
|
||||
440347 57c513daf2dd20664e0fa3715c8cda0062953d33d519bd63705f250000000000
|
||||
442347 0bd6cb0e91264d2dcd3b91acdaf164b0c197f469bd49bb6d3716900200000000
|
||||
444347 f1ddb821d0c9f5777de6c2dbdd9159cd963c6462002ac6c77b10e30200000000
|
||||
446347 2f65c4cc2c9239101f7254b16af4fd66e737974ea10e50f68a72e50200000000
|
||||
448347 d54849b0316676d63f897ee68c2a1b3d6bb437b941b55e39f917cf0100000000
|
||||
450347 c575aa3e87d57b57e0e2fa82a449a3dad7ace3701341cd644e9aea0100000000
|
||||
452347 af9b5126756042abcd9dd8bb6e96a70378a56e805d879a1715bb170000000000
|
||||
454347 3d21ada71475ae8da1f9b9462173672686bbf24a3a055ed71134f00100000000
|
||||
456347 cad8f35a1a39b83b18cb65ce11f953cef1b65639389b0bd6e36e120200000000
|
||||
458347 5b34858760a45a05f39acb4bb0706a18984f97fb5b57d95fbe42960100000000
|
||||
460347 b7eb73c0176d191c039b03c130e7da1a5281e3ebb32095ccf3940b0000000000
|
||||
462347 d19465c9a2473e52bda266c4302e4fecf8b1595f22f0bea0f80cb50200000000
|
||||
464347 4f5193fa4b7cd966c0759b0e8a7fd3d832104d383a4d9ad50f8db60000000000
|
||||
466347 369ecdded4ae1fc1da25a56ddf0e7b5d22a1489f0019d93cade0c80100000000
|
||||
468347 81cb52368c1d9d36dab543068d7afd3777742aab3af7c309524d980000000000
|
||||
470347 29d335c2dceaddcf389a15db528c9255fbaa51aae5c22a4b17ee310100000000
|
||||
472347 3a354cc7d23ceca488d031608c112b8e16bb2a5808b8ee1408f3b20200000000
|
||||
474347 3278114a7a5275d5d3154383a27af34f934157d2614667d63c0ea10000000000
|
||||
476347 d0f4e409aeb45b1ba174f12095efaac8d17db1beb95117bf819e590000000000
|
||||
478347 e06f96832bb8f451feaf9541f0c68677a66afae6d1ba780815c6900100000000
|
||||
480347 b73b805c29b65fac9b56c5f83f88645ff10dd94a93cb0c0c95b7290200000000
|
||||
482347 8acb2af5060efb09f74ee1a2608d42013755bb33d3b383500194ee0000000000
|
||||
484347 f3b2cc0ebbca2e4c587bebc8b3735c302f51f91c395bd92e38bd3b0100000000
|
||||
486347 5dd84d40439014bfca8ac9a4421d17ffae09234747f34d7f45aec60200000000
|
||||
488347 792eaa7cc94ba48079556ce83419db17cab6293dda26f65bb90d830000000000
|
||||
490347 8accfe4081375e405c0db49b28a84fbc5e60bd128b2df3458d30310000000000
|
||||
492347 0c09a6aec0ee7828efe3461377fca154a5b4c3a67ddc8bcd24afb10100000000
|
||||
494347 9c5e40aaebc307006b6ad5ce79aac52c0031e5249884cbfc9c9bf80000000000
|
||||
496347 9f1bf7e1d3c5879c99052a6b93be0f2edebd5d97613a3049281b550000000000
|
||||
498347 6496ee08863ef805f38270c1aad8e044630b3f518e7392b996006e0000000000
|
||||
500347 156e0523e8e9222704f07359aa8ef106ae806e4a94f3e28d26b1a50200000000
|
||||
502347 e09207df445e8f443556548743e4e8e771c0c98c8657c35647590a0100000000
|
||||
504347 f1a86e52829ace390d4a1d7edb91b3e5e083cc322cdba40901f62b0100000000
|
||||
506347 000790b84d8d2d4f41e7e25ac18dcd8a6ed91cd6d69e7d052bf1150200000000
|
||||
508347 505e2c49b7260dc812871c504ccfcb3b4a1950d534ff3ba9e2a0330000000000
|
||||
510347 84e79e53d4481f105807f314030df7dbef417e8f0c04e89a3092840000000000
|
||||
512347 c20adda998a7968e0c72e22f56f4e0c1900949bef4fd46c18f7bbb0000000000
|
||||
514347 214f40a7e4b79545bbae2d76ecf8e4a7eb0a224cf4548bc5dd05340200000000
|
||||
516347 1dd35a8a33c087b78581797ee7b22a6656ee73a224e69db239aa2d0000000000
|
||||
518347 8afaed49863852d18732e7e5d1acef3cd618ce84e4a03b39ed08990100000000
|
||||
520347 9a86a807fe6ae6806d3c1aa18d62b0cf6cb3af03504853c4ed68000000000000
|
||||
522347 37fde2544051a659603e9cc31cd72ef3ce431330dcc3475faa7fef0000000000
|
||||
524347 fe5625e7caa1f3b50634af88bfe156e64f39c7083519463f120c840100000000
|
||||
526347 8044e3b3b0a38cafce33ffce908be0892f78d368dbf5d99035baff0100000000
|
||||
528347 584b6e783c781dd35131bb0c7aca0c4c7685050faa687903f06fc90000000000
|
||||
530347 56ad10d92fe0419a610de2e506c4dfdd226ae906f82b02a697ed5c0100000000
|
||||
532347 a4405571e762df4f095416f1b0f0943118053bb361081a69e5ddf80100000000
|
||||
534347 db7bc796f04e25a70d80aab4835b517534dbf878555d5bb091ceeb0000000000
|
||||
536347 c74655a122b8adf403ca5fb649fd84628cbddd92f8837465ffb7f40000000000
|
||||
538347 5a5a2befc907c20cba09907c7cd28a8eb42b7393e43a39ccd87e2c0100000000
|
||||
540347 65070c74823db90fae29b16d60c7f4180d15d8140c7c97dca85ed10000000000
|
||||
542347 9c6991e757594b9fe3e90dc3ae2869643c5bbba872c8eb900d01960100000000
|
||||
544347 adbbea051da9db6892396bf052524e619cae47a9f1ee4536f9ec510000000000
|
||||
546347 5569dbc81b426c00bdca139bfa56f3a467b0f01f89488f5b62d8780100000000
|
||||
548347 f907d6edc3aab40eb4b48e75bb445e57cbecab873af5316dfa98990000000000
|
||||
550347 e4dd125fc1ecd898ac6567eca62db0cd548dda4751feaba54b33870000000000
|
||||
552347 986b11003c87877728d02a97f6adb6e5114f4fc74cdcbc52c86b0e0000000000
|
||||
554347 d5be5fc5bbe0faf5cddee236d4b272880a8e2b51b0e1e6806d97760100000000
|
||||
556347 fd446aedb0a508e1c57deb12098f1d2ab549ebe9b73325b0b99c050000000000
|
||||
558347 53e734a42960019100cc192679411a66e2d52ec538f971bbeb8e360000000000
|
||||
560347 2fb23bd2196b95072cf77a9b1dd4c3bfcfbeea21b5c10ffcc97e510000000000
|
||||
562347 f1cab35ff8be10cb0824f5b49b0598ec13ee231468c767b344a36a0100000000
|
||||
564347 7431582ca9019550c2c82608b1dac8961ccdd619b6686a2de4eb490100000000
|
||||
566347 f5e83c4cf0d997b4cb1f3204484cff8b1ec3299366cfc39dbe60280000000000
|
||||
568347 ae7931254ce777265feec6be6bb960055c4e34474d68e57e756e460100000000
|
||||
570347 0ce3a363c0af0cb3352c6ec49790b1dd2d2e3142275961f485b4780100000000
|
||||
572347 c1d38ba961bdbca518639d59c2f3122d3508af8ee34042efe3dc380100000000
|
||||
574347 0c796841885aff77bc8fcc48335b8b713a7ccddc0cd87f5b4cfe1b0100000000
|
||||
576347 4680406778af7180851dcb143f623b72200e6c42c075b8f27ef5780000000000
|
||||
578347 1d58ca50f42c0c2f882c8186a9135a30f72004b808554f46603d720000000000
|
||||
580347 d05293bbd4aeb562d132430dc7463740b516563febacb889c6906b0100000000
|
||||
582347 bb5055161f391981ca9e80a429f393bcd5f2390c12a0e9d0ba6c3c0000000000
|
||||
584347 77a3862a75a797bac18b99831f66c46cf59e571b934f84335f4f420000000000
|
||||
586347 5ffe86f2336c650855bc9b8ed6b88a61c97545f4aeb797a600d5520100000000
|
||||
588347 da970ff2409f521c9e7865ce0fb7ee42b85db7be4ec2ceacc1b69b0000000000
|
||||
590347 b6c7b9b9a66a325cd4bc92dbd763d75f96f6f5bccf4631057fb9cb0000000000
|
||||
592347 06c3ed1138aecaa4875cd2d9e621cdb45c19ec2a9a43fbedf41f750000000000
|
||||
594347 e5340096401225b849aaf110869b5df3c010ccb364b9fb5390effc0000000000
|
||||
596347 ebe0e0e9223d46e96d73e00110633a305140ee16f27294005a07150100000000
|
||||
598347 e8b83ab2c6540705b08216812a2814ef0aa1d41a36bb2d0ec922cc0100000000
|
||||
600347 eb3f09cfd88df68de6d600e90c93da60ffbb001c78540b75ae81260100000000
|
||||
602347 cde83d227b65f3e54b4ff915cd85d7f5bee600075557a1f1afcdd00000000000
|
||||
604347 fb80b570790e8e634dcc561044239e0d114c08acc189dde85e167b0000000000
|
||||
606347 4cd9158b04bef1b4a3d5478b88545ea40c110d18b25d59368761000100000000
|
||||
608347 289337dfbe42ad22f840e2a962d8a61add66185d6c16ebf60873060000000000
|
||||
610347 f25110fc397135b9056c35953387927d5749ce002e074856effe380000000000
|
||||
612347 29c4fdf185592cba6c0ecffaee0c5acd987ad09439743550b0e3270100000000
|
||||
614347 51d4e7facda4288c8bee9787b40078f67678a666769972527afc9d0000000000
|
||||
616347 d9d98e9c2e3a8fb8a28898e7b9a3a6dd84bcdad76b506e70608c220100000000
|
||||
618347 cc01edf77434adc903ac7e8f0dda79255490f8d471d9b150928f760000000000
|
||||
620347 691a175f3665733ce7e56c149d21fede72f6fa60737f6b85d5e3150100000000
|
||||
622347 bbc0d444aa1266b1c72c05f2fa4e3c339d308d6676b86fcce50e4f0100000000
|
||||
624347 4e4f0037881c4f663646b0f3a8c4dd0926ddced1f741f12afa33250000000000
|
||||
626347 3ecfd45d6a0ad4a4f369693d34856f065ed4fb26bab767fe980c660000000000
|
||||
628347 91cd791ac915ed7213f61168bbe34bd208652c5f4273024146b1470000000000
|
||||
630347 4c5c1a19a43480a8d61086f99b0bfc88a97670726f1cc6e935e89c0000000000
|
||||
632347 822ad0ecbbcb32090128cd5a79f8cf9be9fc67143c9b8c9b7672060000000000
|
||||
634347 8a0059ac116122054e5fcfde3c9c9cf69a22be20f54917bfb6ad890000000000
|
||||
636347 1dd6b743e2ee46e3cc4a9a4094d8f42fa0ab0a6d1cc17ddc350c3b0000000000
|
||||
638347 f3df160c48b4ccdb48bfa40c9373a913822eee3b172f98434d0fed0000000000
|
||||
640347 11a4e5e0cc0afb379a76d2df43f0e79861c3530f8c0df65350ea3f0000000000
|
||||
642347 2f06517a0f90e38f33db75f1f9277d6ffd3d6c0bafe4a82320e5a00000000000
|
||||
644347 1e1fb431efddaf9d0abf99e4bcd399fe9bd992ceb67d31027c1f1e0100000000
|
||||
646347 89a53116c2b212d9bf11599b16bb6a3314ce270b05fa4dbbb9a2280100000000
|
||||
648347 4976551eec89e398a61ecf0718318ad23190ec7e2f7238320f74950000000000
|
||||
650347 787ad09db10e2399a0814ca93dd2ddd9057dd5562b69ee50d813ef0000000000
|
||||
652347 bfe7a9186db1ff3d3ad6605b4732b145f60285611c14f8e24e16400000000000
|
||||
654347 9554b7f44e66e72ad74ed8432e646e8d6115664069424924a75b7a0200000000
|
||||
656347 b9511d143ee34d8a3d636a9bf5cd148a2d3e86c8f21da70463fab80000000000
|
||||
658347 df17ab12268366804301d2e391ff5f7f55a37b0cd71002d090b3140100000000
|
||||
660347 7265dc092a439275617aa98ce019817cbf8c1071ad66f9bde5bc540100000000
|
||||
662347 96ca1846e66c016d9d60a0c6bcf503dfa25733b9ee2d8f4d6a63d80100000000
|
||||
664347 90d6b23459e19cbe4e68542bf1c618cbac87df76d2863e555f42010000000000
|
||||
666347 bf612de1a5071c7eb6a90bbf70e0e039e341d8192557f1544ec7480100000000
|
||||
668347 2032f8f1965677b999f251a5b96727f95e11ab1527ac0a4176f37a0000000000
|
||||
670347 b9eef91410d9c762da15394a84a3580e8a91e9e0b9314741c92fd90200000000
|
||||
672347 56fc84a747a98062e01878bf47be666a4a53106b650336fd4e63870100000000
|
||||
674347 8fdad555952414b953f8180ff5fb262324f239790e1dd28d7ecd340000000000
|
||||
676347 e4df8d3f9a9fdc982275ba5919ac36ef2d2371b30aaa517f6a520f0200000000
|
||||
678347 d2cd331f1d85ab8dd008770d18a99fc6ace055374150216e911d510100000000
|
||||
680347 ab0096be244239f02fb5482d2de203b6fc422ae63686a25be8c93a0200000000
|
||||
682347 fc69fc18ec0d7758ddbaa8130e8a5c2a30367a706e71c54844afcf0100000000
|
||||
684347 9dd9726102ab2c5a6f64bfdbde7b00a60a906e48c0fc0a8d5c1bd50000000000
|
||||
686347 fbc589c42e6d1444a63fbbb3e63296099ff6db2ebd0bb7cb6d44c50100000000
|
||||
688347 a91354ed140f672921107033d0552f61924b9812202bd06eafe86a0100000000
|
||||
690347 3d23bacd6606bd2f294bd4f18ce4c58cf5ecf033a1e7079e50d2be0100000000
|
||||
692347 c4972a460375c49e0161c0feb88dfa76e227841ede3f13b2ff33280100000000
|
||||
694347 f36f71a65687b3d34a3bb3ab66d31539ef3169d86f9c24820a58d10000000000
|
||||
696347 558fdd6ebceddf0fb98bc8a0313c1743a83ab24cc00c90624479b30000000000
|
||||
698347 8e9517efb84549ed17f5f126d76482f63abbafc4e0b952adf852370000000000
|
||||
700347 6e02754ce7f5b8373e96aae61a92cbd5cff8fed19d1ddc8d5051cc0100000000
|
||||
702347 ff8e6465444794e96c3212d42bb805110c139aa6e0c3a55cdbcb0a0100000000
|
||||
704347 28377c2eb4b2ccb867d3d9924d1b5ae36fbd4cb5fcc95bdcef64590100000000
|
||||
706347 3d9b879e83fed62aeafa73b23d891496adde2713b5354aba37e94d0100000000
|
||||
708347 7db9b67241e26b9753f25073edc3db58658beb5d47fbb7c1024a5d0000000000
|
||||
710347 96c1a4d1f888bdc83fd522c6f5665976e04ad46d753fd182fe32590000000000
|
||||
712347 ce91e186d658cd58aa43e50979813a19cce1dc056a335c07820da20000000000
|
||||
714347 8be21d599d9ed20e0ca424f9bfc1010c826064acc222137d1ddb750100000000
|
||||
716347 c8d3c35ceec2c26ef69945409d57bf9c9fcf468119fa9f4c7479760000000000
|
||||
718347 fc6582b6630fcf9a6343f2a9cb4830ace00f17008b010958e3d04b0200000000
|
||||
720347 f771529eed4e7514afcfc7c5d2b49b4a2ae13651cd624ed409acec0100000000
|
||||
722347 e92698d2389b1080492c7ef1cc3b5e11ee675eb89aff076c53a33c0200000000
|
||||
724347 d926ed6274f326d19da871b11aa1167e5f2a9edeb2ff1c1360ce060200000000
|
||||
726347 60a674dcc4ee9100a391f8f1115f17f27c0bac5d54d28233cdebee0200000000
|
||||
728347 928101797ff05acf92e75fb943bf7ac8b606e89233ff0f01d043040200000000
|
||||
730347 469ec30a5028f108e3558663a0f7890f1e30a0458428b17eaf0b5a0100000000
|
||||
732347 1dd07665e03eb0c13b213ae529fc21ce02011ba126ae960928abac0100000000
|
||||
734347 e641d890ab7c64dd481f168f9cfc1eb61a4d861e91c01985f2bc650200000000
|
||||
736347 22527fd9a8886766ae21f86a0a400356d33d5e2812ed7fbf659e260200000000
|
||||
738347 d38187018f0af2ec3b191d6c0fb18b02faf87bb30d69d680330b450100000000
|
||||
740347 7f77791e3de323d0da3a57f305590cff3c7d1589f4bf7253f70ffc0100000000
|
||||
742347 9185a9b3c666ba4342a7e12ae4d2f8585b3d5b5c31aa481e0590420000000000
|
||||
744347 de59f804433c7117d5b62634ba12587384e6e41a961069ce7d1fdb0000000000
|
||||
746347 02af685020b3a3fc17366901f4e2e2919658945602d2d05a4087c10100000000
|
||||
748347 7d50b9a5f65929c214e71017b2c46301c2611294ad07ed8aec77b70200000000
|
||||
750347 c676e96c96247592bcf655e7509ba027df778aaa4022f6a3cfbaec0000000000
|
||||
752347 39f022ee92703fe214cc2a118d26907865be7442cbf4e5a2e2a3cf0100000000
|
||||
754347 0a9cc8aced0543a34ce62efd1a8db3857fac110b0111c2bdf9eed10100000000
|
||||
756347 48f789f5a6c7bfcd1221ea73000e84f93a34e64f21c1e2bc2768360200000000
|
||||
758347 407f96f51111c9aa373a81760dc5c2b92ca76270f4ce69cbe2e32e0200000000
|
||||
760347 a7a5fb7a1379217381dcbcd04d08f064112b6ea4c4ed44aec865e40200000000
|
||||
762347 8beced446b5cf6996c1d078062190ab8a13727c713ed8d4fea2e190200000000
|
||||
764347 9de0ec9494baf64a56b2cb69b863bec17ace6b7a30daf584693c4a0000000000
|
||||
766347 063ba39defd882a3ed369d7798c1767d364e472d50156051ed0ec60100000000
|
||||
768347 5a8b1f5c6728b05ad616192bac40bd07e70de4fe867faa0593eee80200000000
|
||||
770347 917902cdb044fec62658f15dbf9e054771fef7a3425c41f5865f770000000000
|
||||
772347 7a9521b7cc72297afbdd827b50ab6f39070dec9f1b3cd703c82cd80000000000
|
||||
774347 e4c65c1847dfbd343071c5a257c3b31e6c10b89fa68884af61901b0000000000
|
||||
776347 c8286892c09fc883b221f755f856d6c14357de0dc125b1e7aa92fc0000000000
|
||||
778347 31d4285290b1c64b6e42e4bc09af5d1caea3d174eac111363074740100000000
|
||||
780347 7535dee53873bdc211af4c2e020eb0e79a3f91c9f31f5981d3e0ec0100000000
|
||||
782347 3124ef709d7ee47d05e1c6b93a5a581f69f6b8b72dce0f5bf65f630100000000
|
||||
784347 26af777ceb2748e90b2e568e99d9a2572ffeca40bd0acf336fc7510000000000
|
||||
786347 46b5531422153d8180f6bffa2133fc79bc00d1c10eee17f96b330b0100000000
|
||||
788347 339543f69123db096b726f4a7594b8340e1b323e6a216436181a510200000000
|
||||
790347 00636af77d85a73eaf28e300355a24055878a27ad8295b9811128f0000000000
|
||||
792347 df81a5d9e448cf341a79ab95aea6cb451bdf935fecbb302094800e0000000000
|
||||
794347 65a142ec908c86fc7363cef25c179562db4642e18f9f5e8d7e61800200000000
|
||||
796347 9fe05f1e1643b852bb6d3f1516ffb4e431e17c9efd8b40c06dbe6f0200000000
|
||||
798347 1117d54cd06969efa2c1e6599a912e18f125c0e8742d0450e173e90000000000
|
||||
800347 01568a54d402361717f53c8a95813754cd47b8ea789b8c71cce8f80200000000
|
||||
802347 9d8185d50135717d926980f73e260e4e8c9a7e4e044ffb23deef850200000000
|
||||
804347 b707f3dfc17a0c7a7b43375b4a4c09bd4cae6d156b3f3e1aa6eff00200000000
|
||||
806347 779ee8c6d255dc02f2a6d7577fe566cdb97a4dd8b6132c0d8772f20200000000
|
||||
808347 0073b058e07d2f0cfcc0640d2fcbd99848943964cedfb2358964540100000000
|
||||
810347 a6034729288dc35457a0c9dad595d94c958bcbae53c6856ca6362a0300000000
|
||||
812347 40d100d0e6518e66e17b78144a5edd546582c75773b1d278399e7f0000000000
|
||||
814347 11d3bf8c126dd9498876a609c5e511d949541a88eaf39913d459c40100000000
|
||||
816347 1d08a87bdaf7cd27e9209869276c7c390bdd924b6a0d4fde9bf3700200000000
|
||||
818347 16bed5b021e2791c42207a7e878a4bcb092633b56d5f9c1a826dc10100000000
|
||||
820347 a4217b90935943e17eeae15fbce000bd29f3a6afaea57621fb04040100000000
|
||||
822347 50bbc0f576fc8f743d57d66bebea014a3d6509d83b2149c1dea8270200000000
|
||||
824347 7728cea3a91eb07940c90cb2257c779641837f496b1ef4dacf83f40100000000
|
||||
826347 e6f803e14b10c4789cff6df5b957cc2b28b08d92a08ec2ac9a4a3e0200000000
|
||||
828347 5bf2688f0998ead898d196f2f7d893d5f0c14c9ff8078f0ea78b860000000000
|
||||
830347 0a186e2a4d0eaaa87348411b600d3fd88ba039e39b9e7e543c296a0200000000
|
||||
832347 dfd05c302fc1ad7d870f1b8efc372633d0758095e8b3a8d2fefb190200000000
|
||||
834347 90ec487b61bcc957a3df6423377791cc46dfb663045a58a85f645a0300000000
|
||||
836347 53c693cc2a360241920c6d08982f8f33ce5b237343c4e8815c03630200000000
|
||||
838347 f966a99c96c34a3aff535c09d4b5124c8c4244095d7c91c2c1e5600000000000
|
||||
840347 e37d6df6e06aa78e905ace63558a4c1dd72ee8db2dee10bdf404190000000000
|
||||
842347 960d454500835572a568104d84934f863cd2ed61ffecb1c01b7fea0000000000
|
||||
844347 d963790a20b01b76597e17fff1e2e1c1b9385cc3a0180412b193090100000000
|
||||
846347 d55d636f83b8e4f21f81d60fae6050193dfd97712c7a4318e58bfa0000000000
|
||||
848347 b7feac9c010fc53756c422ba38708fb9731c50f431a9713f85ab540000000000
|
||||
850347 b3fb45f4a353125f30215f0f8891eec692227cb5562fa2fa16e4260200000000
|
||||
852347 2df80c8d28adace72307236a55a0867d898f4fb75aca26599ca5cf0000000000
|
||||
854347 56edcc8953e87cccc645b8a04bb1004383552536ae1bfc612652680200000000
|
||||
856347 a50ef1158519e0c55902c61940cf36269a06922efb5f51b01df6600000000000
|
||||
858347 4c8e82091aef4abdde34a9d3e52101bbf0b69a47e8e7046ba21b450200000000
|
||||
860347 21078bf590163d56eb102934087c1e97bc5854ad17cbc268e8ca4c0000000000
|
||||
862347 1b531b688d369e72a75df0a02b8410dd459b648dd69f9b891e03fe0100000000
|
||||
864347 60b9038b6e992f816fe988d5ad5c57aa3e210c05bf7287f146a04a0000000000
|
||||
866347 711c0140ef33550a98bbd93b3567c0481e6ded6fc7fac02a50b6be0100000000
|
||||
868347 6ab9346866e3c9811e2ead0b0b19617615d59475e3c8e6cd1730190100000000
|
||||
870347 f543eb14c94ef118e056457b46732bdefec10f45ad4fd32a46e1820100000000
|
||||
872347 02aea767b63b97c431ade304fa3d464d98d41e0445302c3c8b27450000000000
|
||||
874347 24d1472f5cc8374d5c92798175573003ad7758190cbe7ff3cb63020200000000
|
||||
876347 13c835098316f0b1fd2fbdab05b75175efce23efabb5b1d41bb74f0000000000
|
||||
878347 c9c5e150b27d3aabcb04fa958fdd7d933d23ebd6bceab1095f762e0000000000
|
||||
880347 129e12bbe343137fc50d4966e9b43e01addacd081a586b5253ec7d0100000000
|
||||
882347 e4b31985a09ee81ba00fc33cfd1e1f8b45eb1eb527fac7b2c6a9ab0200000000
|
||||
884347 f25709683bca310dee7e2540b659033ae14f5f5b05a612c61bdd080200000000
|
||||
886347 c3c5c5d142c96f6bd2f04208db075d9f8d8593cadb54e8fb9b33e20100000000
|
||||
888347 b3be1cd69eb85a27a7a2d9199a6ada6917da5348b02913ab0146530100000000
|
||||
890347 c7a0ad793f1756d82f8cf37d7a91e89bd594ae17dad72f92eddc850200000000
|
||||
892347 cc32dc57e9e97e04117a57da703e87272d44d01c2a721d213ca26e0000000000
|
||||
894347 0f8f646a54b35712ce5424ac0bddea2d51973d690f4ffcf3631ff10000000000
|
||||
896347 710e9eaf57625a223811993df203a4e4af3f94fc3be400d8d22e960100000000
|
||||
898347 e7d6812ca8455cac62cd279264e7a0cc889fc910e4326842f8f5770100000000
|
||||
900347 d5062a10617e7fb970d090e2032975b48c20adf762325d3a4d216a0000000000
|
||||
902347 8545fb7d71b1b0433e403b863d78771089860f06b0d5f4e3b631a90100000000
|
||||
|
|
@ -0,0 +1,502 @@
|
|||
0 382c4a332661c7ed0671f32a34d724619f086c61873bce7c99859dd9920aa605
|
||||
2000 55c5f32055b79e4803e23645cb4b8739598dc58d931261efd8eb1b4e80330000
|
||||
4000 c3e3d6371c2f347ec03587a8446b6b87ee75367cde1f774aa1f7bbfc1bb00000
|
||||
6000 9067a7984b737656ea65892862a5aa0ac130c4b2a582af807a3710314ec90600
|
||||
8000 6768ba2af8af9aaad245057245a6a79dcde2b1715e1517048265ad60ef111a00
|
||||
10000 09f9229b332b280a1d171b63e3c08f3eaf12f965c23fdcf9b459dcb047010100
|
||||
12000 2dc4f2dbefe2d8c40a58ac2d1304ad4d48033cf5d9189208ded0049132300000
|
||||
14000 04ba0d2faae221b5740a123c78c4079a43df34678f664aa8bfbcd7f92755ad00
|
||||
16000 bdb1517919dffd5fbc0259f4ffd9189263bd8a02c76132bfd0ff9c6340b00400
|
||||
18000 4262b333f7443217e63d2ec393a84cc916dbe339543405a592aa44cd72462f00
|
||||
20000 4f511c2ba6b2e9cbb1828d78656d3416545313a81ea8e58a729de7e5d6e07b00
|
||||
22000 0ea4b11bce6bb5d887e7403d8610bfce99471d0eba2362106732d03f49361800
|
||||
24000 a4ada86d21c10574be13b71f8afb80663a8c881d189ee86d9fd5f88a31817e00
|
||||
26000 3b38c7e6ae46b49dcb809483d2434588bde759ff6b98892f7bb15f1f5ee60300
|
||||
28000 e5f3ef0fba1dbbb37932bea9183b390b7cc41a8744408b09781f5c2539ae2101
|
||||
30000 198feb7eca46ed925dd1ebf8e56afef2aa8492d6167cb53ff8849bd53c5b0100
|
||||
32000 d79940ce148d94618e37bf5d0af8c04df24c5cf105a0337479b1dcb381a90100
|
||||
34000 c6f6f8e1e1b26f39dd243fdb99ce38edb8e4ea1583e33f43bd22002aca6b3c00
|
||||
36000 fd78b4cd44cc23a0b91137f88230f684f7ad6c4dd3fbfc0d5b6b6b0719470f00
|
||||
38000 b88722c4ec6c38e81f923a4285d09dd5419b077bcf98998eb892282e2d9a1e00
|
||||
40000 33b1831a9dc57544629dd3e1aa986e5a5d90eff57b397bdc25642cc77ae40000
|
||||
42000 a10bb6c2807d6343c3410743b7639e83462bcb70b0db014fa0d09c4513820300
|
||||
44000 40c671eeb4d56f4b03c1260fb8320bd0f7ec359f49b554dc08d86144cb140000
|
||||
46000 e98df107f8b2bef71d455efeb9181042e5caa41d48f58a46dc736c3d97982300
|
||||
48000 435faa1c7162f9f81423d8d6aa8deea1a2cc58ee8229a49a53321ceab7191100
|
||||
50000 b05f8a5e496bca2e1fd224332e2df8663a9bb39fd63fd68eeea05025d88e2e00
|
||||
52000 acd6fb8568496ef09ae084db131fe364ce009744717cdc805e73f57c5c3e1900
|
||||
54000 e6236bcedc9962e9da6bfe2557a134640cca2744fae4644901e3ef8ff1d40800
|
||||
56000 c76aa60b7a0439ae1c714314ff64894274170fcc1b32e5a13df1ea3e8d8d2900
|
||||
58000 937d567b0344f4ac542e5982f59b710530b6776875111e0b2dd88bf2b17a1000
|
||||
60000 3d56ab46fc09c37131638aab58045f817bc06f7be40463a7b0c18b716c692500
|
||||
62000 32beb84d06320ee56d64876c50c9429d869494eb795afe63b801ff86d94b3c00
|
||||
64000 edd2e8555441c3eac10d81f0429bc9eb8cf8655f98509422adde261b571f4f00
|
||||
66000 56047b11a59c72cece0210b3bf490835f20000ddca710ac5991f27794f143a00
|
||||
68000 b7b1fcf7b9e241c233297da43da68f90542a3e68b3b3f85dc058901c43fc5d00
|
||||
70000 f62d2be172077e398c0c145fb2012472c356102a3494d1fe2479946ef77e2b00
|
||||
72000 0fc9590d64518f6bd1abe7040c6de29dcb59417fba9e76c82f4c05f5f3180100
|
||||
74000 7e6af4b64fe144c20bdeaef43cfe96dc9093597d7ef1adc828e74373a2cd0100
|
||||
76000 9e567eb58aa46cb7cd2a033b7c7ec871507171ed2eb841a633a311573b752600
|
||||
78000 f49409d355307ceb56b9b8fe792d50bdb1e4a81508a02b1edc9b75d8a2662100
|
||||
80000 59177ebcbfdbd997fa0a6c1d0fb792da3c95920b6380c196774fc5ec3f3d5600
|
||||
82000 ea9672854d3743f67281aaa8eb65ed62e730e7e9da52dbcc728263edd5d02d00
|
||||
84000 43ea281b265de6ca3c21062fd1fabdf6a34a74f6e419633f5b8a33b108c92600
|
||||
86000 41fb138543da775b2d1498abb290644ef075a443fdda182d271c57d956c13e00
|
||||
88000 4ab4ffb8d5b5e77da79d2e8ed353699e7d748fb39751869cf7ff2aad66011d00
|
||||
90000 4bd9175fffadc1a65a94b788bd6eafc0a3dc34d3b5142a171521be88d13d0500
|
||||
92000 725e3f01606e1201f5fa9001a06b12594beaa848516ff517b44d84665b4b1700
|
||||
94000 971e33853933a8d9d3049944a5334b2b65387ebed2dddcce0b42e685aa380b00
|
||||
96000 af10b2d6df0b5e4777c342efb88c1080b94f0bec08fa18d144101df61fe71e00
|
||||
98000 0f3ce398abba3b00e445f90f94f6c36621029b2c97f8a25376a8ec6819dc0c00
|
||||
100000 c3d32629003ec648715ad156e7c30c8f637caf7cdf49afb723ba8766c84d3600
|
||||
102000 5c69e1dda7a55025a995f9ce9c8d8fc6cdf8d0a756739056c17ecd4568670100
|
||||
104000 71880e0d23bac53687181d38cbe5b2572cae0177815553f31d63497841e80000
|
||||
106000 759139ac754a661f70edd44a62f01ef15c66249f5b8d42b06a5db2b7363b0100
|
||||
108000 7dac3009fbe4408c2b739a77a160a12cf705313001f4c94fc8cde97827740100
|
||||
110000 6cb3161b7e613ad71c7026c8f64251a6d6d25cf790d74bd36fb644dcb6f90a00
|
||||
112000 8f3f267ab945e3f43eb0f154111f2ad9649f84803e1ae122232f7d59030cdb00
|
||||
114000 3d486b2d5fbd4ccaf544edd821d2ba8ccd36cd5ea468504d94b0aabd00260e00
|
||||
116000 90c7bfa4d7cf8d448920ac08a6ee29c33e5d8081051b6c0fdbbf5eb2a52d0e00
|
||||
118000 55282d10b50b96d1c41e5d584ebd84fe40cac6fdfe576347d9700c85ebff4e00
|
||||
120000 206dfd63e44e3cf764c39b8ce7765d919e0a11132343e0e0d1ae308118821000
|
||||
122000 8c7faf2fc2052efc3fb58b7d927d27f55e82d3fa7fd2113fb46cd39560c62d00
|
||||
124000 6518bbfdc161aec0fd8107c4c419a27a50eba30bb383eaf8cb59be6935010100
|
||||
126000 e98ea24605a54f194a2fba8351b7df76a042fd4174d03a1219ec9414ef454800
|
||||
128000 9a7bb2b0972c9bcb87795850a7b8792d3d9972303d1898d85f663da815926100
|
||||
130000 86eff4c03aa989342da5b35fdacc275bd05dc9c11aafd568d7106145ad440200
|
||||
132000 15c7e6c824114f24c7dcda805dd41048893b6c152b10548ba4e52cdd41e73c00
|
||||
134000 9dea32a6bd4967ed9a9368b39c43014e52e9b5328d232703d039476be2151400
|
||||
136000 c0224bbed33ad06811f176f4be93450599612489f424e8a0b0db4cf0b4e68d00
|
||||
138000 251062d68d1bc0c2506472f499b91877822c10a3a122c03b32a8a6686b7f0f00
|
||||
140000 09d9e93b7d8fb21819bae279f554e2a85b097f066279837a9513b65496220100
|
||||
142000 81778c307cd126ca0850a896001d678beb307eaa07a61edca1a30a450bd9a400
|
||||
144000 5968fe0d50c58f9c1f37decfca5185505d8cfcfece7f369573581e7fb26c0000
|
||||
146000 1ab991615c1c43ea462f47fa00bf0a7cfcead1354253da236468f86fa3080000
|
||||
148000 9a10da0e5072e4307c1b85d659636df4efdae0e1308c305a00beb1afe4d20000
|
||||
150000 61452873a9a2df4e5125a9f992e2a209f0d83cd832a602d8b9b2513524010000
|
||||
152000 f3daf11dfcb4bc3a4f949bd8ebdc7dce0162936e8f90844da46011a4090f0000
|
||||
154000 92ffbf81738ad9da9d6ea4f225e2bae5fb72309c865a9a46a34a07bdaf1a0000
|
||||
156000 633d1f0859cf84abad7657e53c9e48d507b18f25f134d6ee1a6d51f9d0830200
|
||||
158000 251af7b45c4ac64359469244ec9da1541e9afa6a052a939c774305921dbb0000
|
||||
160000 eba7d862b42a138687962740dc54eb2ee14ec88058e5d6438ac49d9c2d480000
|
||||
162000 4501faa0848fed67004fca05d405ca74ea2f20a1db53d336868cc320ebf30b00
|
||||
164000 af34f0b642913d949ca340a80817e9e2d4392e5eaeaf4750e78c03431a410400
|
||||
166000 6a71592baaae188375e14fbc5d36a91f6082ece1b1de56e663a2dd2948cd0300
|
||||
168000 fb009118837929c30cb44f2de1fa156f54dca130e7f3291abf58ad0402392c00
|
||||
170000 6c5e16853a7aaa20025f96d61021f10e896a63f766383863307dc93102062100
|
||||
172000 d9f1db2380f2f02a49a85b6d383349ae3dfe549d444e1ac48dfb39ba63852700
|
||||
174000 c5bb4575e28ac88844676deda60eac30767bc0d31e32047af5c194eaefbc0300
|
||||
176000 dcee5324663134310723e48655454c3d97021b36b28e2bf464a22d08a1e63100
|
||||
178000 8bdaa4e743b512ccec60f8580b50162bc617e549674496ea6c2d3c26214b4700
|
||||
180000 5692ca609a493e5f33e96e6368b8be351aae58126ea631bd1252ff272dd23600
|
||||
182000 a984739b42ac7110f7dd7786440706c0648cb8185f55f8e847f8d0bea91c2300
|
||||
184000 762c82d2fa52a7dc92eb00e04f537d2d8dfafdc0db5206f8a3d9196d6d670a00
|
||||
186000 cf8466a4a83fe98e2ce4f5f0b7f59f23bf0bb9f7841296f41a4a911483532800
|
||||
188000 e8c2f2586f01482ba550eec38234f01f724fff88b71864b6db7205422d5f0100
|
||||
190000 7355bab9c14926254dd9482af896efd21804aa2c7689e70e9590f3a2082b2200
|
||||
192000 58b6ea9ae7f6b44ef0127572812cb499464f8496f8888af03dd3a54c541b0000
|
||||
194000 f36aab96097a497724f51820651acf28ded93d1b0a4c342cb29cd34887f70c00
|
||||
196000 3ec4d91ee4429106bf51cc06a8b57cbc72f4c53b84dc113306aca0a6dd010000
|
||||
198000 c85081cbb1b03450e499bf2584140fa6af3222d5fd879a172a8253c85d880000
|
||||
200000 b366edfa650a7288f05324ad2120307fc8afebba21f263826473fc5c83390000
|
||||
202000 e735e34d27fb8d647f1c9ff5358a09040db2a94d8a3c33454818ee1fb11b0000
|
||||
204000 275e0f3957bc3a9cd5dfb95172348889db9db706179491fe849adec6321e0000
|
||||
206000 5ba16c540fc3edb2a12c7a3085c83218ec10cc2fbf52cb5bc00af2c6690c0100
|
||||
208000 e6106de8a30aaa3a766f68c293f3e6d65a8fce065e3cc77cd673664e98121200
|
||||
210000 ef4713d3c71148ecd48ccaf0e94699aea892db14e96d42c9f9b5dc3bebb40e00
|
||||
212000 7773d428c1ccb624ec9590bbd01b65b6a2ddf5e7492c971c6eb216275fc70900
|
||||
214000 ac8feb946b5334c5c7a8fb1139a10515e793e6dbfd86b4cb8388746bfc2a0800
|
||||
216000 928ad2a44f89b85c98a09d56f0b4f52bb0aa71ba83b20b5b15d359fcc8670400
|
||||
218000 fff13cafef4b2f68469253b6f16dc92faee9dd2d89cb84dc898fbeeb302d0200
|
||||
220000 f883b0d6d534f922dec1b0b013a5c20401fb8dc415a9ad00dee5f2e94df70a00
|
||||
222000 99518d681c9a3cff109697fb177adad0c87198acf4b5886c34eb2d4907781100
|
||||
224000 2392de29fdd303b630135b93d09cc444e2f20f586a883668d8f6f1ff6d480a00
|
||||
226000 bd96a70691eda87c4b476aeff3a7ead2f6beb9de3c1ea55b5cf9ed4b97010900
|
||||
228000 99f0ce59a8091cf249e04412f02a826f183e26028fa94f03ec1d7210fd9e0900
|
||||
230000 48c20deec744cc9b9a3f7f0b6a2adc9a5f1ffe0a143af829406fca3bf0b60600
|
||||
232000 9da01f39ef5352a3049d3e3c1dc5d40386d4d1ea107aec6b9e5f553eb6231100
|
||||
234000 412a357e2a5faa3e1b48ee2653f495e6d03decc4b1cd04837166ce4479662100
|
||||
236000 d1d85904f04d0ccbc6b2bd4042ff9bf4d7bdfbf54b720b25f60b293c61cc0400
|
||||
238000 38a7e61fa8aca4d83211509538b1f8fcc69cd79dbac2c92bf6cac39c60391300
|
||||
240000 c7f24ba65bd4f922b84f81114db9ad2be144f7fa777c2ad18bad181a6a971200
|
||||
242000 630be888de7256bfda04c9d41a49b23388fd7975d267d94ffd2ddf121a3d0000
|
||||
244000 b4420d095b76919f8a969f91ec98e15c0749745513b75c74334a5d4e90010200
|
||||
246000 5e0b1e1feade231ce05c3c98ffe8f3c18aeb0f085206b4818bbe9d0290fd1000
|
||||
248000 45fb73b784487f39b9e60a4bd06a4f10d3849c82e9281f45987a64d7dfd41000
|
||||
250000 669644d68ed93931ded0223c6e41a0e94cbb522bf741f059555ee31e01c00100
|
||||
252000 d9f04f68da49fa9aa5955c43ea51d6949855215a2c60d563e0dc380aa6070e00
|
||||
254000 61884b36d339780c1f31568f3c1d5ab784b8892ef5ca87a13a2aca09577c0901
|
||||
256000 454ce9b1b1e150d805ba97c36ca6b4ae9982527091b37a6f7b3ada5e285c0600
|
||||
258000 e7bc3a9d2d669876ae359cf410df0c32673258bf206e23405d6334c7a7dc0e00
|
||||
260000 e4290046fb9abd54390d5a31341c42237d945142ed1d38eb7e01f1a489670000
|
||||
262000 3420ca86ddeb3e6cd4ef8127a2c72a55bafe807a4b963fccaf70f46159040000
|
||||
264000 70925346c38b740847f4c9c84eaf277f062eaca17cad3ce0580c3c4ef31e0000
|
||||
266000 decac5adb95e11cda6848398db5a75450f3b20d18064331d816572f9701d0000
|
||||
268000 355f632cc6bacfacff6654eb44f50d275ed3426dd48cb0df07cba8eaf5740000
|
||||
270000 87c8df8c934145854f8ccc549d654dfbebc206084ac9026894269527ff970000
|
||||
272000 98dd91af6fafa7450859f6026350fdd06bd1427d112f329fa23f00125b460000
|
||||
274000 051cdaa665feb1c21a6ca2f6aab93c2412d93895f4bbeb02445244d33f200000
|
||||
276000 84b8d5f8565fc52a66c2c6f9e120e3fea35b3cf9ac4d79e020f36f6aaa630500
|
||||
278000 70f6c36f426d3ec1510c6ebe7a2e04d263cbd9846f6fd87b6860aa02492a2000
|
||||
280000 1a36d61d9d0a6289e3e9088a177b61b8d70d560bfb7994729da4c3fce7200400
|
||||
282000 52b5a17a0d5e36a11c29916d60f71d990f9ebc77638f6636ed05fde4cfc91500
|
||||
284000 49bbac961b204790c5c594a7362a0b6b45be79c0fd1caa74ec443171a7782600
|
||||
286000 e15bb83f50c36a34fa023d9ab218096c81dcd7615492fbca2d3b3a52de662200
|
||||
288000 a181f3b5b0f450809ce5d4abbd3f671384f47221f102792960b2ff4695bb1600
|
||||
290000 b4fba01f5c41d7eb7e9ebb2c3ec0e927e4c3ce7f56e96db4a2bbfef02c170000
|
||||
292000 b567c69f0cc208e35febd700bab6ab6331202c7e48d38bb0d01408cb96ab0d00
|
||||
294000 04227803df8c2e40ecee5c6fd1cc9dacd8aee9360fa93afd5927a2ad9fb61900
|
||||
296000 4b02d03b4903ea08d3b23df5973d26ac545f4e680bf0d7b2fad14ed8524e0c00
|
||||
298000 1c81800f9e30598ce49dfbc0c0c7910d78ed9199967f5db94407f73de7c40b00
|
||||
300000 7827fc9a4812fab6349f0d25b72eb541ca33e95d237cf18b87fd2886516d6900
|
||||
302000 bbabf2e8d70b2530ed456ee8fe5b75ff736f29435e67f26d9171c25565a90000
|
||||
304000 06a18fc31cd0ee57bbedf53c92514bff2023ee3d6f6fc3d1df8d8f12a8e30000
|
||||
306000 f8a9f61ab6bef7448132c914a7340bd3b6b3d152146fd6ab68a1f27c0dee2200
|
||||
308000 2950959dee92a746873a9f1162d56b6a177d408689bebf8ffb87833f44710b00
|
||||
310000 7f7692e5f2f080e6a57fe09752a579c8fc102309ccbfe389f78db1bde9ce9d00
|
||||
312000 c9907e572ae53176273c47b627d76cc072743d7ab5fb28eb0393f838ca260b00
|
||||
314000 97b210a58a058c4725337503d452af0e56bcee223094f38f840bf51a1c680000
|
||||
316000 aa4a745076548480a63a498be7d3786596916171129a68fb44d83951bcc00000
|
||||
318000 b6c9f675cca8aa3e9decd06250b8edabdaa0d761a036d7ac0351adbfd1050000
|
||||
320000 6d6a038b32490a46f1c2628394435775fba4d5bffd5f49f6609f9b4f85010000
|
||||
322000 51684a5bfe06fc4ed406b07aea2f3fddcf3d69b1d7e2630daa35842e4b190000
|
||||
324000 5398848ba64429c88106285ecdb8bc482bfcabd092b4b0cbca950f86c7110000
|
||||
326000 8f01ae30b75f41e063cba5d8970147cb967ea2bae0ff2d697256d0c1bf010000
|
||||
328000 21480bcde28e7924b4f0cd14c12912a1bc31d84236521589ccaa40283d432300
|
||||
330000 03b66880bc6b5513a91470b53b71cf55814d21209a56f3a140240a848e0e0000
|
||||
332000 454f9761b765c0c90ecbbbf4fccd3dc0a7a93f413587efaba1ec75f30a280200
|
||||
334000 bb3dca129282a8aad2656b08f2721476542bb500814b2c57465cf96d93f50700
|
||||
336000 2c46ca92a99740ceed439611273e6cbc6f48e6539cf82e63089a71ea0a770000
|
||||
338000 1079aa2e55d55aebbb076fafe4a8e5e185befd63792c44dcbfe7b0dfcc960000
|
||||
340000 ecdc2dbb0f0bf3cd4729b00105fdc6c94df8bf798ef02dfba620f069bb8c0000
|
||||
342000 12b15945465291920319e9b1f4ddab9826ab745e160ff03a7445882259c81a00
|
||||
344000 7990baa2b3de141b2af88861a2690eee25d3f682ccbd6feb9c2a11ae784f4d00
|
||||
346000 0cee8dbd07aaa93397903eddd82ff71e083a735b79ddb60f044f3fbe46960500
|
||||
348000 bb5d260f4bd9b15fa474e7b2a39c0cc813084843005aaa5204e4c0620ed00000
|
||||
350000 276500a869ffeaacdf11d563a5a1c0ee1e9a642aa3739e794eb81bca1edb0c00
|
||||
352000 59dc22a2b0ccdaff9d6ed5853b20b00495c1c14d788f97cf9c4a49cf7d3e0500
|
||||
354000 dd37ade9ea561c1b7bf042669245ebac5888963eff15a697860c53f9d89a0400
|
||||
356000 26c509d3f2b55e20b3d3eb8e599873d5717222210ec3e51f0bebfe27d4ba8600
|
||||
358000 6b917321bce6660a0fb4100cb7745cee321308183979fa99ab8650cc02ae0800
|
||||
360000 7d03053d6eddfcee5b4bb3ee90c07cf8bfe474c6ae5c25565df3cdb3dfde0e00
|
||||
362000 4618a8b520b14012d2b695906754224a997a452a69911da3e99698f5e4963000
|
||||
364000 3ab12b4bb48fe7ab23fd4a2bb6ec76776e7e5390b07ffa621f90831e50000000
|
||||
366000 9e642c7caca89b912af1318e3b1f05b8f9aab360b36991686fa608639ee90c00
|
||||
368000 d0ed09266acf0aa29427c70d4aaeefec4742cc54f9cdbbf8385e922acf962400
|
||||
370000 2b0f4e522f9c5b895c221da318deb0df7e42eff6ad35ccf67318d91030bb1f00
|
||||
372000 7c684a68da01acbced51f781b24871dec48be1b1d34ba8ff6772ae191b5b0000
|
||||
374000 8a0b8c529b9dbd77192856131652b62f86f43a786532ffd0cc430d3aaaba0e00
|
||||
376000 c6a12c35c517ae09d18bc7a64d9b2ccdecf910e15bc8718e1a17a3e4ccfb1200
|
||||
378000 629402f76cff61712b4c9fa612f7c521f6892b1f5da0bfd66d7c50e197a90600
|
||||
380000 9bb67fda51b3e5208b816da86466431d8c7544b6907a91457775efa7e3fb0800
|
||||
382000 55448b83f8fb63a8ffeec28d3a72716464438a0528c7b646859af037a4880100
|
||||
384000 1c1ecd02e21f6248dcf112a114509e1313544ca81bb88aa02615023f26e62500
|
||||
386000 9fd184008c97bb880318c2eb9291a22fd18b02fe53a7ae11e6932e5e14560900
|
||||
388000 2f3a805a247051ce74ce1be209bf2e4cd9f31b549be00fa9f9f68e4ae7151b00
|
||||
390000 b53593f2df2e02d6ed627ccdcc8dcfdfdffc406abf36d2361046d7ef2bc90700
|
||||
392000 53607c9c9282a531d8dc126adccc05d07cd066b3c86cfb02f3af072782c70400
|
||||
394000 6298a0cf6cfdbcea6c4f5e744f64643ac56669964318b2d4d76f3bb4b23c0b00
|
||||
396000 7ee355d00fd4a3fc5527daf9b5acc523eee9189b1d3c8239558d6edfdc9b0400
|
||||
398000 0b015fd742a5c235af9a94e3ad8475fd8b6a0963d6d97313effe43dcc8ac0500
|
||||
400000 f883c47a45250292ac4183663435c1f746c1b1f5ad15b844cedcf46612270000
|
||||
402000 c056a43b4cc966c3a780697d0c1885579a611a82198cd7a1d6385265e8070400
|
||||
404000 9e40aba342a45d392ce32216f31451861196659a263892a57ce66abeea9b2200
|
||||
406000 cb915f7242868ce3afa288d6d8ca5f3269ae9431aca12cd2a0006887d67c3900
|
||||
408000 bff528635d7be906affaa33c874bc40f21ec993d3fbcdd07acd401c79d1c1a00
|
||||
410000 b5517d1be792acf11a80373e663a2e9e936450da908a6cbaa24a18d311f30600
|
||||
412000 2e12789795337cee80409b4cd2421193931cd425a4e7bd0c2ee028ba5bf40c00
|
||||
414000 f685f1db62911b49a4229109b66e45ee210452e1c8ea581443c125247a100b03
|
||||
416000 5664b540c566dbbcc02b5df7a5fb4a781e5b0993b2712924ebf55cb1bd9f0d00
|
||||
418000 9cd7d7162da2f3d3c5417205d0a9f36be880eadc19570e91704d7a21e6b50a00
|
||||
420000 eaaf82bbe73c14b727b0dd22a475bf856ac5a14e4c6f034647467c377ab01100
|
||||
422000 ff17e24f352d94ea699e8105eaeccb1abfcee0c435f496d0751a01e9ec891000
|
||||
424000 4c3541b764eb3d1da13639a0aefd1faab8e98473419d817ad4ed31f4c09e1400
|
||||
426000 59471de92d249ddbee81761527076d045404199fea6b0151990baca491682400
|
||||
428000 4ebe03daac0ce604a645e424d6027845b6a6f1e7b2d9b9d8e0a99d116a151000
|
||||
430000 f4c3c2f034110d061717fcb782fbaa8da0e1d3f68adb71c6127de07f46060000
|
||||
432000 ddf4bb8b6161762811f3edeefbefb6936a4741d0fec253f935adcaf57a49fb00
|
||||
434000 655642c201a1f0e9e19e73d34da641c5d92657c0a1ca7503cf6c0992506e2800
|
||||
436000 2685a148a50650682509a40346f405a2089ad7b88ea56b8f818b9b27fb7f0f00
|
||||
438000 805fa26f53bad065bbf36773dc38d3687a6b54f3979a0225786f17ce7f2f0100
|
||||
440000 004d5d8107beefc8bc3cbea96f7d3b5827fc810fe565b5515ccd66c3f68b0300
|
||||
442000 b6fd38dd9546d3b8c79cd8819b21b633a891ef075fb55234b49357fb0a4f0000
|
||||
444000 b3af1bc7a518aeab1132ba240d96eb3edef9fd01be9cbbff54358389fa590f00
|
||||
446000 a93dbc24c3ecb0ddf9896db84671a77640c4db34bf14fed1fbe208f6e0080000
|
||||
448000 47d76c88a523462d78ae3bb671a862c6eed7e47f112572515b3686c8e69c0000
|
||||
450000 07d89f9d023082d80b35d22aa63a18a5ca43442a5a79ed76c9024d4af67c1700
|
||||
452000 6137ebaad795bacbd419ba2fbebc4bd5052291f4f120539f61b9b3a8913c1100
|
||||
454000 98f8ffade520ddb1055446ae4b1cfd50952313d59cfa4a728d943aeb54b50e00
|
||||
456000 a52437c9190d6b60f68bc874bb5eefb118548e50aaca1c6fc7b8cd02fedd1500
|
||||
458000 cd5d998c4de95b8dab442e6e9f601d7dca16c4beae55bb411016f19026fd0f00
|
||||
460000 74653e0e0486fc5a2def3811d1f7a06b9bc5a3023badcf0798757bdfb7d10a00
|
||||
462000 33ef2e66b747345288e06bf6d54dbe15a4cb5bc7fbbef3b00b43f53be2e35a00
|
||||
464000 6a478ba0c8f7a5fe7e1dd9a27cf78137d396317e7230eb7a8e170ae29bb52a00
|
||||
466000 5251a2bc2fa4b8571c2fc27ae263296d32c8f054145c844d3be2105d0da42000
|
||||
468000 931a8f6f8c6030dd0eae11169c38b9274dfe299d968b9b687b21fd6e0e652c00
|
||||
470000 39b98123903dce9bf87b1f20189392734aec3152ab58f9220b62c882f68d2200
|
||||
472000 aa1fb1dae4bf40ee7e266009430d27350557cb3363c00203b17996f8fac71600
|
||||
474000 3565b3c18711b1064fa609888f44e1476fa58f0c4e53aee6e9a3e2aed9510000
|
||||
476000 3b1e6569778aa321b2e21dbd0b1b0aae45df5d738464fb93f6df74a8f2030000
|
||||
478000 c3219bf873375c3dda1fa668fabcb091e4e725f0be7a0e87cc6b6accea1f2100
|
||||
480000 4a7495d0a26b2b79d129903d9ea3b64616585f5f48f9186cab18e3939ce31100
|
||||
482000 600dc3d1e7bd2a017505df2cb1a5bfc0c885d1f2f11f9b91392fb3fd125c0f00
|
||||
484000 918126796d99049b08df6095b62248c8f21a7fac8060227af1b26a06fecf4b00
|
||||
486000 ea564932a1acf71b4dd14583f710d39bc9e5fa4868f5721c6966f213cb3b0200
|
||||
488000 b51d4a55f2aa8a7cab6e62f5ba4c6ccd0b6af7fdb5a56c6d8d81875a081d3900
|
||||
490000 fad1afe2e5de70091236484d65dfa7a766af082c4d44f810be7cb82cb5191600
|
||||
492000 e85f75bb38c19916a89494196008afff58502e654187d6d279e8ffc9481dd600
|
||||
494000 7d1506939fa00fe29f75b4125eabb503bcf341dbb4821992d810c88f95201100
|
||||
496000 ea72120d6f3a552f3c757a027e88a22170c93ab2531d68e708ed7ff89ffb5500
|
||||
498000 229ffb0fef54d5df341eca734bae2b0e3a0d58036ab84d643096e3a0bafa2200
|
||||
500000 cd24282fa6c79be66b0c7f19b7c9136111d06b2c2d52130be8c5dbd4a8ad4f00
|
||||
502000 40163ea70da8091d0e670bd5c5468c1123ab799f13853c691b3d04e352862600
|
||||
504000 6f2febc8d7948555f669d0fcf232742e8ffc37fca37be5ce09adaee0ba442300
|
||||
506000 a6ac99baa9a0a41e535177e6b63ea8a29381b29682ecff28a312cdb078026300
|
||||
508000 dfd1335244d69f53714a3155e1fa6e8feffadb4d4e1bc0861ffd25c775280000
|
||||
510000 5401c1510ba46f6b47674000c0d84ab83e46c4e0db4ae1d7a2760b4a163d0000
|
||||
512000 b4d9c1e4749ae990b218f6738ba88f54e9f54421361d8740216e641b27b90b00
|
||||
514000 a5d84ceb8a691b66c68742f8ea5d98dec1157f5b3077841b8c76deeea3234600
|
||||
516000 add424f339350df6d087a2ebac9561ffbbbeec743f0f79fb803da7c5985c0900
|
||||
518000 fb38b2ee87b1d2b5fd9e92d4f940b06cc9b129e24b03bcf095c234d786a50b00
|
||||
520000 51e71bc805470314251a270f53d3d069e545fb6ef6c9dd0f67b69d3a2d330000
|
||||
522000 412bc40d304226eee6bfa3a1c57b17bc7a49e5cb129a34f95e5705fe73030000
|
||||
524000 3a5cafdc89141b13615c3c142aabf7b3088dc1a4aa0a23fe9c974603ce1d0000
|
||||
526000 eae2c98a048913b8f09fc2d417d456510da86e1858a01775d5ac36423c110000
|
||||
528000 2a8e0f39ae7b6dc17c7540d044ccee740b6147a7ca35a9d40c8b6d663a070000
|
||||
530000 ce7921b49e971ec1446167cd67b10a114d3e831107b1ec63e0635b1fe1041000
|
||||
532000 2fca5e87af532d020338d749551ba044a30f34876f259ba9beae3ae423890f00
|
||||
534000 936dc73440166f300613cd39568d7525c2807d9670ca61b93b578061e9e01100
|
||||
536000 e3e31417883097d7e5bc625aa9b3c1597452ad43a6ac7e5e498aa5ed30d91f00
|
||||
538000 d76d40029e2ad60fb0b4f717398c1d89541f272b34171360d32390e220c90e00
|
||||
540000 d46ac826c396d67c4f7a31ca4ddcc905f33aa0c40caa101f08fc292ad6e61300
|
||||
542000 04ee78b374ef45cb875717e81f695496a22c7dd8cb1b90b1e80838f31f3d0000
|
||||
544000 8c613d19c7d28c404e6d9cab506581becf15b955c69f80f7ec9d263e384a1300
|
||||
546000 c6190f3e0afc121cef41032b4dc385c418f2cf0b39a5e0303f9ba739181fa400
|
||||
548000 2d8dd7218d0f334d1883d81ac1174af1ffe4a3080b97a6d7876a61d605f80e00
|
||||
550000 fbd670b8a80d7f651fb382f29a68904720534439efac18f83d8d578430c51b00
|
||||
552000 aac1418667afc7b27f784398b61248f01863338e46ea2555a7d75dd590c10100
|
||||
554000 2428c9347d7f8165581fd5e46962625e64e5118bba4adda2dc99664cc1c13400
|
||||
556000 c3aadf7137e33f31b48e297c920f2072ee8cca86005deb8c33a6813309671000
|
||||
558000 a5bd9293a32dce8939c8456cd92602e6f8dc01446929748c7157f29f93a01400
|
||||
560000 37699ea945b7860d16a7ab0afa2aabe1dd9a755caf7e0efaabc8c71490b50600
|
||||
562000 c192eaa798864f1e17f53d15a007d3c207764ee488541ec588e1ddc8d1310700
|
||||
564000 4d8d69335266b92a11cafa007ca3c56624aee7f553713b7cf7c27d3bfb1d0300
|
||||
566000 20673d9c709be2821c581ec05d2377119c74b3f26d7e00675e6ba76bd4050900
|
||||
568000 13a166588c8995713f6cff38d64fbf71b65e8fcf1c203c31dbba74d6cd411200
|
||||
570000 d28a8c98d868b0b03627353a42ca0b73aa58c55a1613a483f884a76a1cb31d00
|
||||
572000 86c3831b429f78d5a9abfda786c77666052bea265d43048593f961dfb08c4400
|
||||
574000 88d4c695f63b3c341c2288292cb0047f2ca353bd8b875da5c43423c65cb11600
|
||||
576000 f4fe1d8f38993ddf27b979a64da27c5724fc87eaa6add5cb4c01d6babd471300
|
||||
578000 6be8ed62bf8aa20970d9c7efd4831ce15895b113dfdc2a0b49436a8770bc0300
|
||||
580000 0290ffe64acac8ae34435c20080d07a73ef4c9a3076fb53c3088c0ba77c40200
|
||||
582000 c74aa7ed18035a15293e951d29a1e099a75de1e6c8c7fe575fb6c64eda610200
|
||||
584000 98f2225178b97df68a9ec502dd9e59729532b643b458938c1b782eef15753600
|
||||
586000 ea113e1c3abffbc8915e0ab2a555357a68df463fbc27513a8becf6fb283a3100
|
||||
588000 c4c1953a93a6df460d17b90fbe868960b251bd585a92ddc2903639e14dc32000
|
||||
590000 02e198ed3e6a5626e9c3b0f7d749e8bed2d8feef117d89237f6c7192c2fab606
|
||||
592000 09aad7439874f955f4eda13d2f9db4e3b2d296c9d49a1ae9a6fa67a731360d00
|
||||
594000 d883a289a619552d49abcdba072c498c26b71766630c4c1168a1b49db268be01
|
||||
596000 726565ea0fb158bf982be9315dc7a9cdbe85c2571055a29d76b9c1f83d7eae01
|
||||
598000 7dcc6f83e41c1041cdcd06e48d81d9e7e6eeef295a6eae7d51421a60c7fe0401
|
||||
600000 e78f4d1ee7f60491fd799061c2a6eb1feee16c4b292c91801445c74658380701
|
||||
602000 b0c838d72a0458fd4cbefeb23850f75f0820dc1977a31dda87d9cd6458181d02
|
||||
604000 c7e27eaac5ab0afbbe88d1cb3137b4ff687a4e5667a3e189733f24403c064600
|
||||
606000 be33b3302adb130145f6d00e630bf1de9e3e8dcb96aad4ba28410bb08037ef00
|
||||
608000 20faeff2fc103e084a95c0b02cf8fbcca5f02a06527df27b606f70e2c7de9d00
|
||||
610000 8d74ae707f6957469911ddba5afbb792ced8787a4275354686a0703cadca2700
|
||||
612000 58fd955e509f751a376ed4903c7e4451122bbd7cd580ed7e3e7c64bf03302a01
|
||||
614000 19dc1893a608f322f75733e1794ac94983d71a1ee8db561fb26551e6920e2501
|
||||
616000 5d9a6c39d33f353367100269a8c951996ece756cb76d18163796ba5de6472302
|
||||
618000 54c4ce4ec31c98a7731c5ca0a322c35fcc0af2e2608d201c58e8a326cc590f00
|
||||
620000 977116ab3e0c08a486c225008f3ee51829a3ff35445fb4d665128e3c95975f00
|
||||
622000 16f5e466800549255d843f3100da6882bfd0a9ee8ae8a8ca003d4bc9a7f30800
|
||||
624000 e5c1525d74745c9528e8e0c3000bec9b60fc36170fb43fc6c0cc5c6a75094b00
|
||||
626000 47fa0b6121e1171cecf46c442a3f64657cb6a46046221ae871943590f18b9b00
|
||||
628000 811b7efa7fb5ce19477ac6761616382645b707347998b47e18813fc538ee2000
|
||||
630000 fe7d6187a01ee27f09788da229df33e6cf7c08ae68952ed0dbf8cc205e700200
|
||||
632000 71cd7fb90678abbfb37734d5dec40803ed0c201859c770841fb55f6b63354d00
|
||||
634000 b2ebba407b9e87d681619dcdae5a2e8368af4feef22fcf1cebff9821bba02800
|
||||
636000 2bf6b97f06041137f1ec0803e3b5f91b488c22c4c42642cc9b3b547f8bc20100
|
||||
638000 a8fd164910d4caed1ab64532808ee24b5b2f69f33796d3b4069c676f72672200
|
||||
640000 521ecb05cece1d15ee9542d6a1033f438dd322a594ffe597a88163e7e2cd0c00
|
||||
642000 156f2cc92aa032b90c5b7c4546092e0345090ba0f47ff6b78615667795d02e00
|
||||
644000 192bdcb95ab13a8a3b7a34f774b09bf12ab9cf634f7869171f6da9eeab7c4600
|
||||
646000 fb8781abc77e2e75d2124b4a8ed18cb36f7020d5db80ff2baeaf0c280e693f00
|
||||
648000 335fe1d6c8d21b19798a830d44db9658dd092e819e4ccc7d2b288e9b608f0d00
|
||||
650000 82a65a1c4af98a155ed5b9eb0c368a03a989117e1baf42375ca757a3097e3f00
|
||||
652000 bbb48b8b21922067c5421028b1b42ea9bff091868d0ff31b5ef1de3b01054600
|
||||
654000 dd417576b9953513819e6a43a2a271c288721565c6f69a05e91a037ed8d23300
|
||||
656000 cf4b4d97f62cffc4d7370e1313d71895c9b3a6765be69e47795b9b6fe4c62700
|
||||
658000 e801054d72b06a34018f5dd8cd94bf1520d54d312ed1112b233faf383d7e4400
|
||||
660000 a4c59f03cad50144ecd9c2d6f1432e2d6e27ec48f97e82fd7f142fd3318d1e00
|
||||
662000 f7caaa4b8787cc2b8cd9d814a21d48230c270b79a7bcf4be7213dd34ddb10400
|
||||
664000 033a00fc7e4ff175806c90cd41cfc7dc8bdd71b84c19f7f4114c0f349f915600
|
||||
666000 7bf2b88c2746c27e53f1eb7630f64a5a01f2c09de9949b97f1e47586f72c0900
|
||||
668000 4638b82cc868b22bde281b96f2935ea9d553ecbcbb4a77baf975ff5478a05100
|
||||
670000 6839f3e6090cb4448d368e1d0c5c1b97a36a40555c262b8dbf42133ede003700
|
||||
672000 9aea074cd7069de9df4d30ae1cd6d0bc8067b8ccfdcaa80f970e4c283647bd00
|
||||
674000 1c80bb790c8926126b1134ee20392ec57f3f9a5e66b32855e9ed8c0a30337b01
|
||||
676000 1da82478a274680c8142df8c6c1384a367c05a50f2f4f4ac828f5daf63af4f00
|
||||
678000 0f67ddefefc485341d1d8c05478c49d724f47a5c322b41db722cb7cdae096b02
|
||||
680000 70721000c7ee7e5cd5fcc614aa2dbaf063adff6a5799f974f4d29745f5fba400
|
||||
682000 03c4ed2bab7aacf7007e9d59ce1320e29efb94128972f998ca4e4cc6aa0e0000
|
||||
684000 e054a51051c193801f1751ad6f3a6a76b15dac99d890aab65e5925f768c00607
|
||||
686000 2498857702a7a2a63d1ca0331c2f3ec5b3cc72efc39bd935b5fa77fa83e3ee00
|
||||
688000 a71de0d06f08e6fd6eb76c8bd420139ca3f51597cf72b1ec43200c741b9b1003
|
||||
690000 55b13d840d8bbc8fa53b8400106974c0d1e85ec41f3571086cc2842fbf330000
|
||||
692000 5e03d92f702b5c339a73eb8d4649ad6505856fb8ae6e0def70104114840b0000
|
||||
694000 c13eb7c656f8247b10ceedaec088cc5ae32d4d3a1522539e582d6195e93b0000
|
||||
696000 4917bc48cd5ea7bfb982c8a379c5f2513bbae2bdea852cbbb30d92d3211a0000
|
||||
698000 5c75b4d2b526f4a5eb929a0aca71c2f9c61befe97750e18330f6f62a93000000
|
||||
700000 32003137ae2d2c24e46964288fa0213634449aee1e2f39273cd3ac6a29113801
|
||||
702000 76c109a1d098d90a17415eca0cc7e5eba4ba278688e3874c68556af262608901
|
||||
704000 854096e89e6299f3f183ca685a96d3a4db1aae7678722d06b26bc8dfe9b82d02
|
||||
706000 1102bdcac6bce1f83706e13b76a13849c3d1f41594e54fdc7d0b2b9936b29a01
|
||||
708000 2c70e4e03df40fe59b07618fd510ceffeb8cbd3eeff754df29e732f67ffa8800
|
||||
710000 65e16311084c566b49689029290f111823e3b00835cb2ef4df6fcfa2b29ea600
|
||||
712000 54cd1916a3231de9f184fff53063dcc2dc19895492c54cc8a6d91f9117280000
|
||||
714000 16ddebb1e5d213d2cbc895639e8a882760a349dc3705f145ce0a2a37b4020000
|
||||
716000 c1a385f9aa27e4b52b6f46f4ac4de9d8c7fe2f3b5461f3d41a12fac25f2f2e02
|
||||
718000 63754e727488cba4a236e49063640a9809499f99e5e5463517ec968a85c24e03
|
||||
720000 488bb78ccb8dd29e5cb39be7d6f52692c736356e1c96793eeeb1c9e8dd718b01
|
||||
722000 630383dd2454fc032ce53b1ab2baa3baecbeaca8f085d4205799c142d3aa2700
|
||||
724000 41e4f3305c459b14f71427e2225065e172c02574ba77fbeb990ce3fc61603500
|
||||
726000 66fd75e5479d746a1151c2bbbc8f5bc15eceed523b49c6b9d04bec2a74e16c00
|
||||
728000 e051e6bece754b49398ddabdcff50493abf96d01820a690397f97e7b299c6c00
|
||||
730000 26020584d7a61cb172da281a6630423cbf978442fc27fe9cf0c0375e837a0700
|
||||
732000 44780ba0e159c140881268823cf1264a95d451a1b5a9bf3aa9822fef3944ed00
|
||||
734000 aafa7e0f82a1a2ad73b2d485a2ca36892ced9b6dd12cc3237fb493816ff03800
|
||||
736000 104a98d89c2109a30357da695770cfdf49ec5166253dd30803f5d18a5c0b9c00
|
||||
738000 323a1f4340b5276ebe553dd225a8b6740e87ef77cc4f16e778e614bf21413900
|
||||
740000 ea546a027d996335fb380d30e90fddec2bd97414c97f774c5b541e4a393c1600
|
||||
742000 9660aaf8c5b1a01745eaf50b031d289c8f64838cb2ae5090277d8d2735477b00
|
||||
744000 bc3a53a0d951e21d150212c2ac00bd058338d5e5e9623eb53023856864a40a01
|
||||
746000 29eb9f44d320a65e42484853254bdf46b8b87b039d6cbddcaea537c38e547900
|
||||
748000 1ac79ba4f4d0b71711808f7dde085763759e9c88ccfb632548f4b6b1e7493800
|
||||
750000 4b5665627c95e9c8a5e49ca6ec0ebc1790a3ea386160b1b7b243a407c6c80e00
|
||||
752000 0414fa5c03fc714070597310c4f05961cd84f3798407c9f1217d419164607a00
|
||||
754000 0cabcda319ffa416a289c82775705accb5662666a0ba195cdfaaa57032978900
|
||||
756000 15508ad7500abc7038f06b46e30ee5b240dfc8b12a697b4328fdae652cc77300
|
||||
758000 7a02d0e7af76ae13ecd7ec81fb3910c1cfc3dc30018a1f9dc2258bee33da2900
|
||||
760000 7bf3c1881aac230cd4447527df388c030e2047408e3ea6240bbdadf369e75e00
|
||||
762000 cd5e219e3d08d9c0efe2670d5bdad7a7a76c07d0977fe40efe8dfc201b387b00
|
||||
764000 586b6cc24e8e7dda3f481c808ed0722c45aa25f06e9354647118def7db842000
|
||||
766000 21486150a69d967eabe7b3f00d190d89eb9453f000eccd8bd38873ec3a658600
|
||||
768000 a162f71cba9477a8a83d49f41c81a4f9f08def8f39d978051eaed465a80a5f00
|
||||
770000 a51d1b6a2bb71baefd41edd965a23e5320bf9648946b1ffe108b2fd73350af00
|
||||
772000 05763092aa52c5472a6c442737dd10a2a53cd45d393a793577d64cde0557d300
|
||||
774000 a8c50361608887e14fd4156174ad2b5a06df726ec9bed872712d4c0aa4ca8700
|
||||
776000 6506df6ba7f23bbf0d9e3c4e65133dfb297b9d1b0f67304827215f81f9656300
|
||||
778000 36492e2eace9af14fcdce8e184a989d9075dfa651ff301777f751a5b3c914500
|
||||
780000 e6914be95cfb71a92461418c1bc68fd8c694d7001b6ab805bfb640c48c230401
|
||||
782000 10ca96d175e05abef86b5c82380ff8462733a9e431db459b99713962e1884301
|
||||
784000 25ec14dc5be892aac438379a9977591d2760acdade40c8d4dc2203101f2dc901
|
||||
786000 dcb5159badfc80a9135ae718de46a2d82e2ff649696ebd8e1e914e0695117f01
|
||||
788000 c506c528c667604a58ec45ea9c2507b0ef6a750fafbe633ea59c3f7dcecb3201
|
||||
790000 1a0fa63f19285277a128ab4cf6b35c31abdfe17418806a8f01efe383cb010b00
|
||||
792000 61c75fc53ee6ef17427a1db7199d4543f30a7276283e32cbd468083c51818101
|
||||
794000 79bf97fe599d777e6f9e29b26da4fb2fb3be547f4a89688a1965bdf6b5617b01
|
||||
796000 e80531818e3770c47049fbb71630f50ab8844d95a179e205ff29885224891600
|
||||
798000 9d631c30c7cbf0b031a12641cd7e9c847ede6cf1aebaacfee4b78905908f8902
|
||||
800000 a517dc2b58d6b80099d55cd95cfa00297887e8fe8c599af9be5b79a714965900
|
||||
802000 b5f65e7f4d4ec5288b0cdf50a8a750b002a7be87fde51c2bbeff2ba3c3096400
|
||||
804000 bfa15891a8a27e3c6a2ce8e20977ff7184c9eeab7560dbd52a2e27f201b75700
|
||||
806000 57ac64f4c599b0841a560a3fe81a73d80a6805111ac1217c24ebb556ab0cf700
|
||||
808000 dc2a4a3b8ca622676d4d6f62bab400cdddc1a8f3b7b9f2cab6c1cec75aa70700
|
||||
810000 9e737b8e7be3fe3fc4d0b6530421c341a085662c9fdfc765b0fe3e9bab0f6800
|
||||
812000 71dc104102ea46bfedad0a6ee9a08a20ee64250780244264d69e8ade66ff2d00
|
||||
814000 b37f749d8b0693b57d30f8effb40090fd4d44f65c3d53cf2d936b8203d8e0100
|
||||
816000 4ac1bc4cb55f8aa45504ea4aa489655c2dcdc90a3c25d56efc2f551b97218700
|
||||
818000 00426910f574fbcc0ded3c0e365e634d53dabc4dbd80cfb1a972cb030c484f00
|
||||
820000 e1e05c4cd5bcbd8e639fe59e688d5797c5458f57f5b67056548bfd85382f1600
|
||||
822000 d7a202fddc340c4de738b63370d199df35f8e1d5f3a67a443aa6318cf4e81e00
|
||||
824000 ce130fa7410dc09010d36c30d023b1fdbb01b5ce37e1e79472e6c915539b3400
|
||||
826000 b281365267db224529b26aa3a72fa70a637fff3775daa3772ced7767410f4400
|
||||
828000 9dba2f2ce252400c72a37c66254bb342a419fc872ee4f1cb509852f85e803600
|
||||
830000 6ed485cd073eefb29cd883657023ddcfeaba10649dfd4c3ee7cc878bd6401400
|
||||
832000 e37c3ad2fffffad94c44be23b22e049bce16ab708c80b56610ddac1d62694100
|
||||
834000 7c43c543ae2451efe9b3d4b7af0c33ef1529e36bf6c9cc03f43d6bb3b5f03600
|
||||
836000 270e62eeedd8f3fcaa75d2ccfe074b516d024673028efa5d10c0a30cb3953100
|
||||
838000 2fdc7dd9a2d3f5102617b258b9bb4f93dc061f9387ac89dec55da19ba4b52e00
|
||||
840000 5940a87c591def5d6649c21198b4d1523582f840e15c68f0901f6902bcd71100
|
||||
842000 c630058deeffa304fa94121caf17116928b13c1e144b42012a1d7cf27cee2000
|
||||
844000 13f18a6a0afe9df2b546453db9a3448d6e639ef818e6edeba9716a812cca2e00
|
||||
846000 319c475337f320ad31638c64219898c86b18603a78003bbd47fd930243951100
|
||||
848000 00f4cf00e6419c0a31bc7792dd43dfa21e2f9a72c3109848336927ac5edc3600
|
||||
850000 833db8b25f228654addc2ddb133db9f3e068b8aa8c10935129dc2835bc663b00
|
||||
852000 8d9018b20ad628c8ad864066ff8158925bb58bdc3aac0f68a783326e6e875d00
|
||||
854000 97e5c8876efec99fab384a1912cd4aa6eb57beca076d932c7c5c050c19452100
|
||||
856000 0c748efe13eb325fb04cffe9833ca98f353078a8df20dd8ed654c60e43d46500
|
||||
858000 3dbbefb7cda140dce97a65321a9eb35ecaf8d3345e5f419f425e10a77c531f00
|
||||
860000 cb8043247ba59a73d2c8ae58acd979ab9d6eb179238b65d13916cfc5743d1300
|
||||
862000 1c2b83d67e7efa7812d81e6d7153844896f17ed9786a83fda74eff96de754100
|
||||
864000 7dfd84d0ec05762faef9ed3d1bdeabc54f757759ff8c3a7a65e5bca937d73f00
|
||||
866000 9691e97268cb1062b3280af1b64c613e41169bafcfb64dfd521eafbf81af0000
|
||||
868000 0e22517171db54111823ac1cd64255a1132f5619c03e11b688e0ff3e3c470d00
|
||||
870000 f8561b28fe820fce55502d9c4398d289c328d3016a4243e6f0d9151b220a5200
|
||||
872000 20310a6792d04c69b88a09cc3a006df200ffd6317381f4202e40603b8c603a00
|
||||
874000 fbdc5a99e701f4ba330259071fdec0edb386c80e5f2b9ac97b047a7bdf970301
|
||||
876000 803994df0226969bb4cf0ab06bd2591f53e36a0f27d9c995a6f5aff168a03d00
|
||||
878000 fcb4aebb4e3c709516f5910fd1931a3f0f5e6224d4ae5dff97787460cc833d00
|
||||
880000 7e818beedb72044b7a66a5baa531a8bdb882661d4da02a74a3b8d41964bf1100
|
||||
882000 85a628ef29131d006357cbbaf251046e448b87e3adc465c876488f8b8cd11400
|
||||
884000 8bde5872f01d481aa371b6072261e1ee0f16f2a30b41dec50c6d30c935911600
|
||||
886000 e9b33e9b7eac3ab2aedc9092cf4e59371da284c6640a330168f9bc80369ef300
|
||||
888000 aac59dc510a325a64c5607f7e0ed60ea5c0b7e654e10d31ce041021036b96000
|
||||
890000 bba5a376aef036bde6fc3957409cd33e005e44abd69b3c535fe3f4735bae0800
|
||||
892000 df869a375940e0336a86fcc33f86583426427afa41e4856578746d4462ff4600
|
||||
894000 5fdfe46bc5b6901d516814b1e7f6720c9e8aa3c8f8e2de6bc222758a2fcc1d00
|
||||
896000 b89b5017ab7df4cf4f2a626fabc6067911e7d621c8a87442e674a513daa70900
|
||||
898000 6e27828b01fe159e1eb57222157bfb61966989d747c33610816877db6eb33100
|
||||
900000 90bf8098a7509314641a443156bc6e02c73b5746a31a37107d4df2d21f443900
|
||||
902000 585ad5d30942014c3ff05f663c7573992e98f5edb1fe0d9350a8c49d2cdf0000
|
||||
904000 a93b48904147d51d22ba689d4c785c05421292de13b2ad8dfe1599e18b0f0400
|
||||
906000 ae18f3e957e48391e92ec2551b229ae923ba787746d7005e20058bb976ed4000
|
||||
908000 a0c2aabc15e9df05aa9b693cc8e784148022e7bdd2598031ac8735773d4e2700
|
||||
910000 2c9e2695e9d425053ac19c465baba95fc630a034e7d4dd7d7d81c0892ea66501
|
||||
912000 97213f8e49192cd72d568292782c767f6d1938e6ef3e6c6f4754de4fe0d00501
|
||||
914000 6bd050675b4b3fa2fbd0f108f349d5c88bf9132b8a3eb3911135964b48401e00
|
||||
916000 1f6241e35952b2977dac196fb70eaaf5cb318189942163e8e7009cc2d5406f00
|
||||
918000 c7b76e4808a1c9b8cba3750f51062350dc326c66300eed9e4b90d52d7433b400
|
||||
920000 4a424290ac7721ff5db273185ca99cec19baa03b0a7b5ef2fd18af57abdf7b00
|
||||
922000 348adeb015d72fd4293e49f04101f9bd171e8da71ea260119e2c029d15f38f00
|
||||
924000 a7d3c1065f46922da14d8ed3ec1fa14cbc977580af6a9039b8ee6d7f285acf00
|
||||
926000 b82b7d4f406c6fbff9c78e81dab9158b273c9f5222518abce8c01c22a51f0600
|
||||
928000 1c3156b521ef28f6b1cd10695271993d4cb843e9f706757c9f404c908d947e00
|
||||
930000 43706555a9fd87e797a22e6d33e5c912784ffc221e18c3648dcc6ff90337cf00
|
||||
932000 43c123533fc8f8f5f27da874e06bad8f34d0d2e41bb1d36830bc4acb490b1f00
|
||||
934000 ef1e26695a7b941d705322fa58f1e4bacac101ff86256119cd0721e93c112c00
|
||||
936000 5db29c434e9127b06ba2e60720d59379b8aaa3ad2331867a490832ea8f483200
|
||||
938000 fde9ed0047186a82000762859d7c12ca1bb43743dd2aaaa86fddbe92241e0100
|
||||
940000 20a1037552e152ad6953839b3243a5efc67bb9ba3edd2a6178c8bf8b3b532100
|
||||
942000 243959a4bf90eddccd23cd8272328a5082bceb93c8876287b4bfad138c450f00
|
||||
944000 335afbd76ba562a564f81c8fde78c5b7300498124072bf68c68c8135159e0100
|
||||
946000 8d286a7c81a3e6dbd66fb40df056cccec3fc47b9a9773223c53bb4b883df1b00
|
||||
948000 498759dc7471124d788b63f853e06aba3a4bec6f6edc646458aee6b82e922800
|
||||
950000 5df7c02b2a07294f2951e2fedc3b83d566313dabf47e5c929b1be32c0d050500
|
||||
952000 d7cf5146d4ef8278a2fb448b1f9378052217e365bd4ee3770de50f1bf5050000
|
||||
954000 900a2232d24967bf646b2983cac75d2204c0f32bafa2e403ee7af17279a40a00
|
||||
956000 6f257758539558b69f3220bdcc96c6ab7fc6886a1ad394c67e589880466f0a00
|
||||
958000 7e6037fcb08d186b44e98c22c2c5042f29f803bf833ac339d4bc7c57fd0c1000
|
||||
960000 8cb1e5c9b82d7cf2aa39e0b1de5632eb9aaecff5a3c8fd922434e840574a1100
|
||||
962000 71096ede300530ff95a9fc4e96e0eb5aaf2884d0cc8299e799baa15154460200
|
||||
964000 3f12d83f044a1936a6f799222003c59c43bfc17af837921d670cb28421730c00
|
||||
966000 ee2171759d5daa5fbe223401ebde3698d4c97dd0f65a4843267e55a80d751f00
|
||||
968000 37fc3a44a404cc15b94f96c79f66d40bbeab0c37ccf4bd8e593be140fe1f0800
|
||||
970000 640053496cdbda01f77390deded2586ffcd5e26ff22fc900675a681b9c930e00
|
||||
972000 ff7673cd7ff7ae8680cbbded3d70878464128c18747765429038145103aa1700
|
||||
974000 e8005fbc6d143e3f682fce7b54d05eb719fe67a3351aac16f7549fc36bf31600
|
||||
976000 8c7df6699f6beaefb4ee07f47c1171076d25145ed4b14ea132128cde512b2500
|
||||
978000 de9e93f8de2959f38a5b659f62b8518d5cb51847ee918a1338d9642f64ba1900
|
||||
980000 d1b68aefa28e6238039a7ecc934565534ca292b4ec290604efbc85a462c10800
|
||||
982000 3bc9d043f5d42d3771be2244422f5572e8a412500de8dad77313c1ea15e50e00
|
||||
984000 40118534a689ceb5b1b6e55cfda0f8864d130ed970e1b996f2c2bb18f9e91300
|
||||
986000 829eab308b3830fcf6a3f0fa9f1570574e77761d5f0eff2ec69a9082d2424e00
|
||||
988000 8b3adec98cc72458124b0045d4f49268c5013d6c6daa0ab7b8c137302a8a0300
|
||||
990000 b7ff81b6be522933b5fdf7e0a331950123540a3a2cb7e429054f83f3a8b50300
|
||||
992000 d873b54dff4956325b9e53a5c79ad889e19d1446ee1e67f85dc808b58bd3d001
|
||||
994000 a13856d29f437a4f1da35673f5e706cce6e0fcf5858676ac4e3604af208f4200
|
||||
996000 8dcc4e0e27159527a5688a6f970eb0e153ef700172263f2f5e1b7e030ec22900
|
||||
998000 eaad9489440b3235d6c4dd468076d0bc113825cdb71da3950b6b1a25ac7c2100
|
||||
1000000 6cf1536b2811fcaeae068126cac4c07dbb732e64daa740549813b11001b82700
|
||||
1002000 2613904fb58d73144c31429b61d1d1f35b257d2e65b26f2f0fe5ca3850703f00
|
||||
|
|
@ -13,7 +13,6 @@ use tower::{Service, ServiceExt};
|
|||
use tracing_futures::Instrument;
|
||||
|
||||
use zebra_chain::serialization::ZcashDeserialize;
|
||||
use zebra_chain::Network::*;
|
||||
|
||||
/// The timeout we apply to each verify future during testing.
|
||||
///
|
||||
|
|
@ -46,7 +45,7 @@ async fn single_item_checkpoint_list() -> Result<(), Report> {
|
|||
.collect();
|
||||
|
||||
let mut checkpoint_verifier =
|
||||
CheckpointVerifier::new(Mainnet, genesis_checkpoint_list).map_err(|e| eyre!(e))?;
|
||||
CheckpointVerifier::from_list(genesis_checkpoint_list).map_err(|e| eyre!(e))?;
|
||||
|
||||
assert_eq!(
|
||||
checkpoint_verifier.previous_checkpoint_height(),
|
||||
|
|
@ -126,7 +125,7 @@ async fn multi_item_checkpoint_list() -> Result<(), Report> {
|
|||
.collect();
|
||||
|
||||
let mut checkpoint_verifier =
|
||||
CheckpointVerifier::new(Mainnet, checkpoint_list).map_err(|e| eyre!(e))?;
|
||||
CheckpointVerifier::from_list(checkpoint_list).map_err(|e| eyre!(e))?;
|
||||
|
||||
assert_eq!(
|
||||
checkpoint_verifier.previous_checkpoint_height(),
|
||||
|
|
@ -253,7 +252,7 @@ async fn continuous_blockchain() -> Result<(), Report> {
|
|||
.collect();
|
||||
|
||||
let mut checkpoint_verifier =
|
||||
CheckpointVerifier::new(Mainnet, checkpoint_list).map_err(|e| eyre!(e))?;
|
||||
CheckpointVerifier::from_list(checkpoint_list).map_err(|e| eyre!(e))?;
|
||||
|
||||
// Setup checks
|
||||
assert_eq!(
|
||||
|
|
@ -350,7 +349,7 @@ async fn block_higher_than_max_checkpoint_fail() -> Result<(), Report> {
|
|||
.collect();
|
||||
|
||||
let mut checkpoint_verifier =
|
||||
CheckpointVerifier::new(Mainnet, genesis_checkpoint_list).map_err(|e| eyre!(e))?;
|
||||
CheckpointVerifier::from_list(genesis_checkpoint_list).map_err(|e| eyre!(e))?;
|
||||
|
||||
assert_eq!(
|
||||
checkpoint_verifier.previous_checkpoint_height(),
|
||||
|
|
@ -425,7 +424,7 @@ async fn wrong_checkpoint_hash_fail() -> Result<(), Report> {
|
|||
.collect();
|
||||
|
||||
let mut checkpoint_verifier =
|
||||
CheckpointVerifier::new(Mainnet, genesis_checkpoint_list).map_err(|e| eyre!(e))?;
|
||||
CheckpointVerifier::from_list(genesis_checkpoint_list).map_err(|e| eyre!(e))?;
|
||||
|
||||
assert_eq!(
|
||||
checkpoint_verifier.previous_checkpoint_height(),
|
||||
|
|
@ -605,7 +604,7 @@ async fn checkpoint_drop_cancel() -> Result<(), Report> {
|
|||
.collect();
|
||||
|
||||
let mut checkpoint_verifier =
|
||||
CheckpointVerifier::new(Mainnet, checkpoint_list).map_err(|e| eyre!(e))?;
|
||||
CheckpointVerifier::from_list(checkpoint_list).map_err(|e| eyre!(e))?;
|
||||
|
||||
assert_eq!(
|
||||
checkpoint_verifier.previous_checkpoint_height(),
|
||||
|
|
@ -674,3 +673,65 @@ async fn checkpoint_drop_cancel() -> Result<(), Report> {
|
|||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[tokio::test]
|
||||
async fn hard_coded_mainnet_test() -> Result<(), Report> {
|
||||
hard_coded_mainnet().await
|
||||
}
|
||||
|
||||
#[spandoc::spandoc]
|
||||
async fn hard_coded_mainnet() -> Result<(), Report> {
|
||||
zebra_test::init();
|
||||
|
||||
let block0 =
|
||||
Arc::<Block>::zcash_deserialize(&zebra_test::vectors::BLOCK_MAINNET_GENESIS_BYTES[..])?;
|
||||
let hash0: BlockHeaderHash = block0.as_ref().into();
|
||||
|
||||
// Use the hard-coded checkpoint list
|
||||
let mut checkpoint_verifier =
|
||||
CheckpointVerifier::new(Network::Mainnet).map_err(|e| eyre!(e))?;
|
||||
|
||||
assert_eq!(
|
||||
checkpoint_verifier.previous_checkpoint_height(),
|
||||
BeforeGenesis
|
||||
);
|
||||
assert_eq!(
|
||||
checkpoint_verifier.target_checkpoint_height(),
|
||||
WaitingForBlocks
|
||||
);
|
||||
// The lists will get bigger over time, so we just pick a recent height
|
||||
assert!(checkpoint_verifier.checkpoint_list.max_height() > BlockHeight(900_000));
|
||||
|
||||
/// SPANDOC: Make sure the verifier service is ready
|
||||
let ready_verifier_service = checkpoint_verifier
|
||||
.ready_and()
|
||||
.map_err(|e| eyre!(e))
|
||||
.await?;
|
||||
/// SPANDOC: Set up the future for block 0
|
||||
let verify_future = timeout(
|
||||
Duration::from_secs(VERIFY_TIMEOUT_SECONDS),
|
||||
ready_verifier_service.call(block0.clone()),
|
||||
);
|
||||
/// SPANDOC: Wait for the response for block 0
|
||||
// TODO(teor || jlusby): check error kind
|
||||
let verify_response = verify_future
|
||||
.map_err(|e| eyre!(e))
|
||||
.await
|
||||
.expect("timeout should not happen")
|
||||
.expect("block should verify");
|
||||
|
||||
assert_eq!(verify_response, hash0);
|
||||
|
||||
assert_eq!(
|
||||
checkpoint_verifier.previous_checkpoint_height(),
|
||||
PreviousCheckpoint(BlockHeight(0))
|
||||
);
|
||||
assert_eq!(
|
||||
checkpoint_verifier.target_checkpoint_height(),
|
||||
WaitingForBlocks
|
||||
);
|
||||
// The lists will get bigger over time, so we just pick a recent height
|
||||
assert!(checkpoint_verifier.checkpoint_list.max_height() > BlockHeight(900_000));
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,65 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# Prints Zebra checkpoints, based on a list of block heights, sizes, ans hashes.
|
||||
#
|
||||
# Reads lines containing a block height, block byte size, and block header hash
|
||||
# from stdin. Writes each checkpoint to stdout, as a line with space-separated
|
||||
# fields.
|
||||
#
|
||||
# The block header hash is read in Bitcoin order, but written out in Zebra's
|
||||
# internal byte order.
|
||||
#
|
||||
# Usage: get-height-size-hash.sh | calculate-checkpoints.sh
|
||||
# get-height-size-hash.sh -testnet | calculate-checkpoints.sh
|
||||
#
|
||||
# calculate-checkpoints.sh ignores any command-line arguments.
|
||||
#
|
||||
# TODO: rewrite as a stand-alone Rust command-line tool.
|
||||
|
||||
# zebra-consensus accepts an ordered list of checkpoints, starting with the
|
||||
# genesis block. Checkpoint heights can be chosen arbitrarily.
|
||||
|
||||
# We limit the memory usage for each checkpoint, based on the cumulative size of
|
||||
# the serialized blocks in the chain. Deserialized blocks are larger, because
|
||||
# they contain pointers and non-compact integers. But they should be within a
|
||||
# constant factor of the serialized size.
|
||||
MAX_CHECKPOINT_BYTE_COUNT=$((256*1024*1024))
|
||||
|
||||
# We limit the maximum number of blocks in each checkpoint. Each block uses a
|
||||
# constant amount of memory for the supporting data structures and futures.
|
||||
#
|
||||
# TODO: In the Rust implementation, set this gap to half the sync service's
|
||||
# LOOKAHEAD_LIMIT.
|
||||
MAX_CHECKPOINT_HEIGHT_GAP=2000
|
||||
|
||||
cumulative_bytes=0
|
||||
height_gap=0
|
||||
while read -r height size hash; do
|
||||
cumulative_bytes=$((cumulative_bytes + size))
|
||||
height_gap=$((height_gap + 1))
|
||||
|
||||
# Checkpoints can be slightly larger the maximum byte count. That's ok,
|
||||
# because the memory usage is only approximate. (This is a bash-specific
|
||||
# optimisation, to avoid keeping a copy of the previous height and hash.
|
||||
# Since exact sizes don't matter, we can use the same check in the Rust
|
||||
# implementation. Or choose a simpler alternative.)
|
||||
if [ "$height" -eq 0 ] || \
|
||||
[ "$cumulative_bytes" -ge "$MAX_CHECKPOINT_BYTE_COUNT" ] || \
|
||||
[ "$height_gap" -ge "$MAX_CHECKPOINT_HEIGHT_GAP" ]; then
|
||||
|
||||
# Reverse the byte order of hash.
|
||||
#
|
||||
# We reverse the hash after selecting the checkpoints, because launching
|
||||
# a zebrad subprocess is expensive. (This is a bash-specific
|
||||
# optimisation, the Rust implementation should reverse hashes as it loads
|
||||
# them.)
|
||||
hash=$(zebrad revhex "$hash")
|
||||
|
||||
echo "$height $hash"
|
||||
|
||||
cumulative_bytes=0
|
||||
height_gap=0
|
||||
fi
|
||||
done
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# Print the block height, size, and hash for each block.
|
||||
#
|
||||
# For each block in the best chain, gets the block height, block byte size, and
|
||||
# block header hash using zcash RPC via zcash-cli. Writes each block's info to
|
||||
# stdout, as a line with space-separated fields.
|
||||
#
|
||||
# The block header hash is written out in Bitcoin order, which is different from
|
||||
# Zebra's internal byte order, as an optimisation. (calculate-checkpoints.sh
|
||||
# converts hashes to Zebra's internal order after choosing checkpoints.)
|
||||
#
|
||||
# Usage: get-height-size-hash.sh | calculate-checkpoints.sh
|
||||
# get-height-size-hash.sh -testnet | calculate-checkpoints.sh
|
||||
#
|
||||
# get-height-size-hash.sh passes its arguments through to zcash-cli.
|
||||
#
|
||||
# Requires zcash-cli, jq, and zebrad in your path. zcash-cli must be able to
|
||||
# access a working, synced zcashd instance.
|
||||
#
|
||||
# TODO: rewrite as a stand-alone Rust command-line tool.
|
||||
|
||||
block_count=$(zcash-cli "$@" getblockcount)
|
||||
|
||||
# Checkpoints must be on the main chain, so we skip blocks that are within the
|
||||
# zcashd reorg limit.
|
||||
BLOCK_REORG_LIMIT=100
|
||||
block_count=$((block_count - BLOCK_REORG_LIMIT))
|
||||
|
||||
i=0
|
||||
while [ "$i" -lt "$block_count" ]; do
|
||||
# Unfortunately, there is no simple RPC for height, size, and hash.
|
||||
# So we use the expensive block RPC, and extract fields using jq.
|
||||
#
|
||||
# We don't byte-reverse the hash here, because launching a zebrad subprocess
|
||||
# is expensive. (This is a bash-specific optimisation, the Rust
|
||||
# implementation should reverse hashes as it loads them.)
|
||||
zcash-cli "$@" getblock "$i" | \
|
||||
jq -r '"\(.height) \(.size) \(.hash)"'
|
||||
i=$((i + 1))
|
||||
done
|
||||
Loading…
Reference in New Issue