diff --git a/crates/chia-bls/benches/cache.rs b/crates/chia-bls/benches/cache.rs
index e8c92f75c..15494b888 100644
--- a/crates/chia-bls/benches/cache.rs
+++ b/crates/chia-bls/benches/cache.rs
@@ -28,7 +28,11 @@ fn cache_benchmark(c: &mut Criterion) {
     c.bench_function("bls_cache.aggregate_verify, 0% cache hits", |b| {
         let mut cache = bls_cache.clone();
         b.iter(|| {
-            assert!(cache.aggregate_verify(pks.iter().zip([&msg].iter().cycle()), &agg_sig));
+            assert!(
+                cache
+                    .aggregate_verify(pks.iter().zip([&msg].iter().cycle()), &agg_sig)
+                    .0
+            );
         });
     });
 
@@ -37,7 +41,11 @@ fn cache_benchmark(c: &mut Criterion) {
     c.bench_function("bls_cache.aggregate_verify, 10% cache hits", |b| {
         let mut cache = bls_cache.clone();
         b.iter(|| {
-            assert!(cache.aggregate_verify(pks.iter().zip([&msg].iter().cycle()), &agg_sig));
+            assert!(
+                cache
+                    .aggregate_verify(pks.iter().zip([&msg].iter().cycle()), &agg_sig)
+                    .0
+            );
         });
     });
 
@@ -46,7 +54,11 @@ fn cache_benchmark(c: &mut Criterion) {
     c.bench_function("bls_cache.aggregate_verify, 20% cache hits", |b| {
         let mut cache = bls_cache.clone();
         b.iter(|| {
-            assert!(cache.aggregate_verify(pks.iter().zip([&msg].iter().cycle()), &agg_sig));
+            assert!(
+                cache
+                    .aggregate_verify(pks.iter().zip([&msg].iter().cycle()), &agg_sig)
+                    .0
+            );
         });
     });
 
@@ -55,7 +67,11 @@ fn cache_benchmark(c: &mut Criterion) {
     c.bench_function("bls_cache.aggregate_verify, 50% cache hits", |b| {
         let mut cache = bls_cache.clone();
         b.iter(|| {
-            assert!(cache.aggregate_verify(pks.iter().zip([&msg].iter().cycle()), &agg_sig));
+            assert!(
+                cache
+                    .aggregate_verify(pks.iter().zip([&msg].iter().cycle()), &agg_sig)
+                    .0
+            );
         });
     });
 
@@ -64,7 +80,11 @@ fn cache_benchmark(c: &mut Criterion) {
     c.bench_function("bls_cache.aggregate_verify, 100% cache hits", |b| {
         let mut cache = bls_cache.clone();
         b.iter(|| {
-            assert!(cache.aggregate_verify(pks.iter().zip([&msg].iter().cycle()), &agg_sig));
+            assert!(
+                cache
+                    .aggregate_verify(pks.iter().zip([&msg].iter().cycle()), &agg_sig)
+                    .0
+            );
         });
     });
 
diff --git a/crates/chia-bls/src/bls_cache.rs b/crates/chia-bls/src/bls_cache.rs
index f375465cc..dfba45011 100644
--- a/crates/chia-bls/src/bls_cache.rs
+++ b/crates/chia-bls/src/bls_cache.rs
@@ -1,11 +1,9 @@
-use std::borrow::Borrow;
-use std::num::NonZeroUsize;
-
-use clvmr::sha2::Sha256;
-use lru::LruCache;
-
 use crate::{aggregate_verify_gt, hash_to_g2};
 use crate::{GTElement, PublicKey, Signature};
+use clvmr::sha2::Sha256;
+use lru::LruCache;
+use std::borrow::Borrow;
+use std::num::NonZeroUsize;
 
 /// This is a cache of pairings of public keys and their corresponding message.
 /// It accelerates aggregate verification when some public keys have already
@@ -29,6 +27,9 @@ impl Default for BlsCache {
     }
 }
 
+pub type PairingInfo = ([u8; 32], Vec<u8>);
+type AggregateVerifyResult = (bool, Vec<PairingInfo>);
+
 impl BlsCache {
     pub fn new(cache_size: NonZeroUsize) -> Self {
         Self {
@@ -44,11 +45,18 @@ impl BlsCache {
         self.cache.is_empty()
     }
 
+    pub fn update(&mut self, new_items: impl IntoIterator<Item = ([u8; 32], GTElement)>) {
+        for (key, value) in new_items {
+            self.cache.put(key, value);
+        }
+    }
+
     pub fn aggregate_verify<Pk: Borrow<PublicKey>, Msg: AsRef<[u8]>>(
         &mut self,
         pks_msgs: impl IntoIterator<Item = (Pk, Msg)>,
         sig: &Signature,
-    ) -> bool {
+    ) -> AggregateVerifyResult {
+        let mut added: Vec<([u8; 32], Vec<u8>)> = Vec::new();
         let iter = pks_msgs.into_iter().map(|(pk, msg)| -> GTElement {
             // Hash pubkey + message
             let mut hasher = Sha256::new();
@@ -72,10 +80,11 @@ impl BlsCache {
 
             let pairing = aug_hash.pair(pk.borrow());
             self.cache.put(hash, pairing.clone());
+            added.push((hash, pairing.to_bytes().to_vec()));
             pairing
         });
 
-        aggregate_verify_gt(sig, iter)
+        (aggregate_verify_gt(sig, iter), added)
     }
 }
 
@@ -112,7 +121,7 @@ impl BlsCache {
         pks: &Bound<'_, PyList>,
         msgs: &Bound<'_, PyList>,
         sig: &Signature,
-    ) -> PyResult<bool> {
+    ) -> PyResult<(bool, Vec<PairingInfo>)> {
         let pks = pks
             .iter()?
             .map(|item| item?.extract())
@@ -148,15 +157,11 @@ impl BlsCache {
     #[pyo3(name = "update")]
     pub fn py_update(&mut self, other: &Bound<'_, PyList>) -> PyResult<()> {
         for item in other.borrow().iter()? {
-            let (key, value): (Vec<u8>, Vec<u8>) = item?.extract()?;
+            let (key, value): (Vec<u8>, [u8; 576]) = item?.extract()?;
             self.cache.put(
                 key.try_into()
                     .map_err(|_| PyValueError::new_err("invalid key"))?,
-                GTElement::from_bytes(
-                    (&value[..])
-                        .try_into()
-                        .map_err(|_| PyValueError::new_err("invalid GTElement"))?,
-                ),
+                GTElement::from_bytes(&value),
             );
         }
         Ok(())
@@ -185,11 +190,11 @@ pub mod tests {
         assert!(bls_cache.is_empty());
 
         // Verify the signature and add to the cache.
-        assert!(bls_cache.aggregate_verify(pks_msgs, &sig));
+        assert!(bls_cache.aggregate_verify(pks_msgs, &sig).0);
         assert_eq!(bls_cache.len(), 1);
 
         // Now that it's cached, it shouldn't cache it again.
-        assert!(bls_cache.aggregate_verify(pks_msgs, &sig));
+        assert!(bls_cache.aggregate_verify(pks_msgs, &sig).0);
         assert_eq!(bls_cache.len(), 1);
     }
 
@@ -208,7 +213,7 @@ pub mod tests {
         assert!(bls_cache.is_empty());
 
         // Add the first signature to cache.
-        assert!(bls_cache.aggregate_verify(pks_msgs.clone(), &agg_sig));
+        assert!(bls_cache.aggregate_verify(pks_msgs.clone(), &agg_sig).0);
         assert_eq!(bls_cache.len(), 1);
 
         // Try with the first key message pair in the cache but not the second.
@@ -219,7 +224,7 @@ pub mod tests {
         agg_sig += &sign(&sk2, msg2);
         pks_msgs.push((pk2, msg2));
 
-        assert!(bls_cache.aggregate_verify(pks_msgs.clone(), &agg_sig));
+        assert!(bls_cache.aggregate_verify(pks_msgs.clone(), &agg_sig).0);
         assert_eq!(bls_cache.len(), 2);
 
         // Try reusing a public key.
@@ -229,7 +234,7 @@ pub mod tests {
         pks_msgs.push((pk2, msg3));
 
         // Verify this signature and add to the cache as well (since it's still a different aggregate).
-        assert!(bls_cache.aggregate_verify(pks_msgs, &agg_sig));
+        assert!(bls_cache.aggregate_verify(pks_msgs, &agg_sig).0);
         assert_eq!(bls_cache.len(), 3);
     }
 
@@ -251,7 +256,7 @@ pub mod tests {
             let pks_msgs = [(pk, msg)];
 
             // Add to cache by validating them one at a time.
-            assert!(bls_cache.aggregate_verify(pks_msgs, &sig));
+            assert!(bls_cache.aggregate_verify(pks_msgs, &sig).0);
         }
 
         // The cache should be full now.
@@ -278,6 +283,10 @@ pub mod tests {
 
         let pks_msgs: [(&PublicKey, &[u8]); 0] = [];
 
-        assert!(bls_cache.aggregate_verify(pks_msgs, &Signature::default()));
+        assert!(
+            bls_cache
+                .aggregate_verify(pks_msgs, &Signature::default())
+                .0
+        );
     }
 }
diff --git a/crates/chia-bls/src/lib.rs b/crates/chia-bls/src/lib.rs
index 8fd08f823..53853dace 100644
--- a/crates/chia-bls/src/lib.rs
+++ b/crates/chia-bls/src/lib.rs
@@ -12,6 +12,7 @@ mod signature;
 mod parse_hex;
 
 pub use bls_cache::BlsCache;
+pub use bls_cache::PairingInfo;
 pub use derive_keys::*;
 pub use error::{Error, Result};
 pub use gtelement::GTElement;
diff --git a/crates/chia-consensus/src/gen/condition_tools.rs b/crates/chia-consensus/src/gen/condition_tools.rs
new file mode 100644
index 000000000..5f95a5575
--- /dev/null
+++ b/crates/chia-consensus/src/gen/condition_tools.rs
@@ -0,0 +1,194 @@
+use crate::consensus_constants::ConsensusConstants;
+use crate::gen::opcodes::{
+    ConditionOpcode, AGG_SIG_AMOUNT, AGG_SIG_ME, AGG_SIG_PARENT, AGG_SIG_PARENT_AMOUNT,
+    AGG_SIG_PARENT_PUZZLE, AGG_SIG_PUZZLE, AGG_SIG_PUZZLE_AMOUNT,
+};
+use crate::gen::owned_conditions::OwnedSpend;
+use chia_protocol::Bytes;
+use chia_protocol::Coin;
+
+pub fn make_aggsig_final_message(
+    opcode: ConditionOpcode,
+    msg: &[u8],
+    spend: &OwnedSpend,
+    constants: &ConsensusConstants,
+) -> Vec<u8> {
+    let mut result = Vec::<u8>::with_capacity(msg.len() + 96);
+    result.extend(msg);
+    match opcode {
+        AGG_SIG_PARENT => {
+            result.extend(spend.parent_id.as_slice());
+            result.extend(constants.agg_sig_parent_additional_data.as_slice());
+        }
+        AGG_SIG_PUZZLE => {
+            result.extend(spend.puzzle_hash.as_slice());
+            result.extend(constants.agg_sig_puzzle_additional_data.as_slice());
+        }
+        AGG_SIG_AMOUNT => {
+            result.extend(u64_to_bytes(spend.coin_amount).as_slice());
+            result.extend(constants.agg_sig_amount_additional_data.as_slice());
+        }
+        AGG_SIG_PUZZLE_AMOUNT => {
+            result.extend(spend.puzzle_hash.as_slice());
+            result.extend(u64_to_bytes(spend.coin_amount).as_slice());
+            result.extend(constants.agg_sig_puzzle_amount_additional_data.as_slice());
+        }
+        AGG_SIG_PARENT_AMOUNT => {
+            result.extend(spend.parent_id.as_slice());
+            result.extend(u64_to_bytes(spend.coin_amount).as_slice());
+            result.extend(constants.agg_sig_parent_amount_additional_data.as_slice());
+        }
+        AGG_SIG_PARENT_PUZZLE => {
+            result.extend(spend.parent_id.as_slice());
+            result.extend(spend.puzzle_hash.as_slice());
+            result.extend(constants.agg_sig_parent_puzzle_additional_data.as_slice());
+        }
+        AGG_SIG_ME => {
+            let coin: Coin = Coin::new(spend.parent_id, spend.puzzle_hash, spend.coin_amount);
+
+            result.extend(coin.coin_id().as_slice());
+            result.extend(constants.agg_sig_me_additional_data.as_slice());
+        }
+        _ => return result,
+    };
+
+    result
+}
+
+pub(crate) fn u64_to_bytes(val: u64) -> Bytes {
+    let amount_bytes: [u8; 8] = val.to_be_bytes();
+    if val >= 0x8000_0000_0000_0000_u64 {
+        let mut ret = Vec::<u8>::new();
+        ret.push(0_u8);
+        ret.extend(amount_bytes);
+        Bytes::new(ret)
+    } else {
+        let start = match val {
+            n if n >= 0x0080_0000_0000_0000_u64 => 0,
+            n if n >= 0x8000_0000_0000_u64 => 1,
+            n if n >= 0x0080_0000_0000_u64 => 2,
+            n if n >= 0x8000_0000_u64 => 3,
+            n if n >= 0x0080_0000_u64 => 4,
+            n if n >= 0x8000_u64 => 5,
+            n if n >= 0x80_u64 => 6,
+            n if n > 0 => 7,
+            _ => 8,
+        };
+        Bytes::new(amount_bytes[start..].to_vec())
+    }
+}
+
+#[cfg(test)]
+mod tests {
+    use super::*;
+    use crate::allocator::make_allocator;
+    use crate::consensus_constants::TEST_CONSTANTS;
+    use clvmr::chia_dialect::LIMIT_HEAP;
+    use clvmr::Allocator;
+    use hex_literal::hex;
+    use rstest::rstest;
+
+    #[test]
+    fn test_validate_u64() {
+        let mut a: Allocator = make_allocator(LIMIT_HEAP);
+        for v in 0..10000 {
+            let ptr = a.new_small_number(v).expect("valid u64");
+            assert_eq!(a.atom(ptr).as_ref(), u64_to_bytes(v as u64).as_slice());
+        }
+        for v in 18_446_744_073_709_551_615_u64 - 1000..18_446_744_073_709_551_615 {
+            let ptr = a.new_number(v.into()).expect("valid u64");
+            assert_eq!(a.atom(ptr).as_ref(), u64_to_bytes(v).as_slice());
+        }
+    }
+
+    #[rstest]
+    #[case(AGG_SIG_PARENT, 10000)]
+    #[case(AGG_SIG_PUZZLE, 261)]
+    #[case(AGG_SIG_AMOUNT, 100_000_000_005)]
+    #[case(AGG_SIG_PUZZLE_AMOUNT, 410)]
+    #[case(AGG_SIG_PARENT_AMOUNT, 909)]
+    #[case(AGG_SIG_PARENT_PUZZLE, 10_061_997)]
+    #[case(AGG_SIG_ME, 1303)]
+    fn test_make_aggsig_final_message(#[case] opcode: ConditionOpcode, #[case] coin_amount: u64) {
+        use std::sync::Arc;
+
+        use chia_protocol::Bytes32;
+
+        use crate::r#gen::conditions::Spend;
+
+        let parent_id: Vec<u8> =
+            hex!("4444444444444444444444444444444444444444444444444444444444444444").into();
+        let puzzle_hash: Vec<u8> =
+            hex!("3333333333333333333333333333333333333333333333333333333333333333").into();
+        let msg = b"message";
+
+        let mut expected_result = Vec::<u8>::new();
+        expected_result.extend(msg);
+
+        let coin = Coin::new(
+            Bytes32::try_from(parent_id.clone()).expect("test should pass"),
+            Bytes32::try_from(puzzle_hash.clone()).expect("test should pass"),
+            coin_amount,
+        );
+
+        match opcode {
+            AGG_SIG_PARENT => {
+                expected_result.extend(parent_id.as_slice());
+                expected_result.extend(TEST_CONSTANTS.agg_sig_parent_additional_data.as_slice());
+            }
+            AGG_SIG_PUZZLE => {
+                expected_result.extend(puzzle_hash.as_slice());
+                expected_result.extend(TEST_CONSTANTS.agg_sig_puzzle_additional_data.as_slice());
+            }
+            AGG_SIG_AMOUNT => {
+                expected_result.extend(u64_to_bytes(coin_amount).as_slice());
+                expected_result.extend(TEST_CONSTANTS.agg_sig_amount_additional_data.as_slice());
+            }
+            AGG_SIG_PUZZLE_AMOUNT => {
+                expected_result.extend(puzzle_hash.as_slice());
+                expected_result.extend(u64_to_bytes(coin_amount).as_slice());
+                expected_result.extend(
+                    TEST_CONSTANTS
+                        .agg_sig_puzzle_amount_additional_data
+                        .as_slice(),
+                );
+            }
+            AGG_SIG_PARENT_AMOUNT => {
+                expected_result.extend(parent_id.as_slice());
+                expected_result.extend(u64_to_bytes(coin_amount).as_slice());
+                expected_result.extend(
+                    TEST_CONSTANTS
+                        .agg_sig_parent_amount_additional_data
+                        .as_slice(),
+                );
+            }
+            AGG_SIG_PARENT_PUZZLE => {
+                expected_result.extend(parent_id.as_slice());
+                expected_result.extend(puzzle_hash.as_slice());
+                expected_result.extend(
+                    TEST_CONSTANTS
+                        .agg_sig_parent_puzzle_additional_data
+                        .as_slice(),
+                );
+            }
+            AGG_SIG_ME => {
+                expected_result.extend(coin.coin_id().as_slice());
+                expected_result.extend(TEST_CONSTANTS.agg_sig_me_additional_data.as_slice());
+            }
+            _ => {}
+        };
+        let mut a: Allocator = make_allocator(LIMIT_HEAP);
+        let spend = Spend::new(
+            a.new_atom(parent_id.as_slice()).expect("should pass"),
+            coin_amount,
+            a.new_atom(puzzle_hash.as_slice())
+                .expect("test should pass"),
+            Arc::new(Bytes32::try_from(coin.coin_id()).expect("test should pass")),
+        );
+
+        let spend = OwnedSpend::from(&a, spend);
+
+        let result = make_aggsig_final_message(opcode, msg, &spend, &TEST_CONSTANTS);
+        assert_eq!(result, expected_result);
+    }
+}
diff --git a/crates/chia-consensus/src/gen/mod.rs b/crates/chia-consensus/src/gen/mod.rs
index 246d2bd15..263a83e24 100644
--- a/crates/chia-consensus/src/gen/mod.rs
+++ b/crates/chia-consensus/src/gen/mod.rs
@@ -1,5 +1,6 @@
 mod coin_id;
 mod condition_sanitizers;
+pub mod condition_tools;
 pub mod conditions;
 pub mod flags;
 pub mod get_puzzle_and_solution;
diff --git a/crates/chia-consensus/src/large_spendbundle_validation_test.clsp.hex b/crates/chia-consensus/src/large_spendbundle_validation_test.clsp.hex
new file mode 100644
index 000000000..9df1ce763
--- /dev/null
+++ b/crates/chia-consensus/src/large_spendbundle_validation_test.clsp.hex
@@ -0,0 +1 @@
+ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff0f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff1f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff2f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff3f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff4f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff5f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff6f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff7f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82008f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82009f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200a080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200a180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200a280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200a380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200a480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200a580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200a680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200a780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200a880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200a980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200aa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200ab80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200ac80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200ad80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200ae80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200af80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200b080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200b180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200b280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200b380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200b480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200b580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200b680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200b780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200b880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200b980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200ba80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200bb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200bc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200bd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200be80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200bf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200c080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200c180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200c280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200c380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200c480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200c580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200c680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200c780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200c880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200c980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200ca80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200cb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200cc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200cd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200ce80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200cf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200d080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200d180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200d280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200d380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200d480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200d580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200d680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200d780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200d880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200d980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200da80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200db80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200dc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200dd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200de80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200df80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200e080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200e180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200e280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200e380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200e480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200e580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200e680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200e780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200e880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200e980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200ea80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200eb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200ec80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200ed80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200ee80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200ef80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200f080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200f180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200f280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200f380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200f480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200f580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200f680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200f780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200f880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200f980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200fa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200fb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200fc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200fd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200fe80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8200ff80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82010f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82011f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82012f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82013f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82014f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82015f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82016f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82017f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82018f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82019f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201a080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201a180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201a280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201a380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201a480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201a580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201a680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201a780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201a880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201a980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201aa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201ab80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201ac80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201ad80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201ae80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201af80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201b080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201b180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201b280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201b380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201b480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201b580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201b680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201b780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201b880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201b980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201ba80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201bb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201bc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201bd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201be80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201bf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201c080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201c180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201c280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201c380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201c480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201c580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201c680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201c780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201c880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201c980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201ca80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201cb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201cc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201cd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201ce80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201cf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201d080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201d180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201d280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201d380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201d480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201d580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201d680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201d780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201d880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201d980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201da80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201db80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201dc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201dd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201de80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201df80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201e080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201e180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201e280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201e380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201e480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201e580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201e680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201e780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201e880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201e980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201ea80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201eb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201ec80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201ed80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201ee80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201ef80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201f080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201f180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201f280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201f380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201f480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201f580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201f680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201f780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201f880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201f980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201fa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201fb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201fc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201fd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201fe80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8201ff80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82020f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82021f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82022f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82023f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82024f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82025f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82026f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82027f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82028f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82029f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202a080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202a180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202a280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202a380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202a480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202a580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202a680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202a780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202a880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202a980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202aa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202ab80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202ac80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202ad80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202ae80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202af80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202b080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202b180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202b280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202b380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202b480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202b580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202b680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202b780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202b880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202b980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202ba80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202bb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202bc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202bd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202be80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202bf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202c080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202c180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202c280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202c380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202c480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202c580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202c680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202c780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202c880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202c980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202ca80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202cb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202cc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202cd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202ce80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202cf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202d080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202d180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202d280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202d380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202d480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202d580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202d680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202d780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202d880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202d980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202da80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202db80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202dc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202dd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202de80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202df80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202e080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202e180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202e280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202e380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202e480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202e580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202e680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202e780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202e880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202e980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202ea80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202eb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202ec80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202ed80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202ee80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202ef80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202f080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202f180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202f280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202f380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202f480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202f580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202f680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202f780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202f880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202f980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202fa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202fb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202fc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202fd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202fe80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8202ff80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82030f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82031f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82032f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82033f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82034f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82035f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82036f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82037f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82038f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82039f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203a080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203a180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203a280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203a380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203a480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203a580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203a680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203a780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203a880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203a980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203aa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203ab80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203ac80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203ad80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203ae80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203af80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203b080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203b180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203b280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203b380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203b480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203b580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203b680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203b780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203b880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203b980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203ba80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203bb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203bc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203bd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203be80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203bf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203c080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203c180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203c280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203c380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203c480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203c580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203c680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203c780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203c880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203c980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203ca80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203cb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203cc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203cd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203ce80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203cf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203d080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203d180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203d280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203d380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203d480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203d580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203d680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203d780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203d880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203d980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203da80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203db80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203dc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203dd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203de80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203df80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203e080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203e180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203e280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203e380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203e480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203e580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203e680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203e780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203e880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203e980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203ea80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203eb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203ec80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203ed80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203ee80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203ef80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203f080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203f180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203f280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203f380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203f480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203f580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203f680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203f780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203f880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203f980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203fa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203fb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203fc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203fd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203fe80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8203ff80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82040f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82041f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82042f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82043f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82044f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82045f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82046f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82047f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82048f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82049f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204a080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204a180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204a280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204a380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204a480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204a580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204a680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204a780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204a880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204a980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204aa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204ab80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204ac80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204ad80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204ae80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204af80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204b080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204b180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204b280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204b380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204b480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204b580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204b680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204b780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204b880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204b980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204ba80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204bb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204bc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204bd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204be80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204bf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204c080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204c180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204c280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204c380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204c480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204c580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204c680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204c780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204c880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204c980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204ca80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204cb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204cc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204cd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204ce80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204cf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204d080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204d180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204d280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204d380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204d480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204d580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204d680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204d780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204d880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204d980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204da80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204db80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204dc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204dd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204de80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204df80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204e080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204e180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204e280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204e380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204e480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204e580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204e680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204e780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204e880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204e980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204ea80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204eb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204ec80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204ed80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204ee80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204ef80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204f080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204f180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204f280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204f380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204f480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204f580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204f680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204f780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204f880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204f980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204fa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204fb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204fc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204fd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204fe80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8204ff80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82050f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82051f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82052f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82053f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82054f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82055f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82056f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82057f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82058f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82059f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205a080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205a180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205a280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205a380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205a480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205a580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205a680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205a780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205a880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205a980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205aa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205ab80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205ac80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205ad80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205ae80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205af80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205b080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205b180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205b280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205b380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205b480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205b580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205b680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205b780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205b880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205b980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205ba80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205bb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205bc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205bd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205be80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205bf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205c080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205c180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205c280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205c380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205c480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205c580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205c680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205c780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205c880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205c980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205ca80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205cb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205cc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205cd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205ce80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205cf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205d080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205d180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205d280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205d380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205d480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205d580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205d680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205d780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205d880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205d980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205da80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205db80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205dc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205dd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205de80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205df80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205e080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205e180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205e280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205e380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205e480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205e580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205e680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205e780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205e880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205e980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205ea80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205eb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205ec80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205ed80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205ee80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205ef80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205f080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205f180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205f280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205f380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205f480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205f580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205f680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205f780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205f880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205f980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205fa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205fb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205fc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205fd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205fe80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8205ff80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82060f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82061f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82062f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82063f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82064f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82065f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82066f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82067f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82068f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82069f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206a080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206a180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206a280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206a380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206a480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206a580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206a680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206a780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206a880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206a980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206aa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206ab80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206ac80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206ad80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206ae80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206af80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206b080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206b180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206b280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206b380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206b480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206b580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206b680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206b780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206b880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206b980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206ba80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206bb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206bc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206bd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206be80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206bf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206c080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206c180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206c280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206c380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206c480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206c580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206c680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206c780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206c880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206c980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206ca80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206cb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206cc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206cd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206ce80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206cf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206d080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206d180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206d280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206d380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206d480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206d580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206d680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206d780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206d880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206d980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206da80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206db80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206dc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206dd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206de80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206df80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206e080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206e180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206e280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206e380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206e480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206e580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206e680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206e780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206e880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206e980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206ea80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206eb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206ec80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206ed80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206ee80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206ef80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206f080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206f180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206f280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206f380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206f480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206f580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206f680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206f780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206f880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206f980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206fa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206fb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206fc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206fd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206fe80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8206ff80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82070f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82071f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82072f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82073f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82074f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82075f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82076f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82077f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82078f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82079f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207a080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207a180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207a280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207a380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207a480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207a580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207a680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207a780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207a880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207a980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207aa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207ab80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207ac80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207ad80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207ae80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207af80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207b080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207b180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207b280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207b380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207b480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207b580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207b680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207b780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207b880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207b980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207ba80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207bb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207bc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207bd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207be80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207bf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207c080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207c180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207c280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207c380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207c480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207c580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207c680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207c780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207c880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207c980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207ca80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207cb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207cc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207cd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207ce80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207cf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207d080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207d180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207d280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207d380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207d480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207d580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207d680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207d780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207d880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207d980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207da80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207db80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207dc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207dd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207de80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207df80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207e080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207e180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207e280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207e380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207e480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207e580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207e680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207e780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207e880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207e980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207ea80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207eb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207ec80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207ed80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207ee80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207ef80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207f080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207f180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207f280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207f380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207f480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207f580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207f680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207f780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207f880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207f980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207fa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207fb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207fc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207fd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207fe80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8207ff80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82080f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82081f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82082f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82083f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82084f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82085f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82086f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82087f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82088f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82089f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208a080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208a180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208a280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208a380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208a480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208a580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208a680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208a780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208a880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208a980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208aa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208ab80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208ac80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208ad80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208ae80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208af80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208b080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208b180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208b280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208b380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208b480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208b580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208b680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208b780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208b880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208b980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208ba80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208bb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208bc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208bd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208be80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208bf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208c080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208c180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208c280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208c380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208c480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208c580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208c680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208c780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208c880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208c980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208ca80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208cb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208cc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208cd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208ce80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208cf80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208d080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208d180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208d280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208d380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208d480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208d580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208d680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208d780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208d880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208d980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208da80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208db80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208dc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208dd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208de80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208df80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208e080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208e180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208e280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208e380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208e480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208e580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208e680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208e780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208e880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208e980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208ea80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208eb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208ec80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208ed80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208ee80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208ef80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208f080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208f180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208f280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208f380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208f480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208f580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208f680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208f780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208f880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208f980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208fa80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208fb80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208fc80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208fd80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208fe80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff8208ff80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82090f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82091f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82092f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82093f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82094f80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095080ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095180ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095280ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095380ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095480ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095580ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095680ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095780ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095880ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095980ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095a80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095b80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095c80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095d80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095e80ffff33ffa09dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2ff82095f8080
\ No newline at end of file
diff --git a/crates/chia-consensus/src/spendbundle_validation.rs b/crates/chia-consensus/src/spendbundle_validation.rs
index 6f4d939e9..8058274be 100644
--- a/crates/chia-consensus/src/spendbundle_validation.rs
+++ b/crates/chia-consensus/src/spendbundle_validation.rs
@@ -1,7 +1,78 @@
-use clvmr::{ENABLE_BLS_OPS_OUTSIDE_GUARD, ENABLE_FIXED_DIV};
-
+use crate::allocator::make_allocator;
 use crate::consensus_constants::ConsensusConstants;
+use crate::gen::condition_tools::make_aggsig_final_message;
 use crate::gen::flags::{ALLOW_BACKREFS, DISALLOW_INFINITY_G1, ENABLE_MESSAGE_CONDITIONS};
+use crate::gen::opcodes::{
+    AGG_SIG_AMOUNT, AGG_SIG_ME, AGG_SIG_PARENT, AGG_SIG_PARENT_AMOUNT, AGG_SIG_PARENT_PUZZLE,
+    AGG_SIG_PUZZLE, AGG_SIG_PUZZLE_AMOUNT,
+};
+use crate::gen::owned_conditions::OwnedSpendBundleConditions;
+use crate::gen::validation_error::ErrorCode;
+use crate::spendbundle_conditions::get_conditions_from_spendbundle;
+use chia_bls::BlsCache;
+use chia_bls::PairingInfo;
+use chia_protocol::SpendBundle;
+use clvmr::{ENABLE_BLS_OPS_OUTSIDE_GUARD, ENABLE_FIXED_DIV, LIMIT_HEAP};
+use std::sync::{Arc, Mutex};
+use std::time::{Duration, Instant};
+
+// currently in mempool_manager.py
+// called in threads from pre_validate_spend_bundle()
+// returns (error, cached_results, new_cache_entries, duration)
+pub fn validate_clvm_and_signature(
+    spend_bundle: &SpendBundle,
+    max_cost: u64,
+    constants: &ConsensusConstants,
+    height: u32,
+    cache: &Arc<Mutex<BlsCache>>,
+) -> Result<(OwnedSpendBundleConditions, Vec<PairingInfo>, Duration), ErrorCode> {
+    let start_time = Instant::now();
+    let mut a = make_allocator(LIMIT_HEAP);
+    let sbc = get_conditions_from_spendbundle(&mut a, spend_bundle, max_cost, height, constants)
+        .map_err(|e| e.1)?;
+    let npcresult = OwnedSpendBundleConditions::from(&a, sbc);
+    let iter = npcresult.spends.iter().flat_map(|spend| {
+        let condition_items_pairs = [
+            (AGG_SIG_PARENT, &spend.agg_sig_parent),
+            (AGG_SIG_PUZZLE, &spend.agg_sig_puzzle),
+            (AGG_SIG_AMOUNT, &spend.agg_sig_amount),
+            (AGG_SIG_PUZZLE_AMOUNT, &spend.agg_sig_puzzle_amount),
+            (AGG_SIG_PARENT_AMOUNT, &spend.agg_sig_parent_amount),
+            (AGG_SIG_PARENT_PUZZLE, &spend.agg_sig_parent_puzzle),
+            (AGG_SIG_ME, &spend.agg_sig_me),
+        ];
+        condition_items_pairs
+            .into_iter()
+            .flat_map(move |(condition, items)| {
+                let spend_clone = spend.clone();
+                items.iter().map(move |(pk, msg)| {
+                    (
+                        pk,
+                        make_aggsig_final_message(
+                            condition,
+                            msg.as_slice(),
+                            &spend_clone,
+                            constants,
+                        ),
+                    )
+                })
+            })
+    });
+    let unsafe_items = npcresult
+        .agg_sig_unsafe
+        .iter()
+        .map(|(pk, msg)| (pk, msg.as_slice().to_vec()));
+    let iter = iter.chain(unsafe_items);
+    // Verify aggregated signature
+    let (result, added) = cache
+        .lock()
+        .unwrap()
+        .aggregate_verify(iter, &spend_bundle.aggregated_signature);
+    if !result {
+        return Err(ErrorCode::BadAggregateSignature);
+    }
+    Ok((npcresult, added, start_time.elapsed()))
+}
 
 pub fn get_flags_for_height_and_constants(height: u32, constants: &ConsensusConstants) -> u32 {
     let mut flags: u32 = 0;
@@ -38,7 +109,15 @@ pub fn get_flags_for_height_and_constants(height: u32, constants: &ConsensusCons
 mod tests {
     use super::*;
     use crate::consensus_constants::TEST_CONSTANTS;
+    use crate::gen::condition_tools::u64_to_bytes;
+    use chia_bls::{sign, G2Element, SecretKey, Signature};
+    use chia_protocol::{Bytes, Bytes32};
+    use chia_protocol::{Coin, CoinSpend, Program};
+    use clvm_utils::tree_hash_atom;
+    use hex::FromHex;
+    use hex_literal::hex;
     use rstest::rstest;
+    use std::sync::Arc;
 
     #[rstest]
     #[case(0, 0)]
@@ -51,4 +130,287 @@ mod tests {
             expected_value
         );
     }
+
+    #[test]
+    fn test_validate_no_pks() {
+        let test_coin = Coin::new(
+            hex!("4444444444444444444444444444444444444444444444444444444444444444").into(),
+            hex!("3333333333333333333333333333333333333333333333333333333333333333").into(),
+            1,
+        );
+
+        let solution = Bytes::new(
+            hex!(
+                "ff\
+ff33\
+ffa02222222222222222222222222222222222222222222222222222222222222222\
+ff01\
+80\
+80"
+            )
+            .to_vec(),
+        );
+        let spend = CoinSpend::new(test_coin, Program::new(vec![1_u8].into()), solution.into());
+        let coin_spends: Vec<CoinSpend> = vec![spend];
+        let spend_bundle = SpendBundle {
+            coin_spends,
+            aggregated_signature: Signature::default(),
+        };
+        validate_clvm_and_signature(
+            &spend_bundle,
+            TEST_CONSTANTS.max_block_cost_clvm,
+            &TEST_CONSTANTS,
+            236,
+            &Arc::new(Mutex::new(BlsCache::default())),
+        )
+        .expect("SpendBundle should be valid for this test");
+    }
+
+    #[test]
+    fn test_validate_unsafe() {
+        let sk_hex = "52d75c4707e39595b27314547f9723e5530c01198af3fc5849d9a7af65631efb";
+        let sk = SecretKey::from_bytes(&<[u8; 32]>::from_hex(sk_hex).unwrap()).unwrap();
+
+        let test_coin = Coin::new(
+            hex!("4444444444444444444444444444444444444444444444444444444444444444").into(),
+            hex!("3333333333333333333333333333333333333333333333333333333333333333").into(),
+            1,
+        );
+
+        let solution = hex!("ffff31ffb0997cc43ed8788f841fcf3071f6f212b89ba494b6ebaf1bda88c3f9de9d968a61f3b7284a5ee13889399ca71a026549a2ff8568656c6c6f8080").to_vec();
+        // ((49 0x997cc43ed8788f841fcf3071f6f212b89ba494b6ebaf1bda88c3f9de9d968a61f3b7284a5ee13889399ca71a026549a2 "hello"))
+
+        let spend = CoinSpend::new(test_coin, Program::new(vec![1_u8].into()), solution.into());
+        let msg = b"hello";
+        let sig = sign(&sk, msg);
+        let coin_spends: Vec<CoinSpend> = vec![spend];
+        let spend_bundle = SpendBundle {
+            coin_spends,
+            aggregated_signature: sig,
+        };
+        validate_clvm_and_signature(
+            &spend_bundle,
+            TEST_CONSTANTS.max_block_cost_clvm,
+            &TEST_CONSTANTS,
+            236,
+            &Arc::new(Mutex::new(BlsCache::default())),
+        )
+        .expect("SpendBundle should be valid for this test");
+    }
+
+    #[test]
+    fn test_go_over_cost() {
+        let test_coin = Coin::new(
+            hex!("9dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2").into(),
+            hex!("9dcf97a184f32623d11a73124ceb99a5709b083721e878a16d78f596718ba7b2").into(),
+            1_000_000_000,
+        );
+        let my_str = include_str!("large_spendbundle_validation_test.clsp.hex");
+        let solution = hex::decode(my_str).expect("loading known file");
+        // this solution makes 2400 CREATE_COIN conditions
+
+        let spend = CoinSpend::new(test_coin, Program::new(vec![1_u8].into()), solution.into());
+
+        let coin_spends: Vec<CoinSpend> = vec![spend.clone()];
+
+        let spend_bundle = SpendBundle {
+            coin_spends,
+            aggregated_signature: G2Element::default(),
+        };
+        let result = validate_clvm_and_signature(
+            &spend_bundle,
+            TEST_CONSTANTS.max_block_cost_clvm / 2, // same as mempool_manager default
+            &TEST_CONSTANTS,
+            236,
+            &Arc::new(Mutex::new(BlsCache::default())),
+        );
+        assert!(matches!(result, Ok(..)));
+        let result = validate_clvm_and_signature(
+            &spend_bundle,
+            TEST_CONSTANTS.max_block_cost_clvm / 3, // lower than mempool_manager default
+            &TEST_CONSTANTS,
+            236,
+            &Arc::new(Mutex::new(BlsCache::default())),
+        );
+        assert!(matches!(result, Err(ErrorCode::CostExceeded)));
+    }
+
+    #[test]
+    fn test_validate_aggsig_me() {
+        let sk_hex = "52d75c4707e39595b27314547f9723e5530c01198af3fc5849d9a7af65631efb";
+        let sk = SecretKey::from_bytes(&<[u8; 32]>::from_hex(sk_hex).unwrap()).unwrap();
+
+        let full_puz = Bytes32::new(tree_hash_atom(&[1_u8]).to_bytes());
+        let test_coin = Coin::new(
+            hex!("4444444444444444444444444444444444444444444444444444444444444444").into(),
+            full_puz,
+            1,
+        );
+
+        let solution = hex!("ffff32ffb0997cc43ed8788f841fcf3071f6f212b89ba494b6ebaf1bda88c3f9de9d968a61f3b7284a5ee13889399ca71a026549a2ff8568656c6c6f8080").to_vec();
+        // ((50 0x997cc43ed8788f841fcf3071f6f212b89ba494b6ebaf1bda88c3f9de9d968a61f3b7284a5ee13889399ca71a026549a2 "hello"))
+
+        let spend = CoinSpend::new(test_coin, Program::new(vec![1_u8].into()), solution.into());
+        let msg = b"hello";
+        let mut result = msg.to_vec();
+        result.extend(
+            [
+                test_coin.coin_id().as_slice(),
+                TEST_CONSTANTS.agg_sig_me_additional_data.as_slice(),
+            ]
+            .concat(),
+        );
+        let sig = sign(&sk, result.as_slice());
+        let coin_spends: Vec<CoinSpend> = vec![spend];
+        let spend_bundle = SpendBundle {
+            coin_spends,
+            aggregated_signature: sig,
+        };
+        validate_clvm_and_signature(
+            &spend_bundle,
+            TEST_CONSTANTS.max_block_cost_clvm,
+            &TEST_CONSTANTS,
+            1,
+            &Arc::new(Mutex::new(BlsCache::default())),
+        )
+        .expect("SpendBundle should be valid for this test");
+    }
+
+    #[test]
+    fn test_validate_aggsig_parent_puzzle() {
+        let sk_hex = "52d75c4707e39595b27314547f9723e5530c01198af3fc5849d9a7af65631efb";
+        let sk = SecretKey::from_bytes(&<[u8; 32]>::from_hex(sk_hex).unwrap()).unwrap();
+        //let pk: PublicKey = sk.public_key(); //0x997cc43ed8788f841fcf3071f6f212b89ba494b6ebaf1bda88c3f9de9d968a61f3b7284a5ee13889399ca71a026549a2
+        // panic!("{:?}", pk);
+
+        let full_puz = Bytes32::new(tree_hash_atom(&[1_u8]).to_bytes());
+        let test_coin = Coin::new(
+            hex!("4444444444444444444444444444444444444444444444444444444444444444").into(),
+            full_puz,
+            1,
+        );
+
+        let solution = hex!("ffff30ffb0997cc43ed8788f841fcf3071f6f212b89ba494b6ebaf1bda88c3f9de9d968a61f3b7284a5ee13889399ca71a026549a2ff8568656c6c6f8080").to_vec();
+        // ((48 0x997cc43ed8788f841fcf3071f6f212b89ba494b6ebaf1bda88c3f9de9d968a61f3b7284a5ee13889399ca71a026549a2 "hello"))
+
+        let spend = CoinSpend::new(
+            test_coin,
+            Program::new(vec![1_u8].into()),
+            Program::new(solution.into()),
+        );
+        let msg = b"hello";
+        let mut result = msg.to_vec();
+        result.extend(
+            [
+                test_coin.parent_coin_info.as_slice(),
+                test_coin.puzzle_hash.as_slice(),
+                TEST_CONSTANTS
+                    .agg_sig_parent_puzzle_additional_data
+                    .as_slice(),
+            ]
+            .concat(),
+        );
+        let sig = sign(&sk, result.as_slice());
+        let coin_spends: Vec<CoinSpend> = vec![spend];
+        let spend_bundle = SpendBundle {
+            coin_spends,
+            aggregated_signature: sig,
+        };
+        validate_clvm_and_signature(
+            &spend_bundle,
+            TEST_CONSTANTS.max_block_cost_clvm,
+            &TEST_CONSTANTS,
+            TEST_CONSTANTS.hard_fork_height + 1,
+            &Arc::new(Mutex::new(BlsCache::default())),
+        )
+        .expect("SpendBundle should be valid for this test");
+    }
+
+    #[test]
+    fn test_validate_aggsig_parent_amount() {
+        let sk_hex = "52d75c4707e39595b27314547f9723e5530c01198af3fc5849d9a7af65631efb";
+        let sk = SecretKey::from_bytes(&<[u8; 32]>::from_hex(sk_hex).unwrap()).unwrap();
+
+        let full_puz = Bytes32::new(tree_hash_atom(&[1_u8]).to_bytes());
+        let test_coin = Coin::new(
+            hex!("4444444444444444444444444444444444444444444444444444444444444444").into(),
+            full_puz,
+            1,
+        );
+
+        let solution = hex!("ffff2fffb0997cc43ed8788f841fcf3071f6f212b89ba494b6ebaf1bda88c3f9de9d968a61f3b7284a5ee13889399ca71a026549a2ff8568656c6c6f8080").to_vec();
+        // ((47 0x997cc43ed8788f841fcf3071f6f212b89ba494b6ebaf1bda88c3f9de9d968a61f3b7284a5ee13889399ca71a026549a2 "hello"))
+
+        let spend = CoinSpend::new(test_coin, Program::new(vec![1_u8].into()), solution.into());
+        let msg = b"hello";
+        let mut result = msg.to_vec();
+        result.extend(
+            [
+                test_coin.parent_coin_info.as_slice(),
+                u64_to_bytes(test_coin.amount).as_slice(),
+                TEST_CONSTANTS
+                    .agg_sig_parent_amount_additional_data
+                    .as_slice(),
+            ]
+            .concat(),
+        );
+        let sig = sign(&sk, result.as_slice());
+        let coin_spends: Vec<CoinSpend> = vec![spend];
+        let spend_bundle = SpendBundle {
+            coin_spends,
+            aggregated_signature: sig,
+        };
+        validate_clvm_and_signature(
+            &spend_bundle,
+            TEST_CONSTANTS.max_block_cost_clvm,
+            &TEST_CONSTANTS,
+            TEST_CONSTANTS.hard_fork_height + 1,
+            &Arc::new(Mutex::new(BlsCache::default())),
+        )
+        .expect("SpendBundle should be valid for this test");
+    }
+
+    #[test]
+    fn test_validate_aggsig_puzzle_amount() {
+        let sk_hex = "52d75c4707e39595b27314547f9723e5530c01198af3fc5849d9a7af65631efb";
+        let sk = SecretKey::from_bytes(&<[u8; 32]>::from_hex(sk_hex).unwrap()).unwrap();
+
+        let full_puz = Bytes32::new(tree_hash_atom(&[1_u8]).to_bytes());
+        let test_coin = Coin::new(
+            hex!("4444444444444444444444444444444444444444444444444444444444444444").into(),
+            full_puz,
+            1,
+        );
+
+        let solution = hex!("ffff2effb0997cc43ed8788f841fcf3071f6f212b89ba494b6ebaf1bda88c3f9de9d968a61f3b7284a5ee13889399ca71a026549a2ff8568656c6c6f8080").to_vec();
+        // ((46 0x997cc43ed8788f841fcf3071f6f212b89ba494b6ebaf1bda88c3f9de9d968a61f3b7284a5ee13889399ca71a026549a2 "hello"))
+
+        let spend = CoinSpend::new(test_coin, Program::new(vec![1_u8].into()), solution.into());
+        let msg = b"hello";
+        let mut result = msg.to_vec();
+        result.extend(
+            [
+                test_coin.puzzle_hash.as_slice(),
+                u64_to_bytes(test_coin.amount).as_slice(),
+                TEST_CONSTANTS
+                    .agg_sig_puzzle_amount_additional_data
+                    .as_slice(),
+            ]
+            .concat(),
+        );
+        let sig = sign(&sk, result.as_slice());
+        let coin_spends: Vec<CoinSpend> = vec![spend];
+        let spend_bundle = SpendBundle {
+            coin_spends,
+            aggregated_signature: sig,
+        };
+        validate_clvm_and_signature(
+            &spend_bundle,
+            TEST_CONSTANTS.max_block_cost_clvm,
+            &TEST_CONSTANTS,
+            TEST_CONSTANTS.hard_fork_height + 1,
+            &Arc::new(Mutex::new(BlsCache::default())),
+        )
+        .expect("SpendBundle should be valid for this test");
+    }
 }
diff --git a/tests/test_blscache.py b/tests/test_blscache.py
index 9cf9bce0b..9f8472eb6 100644
--- a/tests/test_blscache.py
+++ b/tests/test_blscache.py
@@ -1,11 +1,100 @@
-from chia_rs import G1Element, PrivateKey, AugSchemeMPL, G2Element, BLSCache
+from chia_rs import (
+    SpendBundle,
+    CoinSpend,
+    Program,
+    G1Element,
+    GTElement,
+    PrivateKey,
+    AugSchemeMPL,
+    G2Element,
+    BLSCache,
+    Coin,
+    ConsensusConstants,
+    validate_clvm_and_signature,
+)
+from chia_rs.sized_bytes import bytes32
+from chia_rs.sized_ints import uint8, uint16, uint32, uint64, uint128
 from typing import List
 from chia.util.hash import std_hash
 from chia.util.lru_cache import LRUCache
+from chia.types.blockchain_format.program import Program as ChiaProgram
 from chia.util import cached_bls as cached_bls_old
 import pytest
 
 
+DEFAULT_CONSTANTS = ConsensusConstants(
+    SLOT_BLOCKS_TARGET=uint32(32),
+    MIN_BLOCKS_PER_CHALLENGE_BLOCK=uint8(16),
+    MAX_SUB_SLOT_BLOCKS=uint32(128),
+    NUM_SPS_SUB_SLOT=uint32(64),
+    SUB_SLOT_ITERS_STARTING=uint64(2**27),
+    DIFFICULTY_CONSTANT_FACTOR=uint128(2**67),
+    DIFFICULTY_STARTING=uint64(7),
+    DIFFICULTY_CHANGE_MAX_FACTOR=uint32(3),
+    SUB_EPOCH_BLOCKS=uint32(384),
+    EPOCH_BLOCKS=uint32(4608),
+    SIGNIFICANT_BITS=uint8(8),
+    DISCRIMINANT_SIZE_BITS=uint16(1024),
+    NUMBER_ZERO_BITS_PLOT_FILTER=uint8(9),
+    MIN_PLOT_SIZE=uint8(32),
+    MAX_PLOT_SIZE=uint8(50),
+    SUB_SLOT_TIME_TARGET=uint16(600),
+    NUM_SP_INTERVALS_EXTRA=uint8(3),
+    MAX_FUTURE_TIME2=uint32(2 * 60),
+    NUMBER_OF_TIMESTAMPS=uint8(11),
+    GENESIS_CHALLENGE=bytes32.fromhex(
+        "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+    ),
+    AGG_SIG_ME_ADDITIONAL_DATA=bytes32.fromhex(
+        "ccd5bb71183532bff220ba46c268991a3ff07eb358e8255a65c30a2dce0e5fbb"
+    ),
+    AGG_SIG_PARENT_ADDITIONAL_DATA=bytes32.fromhex(
+        "baf5d69c647c91966170302d18521b0a85663433d161e72c826ed08677b53a74"
+    ),
+    AGG_SIG_PUZZLE_ADDITIONAL_DATA=bytes32.fromhex(
+        "284fa2ef486c7a41cc29fc99c9d08376161e93dd37817edb8219f42dca7592c4"
+    ),
+    AGG_SIG_AMOUNT_ADDITIONAL_DATA=bytes32.fromhex(
+        "cda186a9cd030f7a130fae45005e81cae7a90e0fa205b75f6aebc0d598e0348e"
+    ),
+    AGG_SIG_PUZZLE_AMOUNT_ADDITIONAL_DATA=bytes32.fromhex(
+        "0f7d90dff0613e6901e24dae59f1e690f18b8f5fbdcf1bb192ac9deaf7de22ad"
+    ),
+    AGG_SIG_PARENT_AMOUNT_ADDITIONAL_DATA=bytes32.fromhex(
+        "585796bd90bb553c0430b87027ffee08d88aba0162c6e1abbbcc6b583f2ae7f9"
+    ),
+    AGG_SIG_PARENT_PUZZLE_ADDITIONAL_DATA=bytes32.fromhex(
+        "2ebfdae17b29d83bae476a25ea06f0c4bd57298faddbbc3ec5ad29b9b86ce5df"
+    ),
+    GENESIS_PRE_FARM_POOL_PUZZLE_HASH=bytes32.fromhex(
+        "d23da14695a188ae5708dd152263c4db883eb27edeb936178d4d988b8f3ce5fc"
+    ),
+    GENESIS_PRE_FARM_FARMER_PUZZLE_HASH=bytes32.fromhex(
+        "3d8765d3a597ec1d99663f6c9816d915b9f68613ac94009884c4addaefcce6af"
+    ),
+    MAX_VDF_WITNESS_SIZE=uint8(64),
+    MEMPOOL_BLOCK_BUFFER=uint8(10),
+    MAX_COIN_AMOUNT=uint64((1 << 64) - 1),
+    MAX_BLOCK_COST_CLVM=uint64(11000000000),
+    COST_PER_BYTE=uint64(12000),
+    WEIGHT_PROOF_THRESHOLD=uint8(2),
+    BLOCKS_CACHE_SIZE=uint32(4608 + (128 * 4)),
+    WEIGHT_PROOF_RECENT_BLOCKS=uint32(1000),
+    MAX_BLOCK_COUNT_PER_REQUESTS=uint32(32),
+    MAX_GENERATOR_SIZE=uint32(1000000),
+    MAX_GENERATOR_REF_LIST_SIZE=uint32(512),
+    POOL_SUB_SLOT_ITERS=uint64(37600000000),
+    SOFT_FORK2_HEIGHT=uint32(0),
+    SOFT_FORK4_HEIGHT=uint32(5716000),
+    SOFT_FORK5_HEIGHT=uint32(0),
+    HARD_FORK_HEIGHT=uint32(5496000),
+    HARD_FORK_FIX_HEIGHT=uint32(5496000),
+    PLOT_FILTER_128_HEIGHT=uint32(10542000),
+    PLOT_FILTER_64_HEIGHT=uint32(15592000),
+    PLOT_FILTER_32_HEIGHT=uint32(20643000),
+)
+
+
 def test_instantiation() -> None:
     bls_cache = BLSCache()
     assert bls_cache.len() == 0
@@ -126,29 +215,25 @@ def test_cached_bls_flattening():
 
     assert cached_bls.aggregate_verify(pks, [b"foobar"] * n_keys, aggsig)
     assert len(cached_bls.items()) == n_keys
-    gts = [
-        bytes(pk.pair(AugSchemeMPL.g2_from_message(bytes(pk) + b"foobar")))
-        for pk in pks
-    ]
+    gts = [pk.pair(AugSchemeMPL.g2_from_message(bytes(pk) + b"foobar")) for pk in pks]
     for key, value in cached_bls.items():
         assert isinstance(key, bytes)
         assert isinstance(value, bytes)
-        assert value in gts
-        gts.remove(value)
+        reconstructed = GTElement.from_bytes(value)
+        assert reconstructed in gts
+        gts.remove(reconstructed)
 
     cache_copy = BLSCache()
     cache_copy.update(cached_bls.items())
 
     assert len(cache_copy.items()) == n_keys
-    gts = [
-        bytes(pk.pair(AugSchemeMPL.g2_from_message(bytes(pk) + b"foobar")))
-        for pk in pks
-    ]
+    gts = [pk.pair(AugSchemeMPL.g2_from_message(bytes(pk) + b"foobar")) for pk in pks]
     for key, value in cache_copy.items():
         assert isinstance(key, bytes)
         assert isinstance(value, bytes)
-        assert value in gts
-        gts.remove(value)
+        reconstructed = GTElement.from_bytes(value)
+        assert reconstructed in gts
+        gts.remove(reconstructed)
 
 
 def test_cached_bls_repeat_pk():
@@ -214,3 +299,49 @@ def test_bad_cache_size():
         expected_exception=OverflowError,
         match="out of range integral type conversion attempted",
     )
+
+
+def test_validate_clvm_and_sig():
+    cache = BLSCache()
+    puz_reveal = Program.to(1)
+    coin = Coin(
+        bytes.fromhex(
+            "4444444444444444444444444444444444444444444444444444444444444444"
+        ),
+        puz_reveal.get_tree_hash(),
+        200,
+    )
+
+    sol_bytes = bytes.fromhex(
+        "ffff32ffb08578d10c07f5f086b08145a40f2b4b55f5cafeb8e6ed8c3c60e3ef92a66b608131225eb15d71fb32285bd7e1c461655fff8568656c6c6f8080"
+    )
+    # ((50 0x8578d10c07f5f086b08145a40f2b4b55f5cafeb8e6ed8c3c60e3ef92a66b608131225eb15d71fb32285bd7e1c461655f "hello"))
+    solution = Program.from_bytes(sol_bytes)
+    coin_spends = [CoinSpend(coin, puz_reveal, solution)]
+    sk = AugSchemeMPL.key_gen(
+        bytes.fromhex(
+            "52d75c4707e39595b27314547f9723e5530c01198af3fc5849d9a7af65631efb"
+        )
+    )
+    sig = AugSchemeMPL.sign(
+        sk,
+        (
+            ChiaProgram.to("hello").as_atom()
+            + coin.name()
+            + DEFAULT_CONSTANTS.AGG_SIG_ME_ADDITIONAL_DATA
+        ),  # noqa
+    )
+
+    new_spend = SpendBundle(coin_spends, sig)
+
+    (sbc, additions, duration) = validate_clvm_and_signature(
+        new_spend,
+        DEFAULT_CONSTANTS.MAX_BLOCK_COST_CLVM,
+        DEFAULT_CONSTANTS,
+        DEFAULT_CONSTANTS.HARD_FORK_HEIGHT + 1,
+        cache,
+    )
+
+    assert sbc is not None
+    assert additions is not None
+    assert duration is not None
diff --git a/wheel/generate_type_stubs.py b/wheel/generate_type_stubs.py
index 8c8ee653f..9da1c1cd0 100644
--- a/wheel/generate_type_stubs.py
+++ b/wheel/generate_type_stubs.py
@@ -305,6 +305,14 @@ def confirm_not_included_already_hashed(
     proof: bytes,
 ) -> bool: ...
 
+def validate_clvm_and_signature(
+    new_spend: SpendBundle,
+    max_cost: int,
+    constants: ConsensusConstants,
+    peak_height: int,
+    cache: Optional[BLSCache],
+) -> Tuple[SpendBundleConditions, List[Tuple[SpendBundleConditions, List[Tuple[bytes32, bytes]]]], float]: ...
+
 def get_conditions_from_spendbundle(
     spend_bundle: SpendBundle,
     max_cost: int,
diff --git a/wheel/python/chia_rs/chia_rs.pyi b/wheel/python/chia_rs/chia_rs.pyi
index 4fc806c61..696ad8c69 100644
--- a/wheel/python/chia_rs/chia_rs.pyi
+++ b/wheel/python/chia_rs/chia_rs.pyi
@@ -49,6 +49,14 @@ def confirm_not_included_already_hashed(
     proof: bytes,
 ) -> bool: ...
 
+def validate_clvm_and_signature(
+    new_spend: SpendBundle,
+    max_cost: int,
+    constants: ConsensusConstants,
+    peak_height: int,
+    cache: Optional[BLSCache],
+) -> Tuple[SpendBundleConditions, List[Tuple[SpendBundleConditions, List[Tuple[bytes32, bytes]]]], float]: ...
+
 def get_conditions_from_spendbundle(
     spend_bundle: SpendBundle,
     max_cost: int,
diff --git a/wheel/src/api.rs b/wheel/src/api.rs
index 7ab98ef3c..cc016e0f1 100644
--- a/wheel/src/api.rs
+++ b/wheel/src/api.rs
@@ -13,7 +13,9 @@ use chia_consensus::gen::solution_generator::solution_generator_backrefs as nati
 use chia_consensus::merkle_set::compute_merkle_set_root as compute_merkle_root_impl;
 use chia_consensus::merkle_tree::{validate_merkle_proof, MerkleSet};
 use chia_consensus::spendbundle_conditions::get_conditions_from_spendbundle;
-use chia_consensus::spendbundle_validation::get_flags_for_height_and_constants;
+use chia_consensus::spendbundle_validation::{
+    get_flags_for_height_and_constants, validate_clvm_and_signature,
+};
 use chia_protocol::{
     BlockRecord, Bytes32, ChallengeBlockInfo, ChallengeChainSubSlot, ClassgroupElement, Coin,
     CoinSpend, CoinState, CoinStateFilters, CoinStateUpdate, EndOfSubSlotBundle, Foliage,
@@ -51,6 +53,7 @@ use pyo3::types::PyList;
 use pyo3::types::PyTuple;
 use pyo3::wrap_pyfunction;
 use std::iter::zip;
+use std::sync::{Arc, Mutex};
 
 use crate::run_program::{run_chia_program, serialized_length};
 
@@ -67,8 +70,8 @@ use clvmr::serde::{node_from_bytes, node_from_bytes_backrefs};
 use clvmr::ChiaDialect;
 
 use chia_bls::{
-    hash_to_g2 as native_hash_to_g2, BlsCache, DerivableKey, GTElement, PublicKey, SecretKey,
-    Signature,
+    hash_to_g2 as native_hash_to_g2, BlsCache, DerivableKey, GTElement, PairingInfo, PublicKey,
+    SecretKey, Signature,
 };
 
 #[pyfunction]
@@ -358,6 +361,30 @@ fn fast_forward_singleton<'p>(
     ))
 }
 
+#[pyfunction]
+#[pyo3(name = "validate_clvm_and_signature")]
+pub fn py_validate_clvm_and_signature(
+    new_spend: &SpendBundle,
+    max_cost: u64,
+    constants: &ConsensusConstants,
+    peak_height: u32,
+    cache: Option<BlsCache>,
+) -> PyResult<(OwnedSpendBundleConditions, Vec<PairingInfo>, f32)> {
+    let real_cache = cache.unwrap_or_default();
+    let (owned_conditions, additions, duration) = validate_clvm_and_signature(
+        new_spend,
+        max_cost,
+        constants,
+        peak_height,
+        &Arc::new(Mutex::new(real_cache)), // TODO: use cache properly
+    )
+    .map_err(|e| {
+        let error_code: u32 = e.into();
+        PyErr::new::<PyTypeError, _>(error_code)
+    })?; // cast validation error to int
+    Ok((owned_conditions, additions, duration.as_secs_f32()))
+}
+
 #[pyfunction]
 #[pyo3(name = "get_conditions_from_spendbundle")]
 pub fn py_get_conditions_from_spendbundle(
@@ -413,7 +440,8 @@ pub fn chia_rs(_py: Python<'_>, m: &Bound<'_, PyModule>) -> PyResult<()> {
     m.add_function(wrap_pyfunction!(confirm_included_already_hashed, m)?)?;
     m.add_function(wrap_pyfunction!(confirm_not_included_already_hashed, m)?)?;
 
-    // multithread validattion
+    // spendbundle validation
+    m.add_function(wrap_pyfunction!(py_validate_clvm_and_signature, m)?)?;
     m.add_function(wrap_pyfunction!(py_get_conditions_from_spendbundle, m)?)?;
     m.add_function(wrap_pyfunction!(py_get_flags_for_height_and_constants, m)?)?;