{"source":"(define-constant ERR_ACTIVATION_HEIGHT_NOT_MET (err u100))\n(define-constant ERR_ALREADY_ENROLLED (err u101))\n(define-constant ERR_USER_BLACKLISTED (err u102))\n(define-constant ERR_NOT_ENROLLED (err u103))\n(define-constant ERR_ENROLL_MINIMUM_HOLD_NOT_MET (err u104))\n(define-constant ERR_CYCLE_IN_FUTURE (err u105))\n(define-constant ERR_ALREADY_PROPOSED_RATIO (err u106))\n(define-constant ERR_RATIO_NOT_PROPOSED (err u107))\n(define-constant ERR_COMPUTE_RATIO_FOR_ALL_PARTICIPANTS_FIRST (err u108))\n(define-constant ERR_COMPUTED_RATIO_ALL_PARTICIPANTS (err u109))\n(define-constant ERR_RATIO_TOO_LOW (err u110))\n(define-constant ERR_RATIO_TOO_HIGH (err u111))\n(define-constant ERR_ALREADY_VALIDATED_RATIO (err u112))\n(define-constant ERR_INVALID_RATIO_FOR_ZERO_STX (err u113))\n(define-constant ERR_NOT_BLACKLISTED (err u114))\n\n(define-constant ERR_NOT_NEW_CYCLE_YET (err u120))\n(define-constant ERR_CYCLE_ENDED (err u121))\n(define-constant ERR_CYCLE_ENDED_2 (err u122))\n(define-constant ERR_NOT_REWARDED_ALL (err u123))\n(define-constant ERR_REWARDS_NOT_SENT_YET (err u124))\n\n(define-constant ERR_NOT_NEW_SNAPSHOT_YET (err u140))\n(define-constant ERR_NOT_SNAPSHOTTED_ALL_PARTICIPANTS (err u141))\n(define-constant ERR_NOT_ALL_SNAPSHOTS (err u142))\n(define-constant ERR_SNAPSHOTS_NOT_CONCLUDED (err u143))\n(define-constant ERR_SNAPSHOTS_ALREADY_CONCLUDED (err u144))\n(define-constant ERR_STX_BLOCK_NOT_MATCHING (err u145))\n(define-constant ERR_STX_BLOCK_IN_FUTURE (err u146))\n(define-constant ERR_NOT_OPTIMIZED_OPERATOR (err u147))\n\n(define-constant ERR_RATIOS_NOT_CONCLUDED (err u160))\n(define-constant ERR_WEIGHTS_NOT_COMPUTED (err u161))\n(define-constant ERR_WEIGHTS_ALREADY_COMPUTED (err u162))\n(define-constant ERR_NOT_ALL_WEIGHTS_COMPUTED (err u163))\n\n(define-constant ERR_CANNOT_DISTRIBUTE_REWARDS (err u180))\n(define-constant ERR_ALREADY_REWARDED (err u181))\n(define-constant ERR_SET_CAN_DISTRIBUTE_ALREADY_CALLED (err u182))\n(define-constant ERR_ALREADY_FINALIZED (err u183))\n(define-constant ERR_CANNOT_FINALIZE (err u184))\n(define-constant ERR_BUFFER_NOT_ACTIVATED (err u185))\n(define-constant ERR_BUFFER_PERIOD_NOT_PASSED (err u186))\n(define-constant ERR_BUFFER_ALREADY_SET (err u187))\n\n(define-constant ERR_NOT_ADMIN (err u200))\n(define-constant ERR_CONTRACT_ALREADY_ACTIVE (err u201))\n(define-constant ERR_CONTRACT_NOT_ACTIVE (err u202))\n(define-constant ERR_APR_TOO_LOW (err u210))\n(define-constant ERR_APR_TOO_HIGH (err u211))\n(define-constant ERR_MULTIPLIER_TOO_LOW (err u212))\n(define-constant ERR_MULTIPLIER_TOO_HIGH (err u213))\n\n(define-constant ERR_INSUFFICIENT_FUNDS (err u240))\n\n(define-constant ERR_NO_SNAPSHOT_DATA (err u260))\n(define-constant ERR_CANNOT_ROLLBACK_FINALIZED_CYCLE (err u261))\n(define-constant ERR_DEFI_NOT_COMPROMISED (err u262))\n\n(define-constant ARKADIKO u1)\n(define-constant BASED_DOLLAR u2)\n(define-constant BITFLOW u3)\n(define-constant GRANITE u4)\n(define-constant VELAR u5)\n(define-constant ZEST u6)\n\n(define-constant SNAPSHOT_NOT_TAKEN_MARKER u1000)\n(define-constant DECIMAL_PRECISION_8 u100000000)\n(define-constant MIN_APR_SCALED u1000000)\n(define-constant MAX_APR_SCALED u20000000)\n(define-constant RATIO_SCALE_FACTOR u100000000)\n(define-constant SQRT_RATIO_SCALE_FACTOR u10000)\n(define-constant MIN_GOLDEN_RATIO u1)\n(define-constant REWARD_MECHANISM_V1 u1)\n\n(define-data-var is-contract-active bool false)\n(define-data-var admin principal contract-caller)\n(define-data-var last-operation-done uint u0)\n\n(define-data-var cycle-id uint u6)\n(define-data-var current-cycle-stacks-block-height uint u0)\n(define-data-var current-cycle-stacks-block-hash (buff 32) 0x0000000000000000000000000000000000000000000000000000000000000000)\n(define-data-var current-cycle-bitcoin-block-height uint u0)\n(define-data-var current-cycle-total-sbtc-in-wallet uint u0)\n(define-data-var current-cycle-total-sbtc-in-defis uint u0)\n(define-data-var current-cycle-total-stx uint u0)\n(define-data-var current-cycle-participants-count uint u0)\n\n(define-data-var blocks-per-snapshot uint u0)\n(define-data-var snapshots-per-cycle uint u0)\n(define-data-var buffer-blocks-per-cycle uint u0)\n(define-data-var next-blocks-per-snapshot uint (var-get blocks-per-snapshot))\n(define-data-var next-snapshots-per-cycle uint (var-get snapshots-per-cycle))\n(define-data-var next-buffer-blocks-per-cycle uint (var-get buffer-blocks-per-cycle))\n(define-data-var next-cycle-bitcoin-block-height uint (+ (var-get current-cycle-bitcoin-block-height)\n  (+ (* (var-get blocks-per-snapshot) (var-get snapshots-per-cycle))\n    (var-get buffer-blocks-per-cycle)\n  )))\n(define-data-var bitcoin-blocks-per-year uint u52560)\n(define-data-var buffer-period-start-block uint u0)\n\n(define-data-var current-snapshot-bitcoin-block-height uint u0)\n(define-data-var current-snapshot-stacks-block-height uint u0)\n(define-data-var current-snapshot-total-sbtc uint u0)\n(define-data-var current-snapshot-total-sbtc-in-defis uint u0)\n(define-data-var current-snapshot-total-stx uint u0)\n(define-data-var current-snapshot-count uint u0)\n(define-data-var current-snapshot-index uint u0)\n(define-data-var are-snapshots-finalized bool false)\n(define-data-var is-buffer-set bool false)\n(define-data-var is-liquid-stacking-enabled bool true)\n\n(define-data-var snapshot-block-hash (buff 32) 0x0000000000000000000000000000000000000000000000000000000000000000)\n\n(define-data-var is-ratio-validated bool false)\n(define-data-var is-distribution-enabled bool false)\n(define-data-var rewards-to-distribute uint u0)\n(define-data-var participants-rewarded-count uint u0)\n\n(define-data-var annual-percentage-rate uint u5000000)\n\n(define-data-var yield-boost-multiplier uint u9)\n\n(define-data-var reward-calculation-mechanism uint REWARD_MECHANISM_V1)\n\n(define-data-var total-weights-sum uint u0)\n(define-data-var weights-computed-count uint u0)\n(define-data-var are-weights-computed bool false)\n\n(define-data-var next-cycle-participants-count uint u0)\n(define-data-var min-sbtc-hold-required-for-enrollment uint u10000)\n\n(define-data-var ratio-being-tallied uint u0)\n(define-data-var max-percentage-above-golden-ratio uint u500)\n(define-constant PERCENTAGE_PRECISION_FACTOR u100)\n\n(var-set current-cycle-bitcoin-block-height u934750)\n(var-set snapshots-per-cycle u14)\n(var-set blocks-per-snapshot u140)\n(var-set buffer-blocks-per-cycle u140)\n\n(define-data-var current-cycle-rollback-id uint u0)\n\n(define-map participants\n  { address: principal }\n  {\n    stacking-address: principal,\n    rewarded-address: principal,\n    tracking-address: principal,\n  }\n)\n\n(define-map blacklist\n  { address: principal }\n  { blacklisted: bool }\n)\n\n(define-map participant-holdings-per-cycle\n  {\n    cycle-id: uint,\n    rollback-id: uint,\n    participant-address: principal,\n  }\n  {\n    sbtc-wallet-amount: uint,\n    sbtc-defi-amount: uint,\n    stx-stacked-amount: uint,\n    last-snapshot-index: uint,\n    has-been-rewarded: bool,\n    reward-amount: uint,\n  }\n)\n\n(define-map participant-addresses\n  {\n    cycle-id: uint,\n    address: principal,\n  }\n  {\n    stacking-address: principal,\n    rewarded-address: principal,\n    tracking-address: principal,\n  }\n)\n\n(define-map sbtc-holdings-by-tracking-address\n  {\n    cycle-id: uint,\n    rollback-id: uint,\n    tracking-address: principal,\n  }\n  {\n    sbtc-wallet-amount: uint,\n    sbtc-defi-amount: uint,\n    has-been-rewarded: bool,\n  }\n)\n\n(define-map stx-stacked-by-stacking-address\n  {\n    cycle-id: uint,\n    rollback-id: uint,\n    stacking-address: principal,\n  }\n  { stx-amount: uint }\n)\n\n(define-map snapshot-processed-stacking-addresses\n  {\n    cycle-id: uint,\n    rollback-id: uint,\n    snapshot-index: uint,\n    stacking-address: principal,\n  }\n  { has-been-processed: bool }\n)\n\n(define-map participant-weights-by-tracking-address\n  {\n    cycle-id: uint,\n    tracking-address: principal,\n  }\n  {\n    weight-wallet: uint,\n    weight-defi: uint,\n    weight-total: uint,\n  }\n)\n\n(define-map participant-weight-computation-status\n  {\n    cycle-id: uint,\n    participant-address: principal,\n  }\n  { has-been-computed: bool }\n)\n\n(define-map rewards-by-rewarded-address\n  {\n    cycle-id: uint,\n    rewarded-address: principal,\n  }\n  { reward-amount: uint }\n)\n\n(define-map snapshot-aggregate-data\n  {\n    cycle-id: uint,\n    rollback-id: uint,\n    snapshot-index: uint,\n  }\n  {\n    stacks-block-height: uint,\n    bitcoin-block-height: uint,\n    total-sbtc-wallet: uint,\n    total-sbtc-defi: uint,\n    total-stx-stacked: uint,\n  }\n)\n\n(define-map cycle-finalization-block-heights\n  { cycle-id: uint }\n  { stacks-block-height-at-finalization: uint }\n)\n\n(define-map yield-cycles-data\n  { cycle-id: uint }\n  {\n    blocks-per-snapshot: uint,\n    snapshots-per-cycle: uint,\n    start-btc-block-height: uint,\n    start-stx-block-height: uint,\n  }\n)\n\n(define-map golden-ratio-proposals\n  {\n    cycle-id: uint,\n    proposer-address: principal,\n  }\n  {\n    proposed-golden-ratio: uint,\n    participants-tallied: uint,\n    sbtc-below-ratio: uint,\n    sbtc-above-ratio: uint,\n    sbtc-equal-ratio: uint,\n  }\n)\n\n(define-map validated-golden-ratio-per-cycle\n  { cycle-id: uint }\n  { golden-ratio: uint }\n)\n\n(define-map participant-ratio-computation-status\n  {\n    cycle-id: uint,\n    proposer-address: principal,\n    ratio-value: uint,\n    participant-address: principal,\n  }\n  { has-been-computed: bool }\n)\n\n(define-map tracking-address-ratio-computation-status\n  {\n    cycle-id: uint,\n    proposer-address: principal,\n    ratio-value: uint,\n    tracking-address: principal,\n  }\n  { has-been-computed: bool }\n)\n\n(define-map optimized-snapshot-operators\n  { operator-address: principal }\n  { is-whitelisted: bool }\n)\n\n(define-map compromised-defi-protocol\n  { defi-name: uint }\n  {\n    compromised-at-cycle: uint,\n    compromised-at-snapshot: uint,\n  }\n)\n\n(define-public (update-initialize-block (new-bitcoin-block-height uint))\n  (begin\n    (asserts! (not (var-get is-contract-active))\n      ERR_CONTRACT_ALREADY_ACTIVE\n    )\n    (asserts! (is-eq contract-caller (var-get admin)) ERR_NOT_ADMIN)\n    (ok (var-set current-cycle-bitcoin-block-height\n      new-bitcoin-block-height\n    ))\n  )\n)\n\n(define-public (initialize-contract (stx-block-height uint))\n  (begin\n    (asserts!\n      (>= burn-block-height\n        (var-get current-cycle-bitcoin-block-height)\n      )\n      ERR_ACTIVATION_HEIGHT_NOT_MET\n    )\n    (asserts! (not (var-get is-contract-active))\n      ERR_CONTRACT_ALREADY_ACTIVE\n    )\n    (asserts!\n      (unwrap-panic (validate-bitcoin-block stx-block-height\n        (var-get current-cycle-bitcoin-block-height)\n      ))\n      ERR_STX_BLOCK_NOT_MATCHING\n    )\n\n    (var-set next-snapshots-per-cycle (var-get snapshots-per-cycle))\n    (var-set next-blocks-per-snapshot (var-get blocks-per-snapshot))\n    (var-set next-buffer-blocks-per-cycle\n      (var-get buffer-blocks-per-cycle)\n    )\n    (reset-state-for-cycle stx-block-height)\n    (var-set is-contract-active true)\n    (ok true)\n  )\n)\n\n(define-private (reset-state-for-cycle (stx-block-height uint))\n  (begin\n    (var-set blocks-per-snapshot (var-get next-blocks-per-snapshot))\n    (var-set snapshots-per-cycle (var-get next-snapshots-per-cycle))\n    (var-set buffer-blocks-per-cycle\n      (var-get next-buffer-blocks-per-cycle)\n    )\n    (var-set is-distribution-enabled false)\n    (var-set current-cycle-stacks-block-height stx-block-height)\n    (var-set current-cycle-stacks-block-hash\n      (unwrap-panic (get-stacks-block-info? id-header-hash stx-block-height))\n    )\n    (var-set current-cycle-total-sbtc-in-wallet u0)\n    (var-set current-cycle-total-sbtc-in-defis u0)\n    (var-set current-cycle-total-stx u0)\n    (var-set current-snapshot-total-sbtc u0)\n    (var-set current-cycle-rollback-id u0)\n    (var-set current-snapshot-total-sbtc-in-defis u0)\n    (var-set current-snapshot-total-stx u0)\n    (var-set participants-rewarded-count u0)\n    (var-set are-snapshots-finalized false)\n    (var-set is-ratio-validated false)\n    (var-set are-weights-computed false)\n    (var-set weights-computed-count u0)\n    (var-set total-weights-sum u0)\n    (var-set buffer-period-start-block\n      (+ (var-get current-cycle-bitcoin-block-height)\n        (* (- (var-get snapshots-per-cycle) u1)\n          (var-get blocks-per-snapshot)\n        ))\n    )\n    (map-set yield-cycles-data { cycle-id: (var-get cycle-id) } {\n      blocks-per-snapshot: (var-get blocks-per-snapshot),\n      snapshots-per-cycle: (var-get snapshots-per-cycle),\n      start-btc-block-height: (var-get current-cycle-bitcoin-block-height),\n      start-stx-block-height: stx-block-height,\n    })\n    (var-set last-operation-done u0)\n    (var-set current-cycle-participants-count\n      (at-block\n        (unwrap-panic (get-stacks-block-info? id-header-hash stx-block-height))\n        (var-get next-cycle-participants-count)\n      ))\n    (var-set is-buffer-set false)\n    (var-set rewards-to-distribute u0)\n    (var-set next-cycle-bitcoin-block-height\n      (+ (var-get current-cycle-bitcoin-block-height)\n        (+\n          (* (var-get blocks-per-snapshot)\n            (var-get snapshots-per-cycle)\n          )\n          (var-get buffer-blocks-per-cycle)\n        ))\n    )\n\n    (var-set current-snapshot-bitcoin-block-height\n      (var-get current-cycle-bitcoin-block-height)\n    )\n    (var-set current-snapshot-count u0)\n    (var-set current-snapshot-index u0)\n    (var-set current-snapshot-stacks-block-height stx-block-height)\n\n    (map-set snapshot-aggregate-data {\n      cycle-id: (var-get cycle-id),\n      rollback-id: (var-get current-cycle-rollback-id),\n      snapshot-index: (var-get current-snapshot-index),\n    } {\n      stacks-block-height: stx-block-height,\n      bitcoin-block-height: (var-get current-cycle-bitcoin-block-height),\n      total-sbtc-wallet: u0,\n      total-sbtc-defi: u0,\n      total-stx-stacked: u0,\n    })\n  )\n)\n\n(define-public (enroll (rewarded-address (optional principal)))\n  (let (\n      (rewards-recipient (default-to contract-caller rewarded-address))\n      (cycle-id-current (var-get cycle-id))\n      (current-snapshot-index-value (var-get current-snapshot-index))\n      (arkadiko (is-defi-protocol-healthy ARKADIKO cycle-id-current\n        current-snapshot-index-value\n      ))\n      (based-dollar (is-defi-protocol-healthy BASED_DOLLAR cycle-id-current\n        current-snapshot-index-value\n      ))\n      (bitflow (is-defi-protocol-healthy BITFLOW cycle-id-current\n        current-snapshot-index-value\n      ))\n      (granite (is-defi-protocol-healthy GRANITE cycle-id-current\n        current-snapshot-index-value\n      ))\n      (velar (is-defi-protocol-healthy VELAR cycle-id-current\n        current-snapshot-index-value\n      ))\n      (zest (is-defi-protocol-healthy ZEST cycle-id-current\n        current-snapshot-index-value\n      ))\n    )\n    (asserts!\n      (is-none (map-get? participants { address: contract-caller }))\n      ERR_ALREADY_ENROLLED\n    )\n    (asserts!\n      (is-none (map-get? blacklist { address: contract-caller }))\n      ERR_USER_BLACKLISTED\n    )\n    (asserts!\n      (meets-enrollment-minimum {\n        address: contract-caller,\n        arkadiko: arkadiko,\n        based-dollar: based-dollar,\n        bitflow: bitflow,\n        granite: granite,\n        velar: velar,\n        zest: zest,\n      })\n      ERR_ENROLL_MINIMUM_HOLD_NOT_MET\n    )\n    (var-set next-cycle-participants-count\n      (+ (var-get next-cycle-participants-count) u1)\n    )\n    (print {\n      bitcoin-block-height: burn-block-height,\n      reward-address: rewards-recipient,\n      enrolled-address: contract-caller,\n      stacking-address: contract-caller,\n      tracking-address: contract-caller,\n      cycle-id: (var-get cycle-id),\n      function-name: \"enroll\",\n    })\n    (ok (map-set participants { address: contract-caller } {\n      rewarded-address: rewards-recipient,\n      stacking-address: contract-caller,\n      tracking-address: contract-caller,\n    }))\n  )\n)\n\n(define-public (enroll-defi-batch (defi-contracts (list\n  900\n  {\n    defi-contract: principal,\n    tracking-address: principal,\n    rewarded-address: principal,\n    stacking-address: (optional principal),\n  }\n)))\n  (begin\n    (asserts! (is-eq contract-caller (var-get admin)) ERR_NOT_ADMIN)\n    (ok (map enroll-defi-one defi-contracts))\n  )\n)\n\n(define-private (enroll-defi-one (entry {\n  defi-contract: principal,\n  tracking-address: principal,\n  rewarded-address: principal,\n  stacking-address: (optional principal),\n}))\n  (let (\n      (defi-contract (get defi-contract entry))\n      (stacking-address (get stacking-address entry))\n      (rewarded-address (get rewarded-address entry))\n      (tracking-address (get tracking-address entry))\n    )\n    (try! (enroll-defi defi-contract tracking-address rewarded-address\n      stacking-address\n    ))\n    (ok true)\n  )\n)\n\n(define-private (enroll-defi\n    (defi-contract principal)\n    (tracking-address principal)\n    (rewarded-address principal)\n    (stacking-address (optional principal))\n  )\n  (let ((stacking-recipient (default-to defi-contract stacking-address)))\n    (asserts!\n      (is-none (map-get? participants { address: defi-contract }))\n      ERR_ALREADY_ENROLLED\n    )\n    (asserts! (is-none (map-get? blacklist { address: defi-contract }))\n      ERR_USER_BLACKLISTED\n    )\n    (var-set next-cycle-participants-count\n      (+ (var-get next-cycle-participants-count) u1)\n    )\n    (print {\n      bitcoin-block-height: burn-block-height,\n      reward-address: rewarded-address,\n      stacking-address: stacking-recipient,\n      tracking-address: tracking-address,\n      enrolled-address: defi-contract,\n      cycle-id: (var-get cycle-id),\n      function-name: \"enroll\",\n    })\n    (ok (map-set participants { address: defi-contract } {\n      rewarded-address: rewarded-address,\n      stacking-address: stacking-recipient,\n      tracking-address: tracking-address,\n    }))\n  )\n)\n\n(define-public (opt-out)\n  (begin\n    (asserts!\n      (is-some (map-get? participants { address: contract-caller }))\n      ERR_NOT_ENROLLED\n    )\n    (ok (remove-participant contract-caller))\n  )\n)\n\n(define-public (opt-out-defi-batch (defi-contracts (list 200 principal)))\n  (begin\n    (asserts! (is-eq contract-caller (var-get admin)) ERR_NOT_ADMIN)\n    (ok (map opt-out-defi defi-contracts))\n  )\n)\n\n(define-private (opt-out-defi (defi-contract principal))\n  (begin\n    (asserts!\n      (is-some (map-get? participants { address: defi-contract }))\n      ERR_NOT_ENROLLED\n    )\n    (ok (remove-participant defi-contract))\n  )\n)\n\n(define-private (remove-participant (address principal))\n  (begin\n    (print {\n      bitcoin-block-height: burn-block-height,\n      enrolled-address: address,\n      cycle-id: (var-get cycle-id),\n      function-name: \"opt-out\",\n    })\n    (map-delete participants { address: address })\n    (var-set next-cycle-participants-count\n      (- (var-get next-cycle-participants-count) u1)\n    )\n  )\n)\n\n(define-public (set-liquid-stacking (state bool))\n  (begin\n    (asserts! (is-eq contract-caller (var-get admin)) ERR_NOT_ADMIN)\n    (ok (var-set is-liquid-stacking-enabled state))\n  )\n)\n\n(define-public (add-optimized-operator-batch (address (list 200 principal)))\n  (begin\n    (asserts! (is-eq contract-caller (var-get admin)) ERR_NOT_ADMIN)\n    (map add-optimized-operator address)\n    (ok true)\n  )\n)\n\n(define-private (add-optimized-operator (operator-address principal))\n  (map-set optimized-snapshot-operators { operator-address: operator-address } { is-whitelisted: true })\n)\n\n(define-public (remove-optimized-operator-batch (address (list 200 principal)))\n  (begin\n    (asserts! (is-eq contract-caller (var-get admin)) ERR_NOT_ADMIN)\n    (map remove-optimized-operator address)\n    (ok true)\n  )\n)\n\n(define-private (remove-optimized-operator (operator-address principal))\n  (map-delete optimized-snapshot-operators { operator-address: operator-address })\n)\n\n(define-public (change-reward-address (new-address principal))\n  (let ((participant (unwrap! (map-get? participants { address: contract-caller })\n      ERR_NOT_ENROLLED\n    )))\n    (print {\n      bitcoin-block-height: burn-block-height,\n      reward-address: new-address,\n      stacking-address: (get stacking-address participant),\n      tracking-address: (get tracking-address participant),\n      enrolled-address: contract-caller,\n      cycle-id: (var-get cycle-id),\n      function-name: \"update-participant-details\",\n    })\n    (ok (map-set participants { address: contract-caller }\n      (merge participant { rewarded-address: new-address })\n    ))\n  )\n)\n\n(define-public (change-addresses-defi-batch (defi-contracts (list\n  900\n  {\n    defi-contract: principal,\n    tracking-address: (optional principal),\n    rewarded-address: (optional principal),\n    stacking-address: (optional principal),\n  }\n)))\n  (begin\n    (asserts! (is-eq contract-caller (var-get admin)) ERR_NOT_ADMIN)\n    (ok (map change-addresses-defi-one defi-contracts))\n  )\n)\n\n(define-private (change-addresses-defi-one (entry {\n  defi-contract: principal,\n  tracking-address: (optional principal),\n  rewarded-address: (optional principal),\n  stacking-address: (optional principal),\n}))\n  (let (\n      (defi-contract (get defi-contract entry))\n      (participant (unwrap! (map-get? participants { address: defi-contract })\n        ERR_NOT_ENROLLED\n      ))\n    )\n    (let (\n        (local-reward-address (default-to (get rewarded-address participant)\n          (get rewarded-address entry)\n        ))\n        (local-stacking-address (default-to (get stacking-address participant)\n          (get stacking-address entry)\n        ))\n        (local-tracking-address (default-to (get tracking-address participant)\n          (get tracking-address entry)\n        ))\n      )\n      (print {\n        bitcoin-block-height: burn-block-height,\n        reward-address: local-reward-address,\n        stacking-address: local-stacking-address,\n        tracking-address: local-tracking-address,\n        enrolled-address: defi-contract,\n        cycle-id: (var-get cycle-id),\n        function-name: \"update-participant-details\",\n      })\n      (map-set participants { address: defi-contract } {\n        rewarded-address: local-reward-address,\n        tracking-address: local-tracking-address,\n        stacking-address: local-stacking-address,\n      })\n      (ok true)\n    )\n  )\n)\n\n(define-public (add-blacklisted-batch (addresses (list 200 principal)))\n  (begin\n    (asserts! (is-eq (var-get admin) contract-caller) ERR_NOT_ADMIN)\n    (ok (map add-blacklisted addresses))\n  )\n)\n\n(define-private (add-blacklisted (address principal))\n  (let ((participant (map-get? participants { address: address })))\n    (if (is-some participant)\n      (begin\n        (remove-participant address)\n        (print {\n          bitcoin-block-height: burn-block-height,\n          reward-address: (get rewarded-address participant),\n          stacking-address: (get stacking-address participant),\n          tracking-address: (get tracking-address participant),\n          enrolled-address: address,\n          cycle-id: (var-get cycle-id),\n          function-name: \"blacklisted\",\n        })\n        (ok (map-set blacklist { address: address } { blacklisted: true }))\n      )\n      (begin\n        (print {\n          bitcoin-block-height: burn-block-height,\n          enrolled-address: address,\n          cycle-id: (var-get cycle-id),\n          function-name: \"blacklisted\",\n        })\n        (ok (map-set blacklist { address: address } { blacklisted: true }))\n      )\n    )\n  )\n)\n\n(define-public (remove-blacklisted-batch (addresses (list 200 principal)))\n  (begin\n    (asserts! (is-eq (var-get admin) contract-caller) ERR_NOT_ADMIN)\n    (ok (map remove-blacklisted addresses))\n  )\n)\n\n(define-private (remove-blacklisted (address principal))\n  (begin\n    (asserts! (is-some (map-get? blacklist { address: address }))\n      ERR_NOT_BLACKLISTED\n    )\n    (print {\n      bitcoin-block-height: burn-block-height,\n      enrolled-address: address,\n      cycle-id: (var-get cycle-id),\n      function-name: \"unblacklisted\",\n    })\n    (ok (map-delete blacklist { address: address }))\n  )\n)\n\n(define-public (update-admin (new-admin-address principal))\n  (begin\n    (asserts! (is-eq contract-caller (var-get admin)) ERR_NOT_ADMIN)\n    (print {\n      bitcoin-block-height: burn-block-height,\n      admin-address: new-admin-address,\n      cycle-id: (var-get cycle-id),\n      function-name: \"update-admin\",\n    })\n    (ok (var-set admin new-admin-address))\n  )\n)\n\n(define-public (update-min-sbtc-hold-required-for-enrollment (new-min-hold uint))\n  (begin\n    (asserts! (is-eq contract-caller (var-get admin)) ERR_NOT_ADMIN)\n    (print {\n      bitcoin-block-height: burn-block-height,\n      min-sbtc-hold-required-for-enrollment: new-min-hold,\n      cycle-id: (var-get cycle-id),\n      function-name: \"update-min-enrollment\",\n    })\n    (ok (var-set min-sbtc-hold-required-for-enrollment new-min-hold))\n  )\n)\n\n(define-public (update-snapshot-length (updated-blocks-per-snapshot uint))\n  (begin\n    (asserts! (is-eq (var-get admin) contract-caller) ERR_NOT_ADMIN)\n    (print {\n      bitcoin-block-height: burn-block-height,\n      snapshot-length: updated-blocks-per-snapshot,\n      cycle-id: (var-get cycle-id),\n      function-name: \"update-snapshot-length\",\n    })\n    (ok (var-set next-blocks-per-snapshot updated-blocks-per-snapshot))\n  )\n)\n\n(define-public (update-snapshots-per-cycle (updated-snapshots-per-cycle uint))\n  (begin\n    (asserts! (is-eq (var-get admin) contract-caller) ERR_NOT_ADMIN)\n    (print {\n      bitcoin-block-height: burn-block-height,\n      snapshots-per-cycle: updated-snapshots-per-cycle,\n      cycle-id: (var-get cycle-id),\n      function-name: \"update-snapshots-per-cycle\",\n    })\n    (ok (var-set next-snapshots-per-cycle updated-snapshots-per-cycle))\n  )\n)\n\n(define-public (update-buffer-blocks (updated-buffer-blocks-per-cycle uint))\n  (begin\n    (asserts! (is-eq (var-get admin) contract-caller) ERR_NOT_ADMIN)\n    (print {\n      bitcoin-block-height: burn-block-height,\n      buffer-blocks-per-cycle: updated-buffer-blocks-per-cycle,\n      cycle-id: (var-get cycle-id),\n      function-name: \"update-buffer-blocks\",\n    })\n    (ok (var-set next-buffer-blocks-per-cycle\n      updated-buffer-blocks-per-cycle\n    ))\n  )\n)\n\n(define-public (update-cycle-data\n    (updated-snapshots-per-cycle uint)\n    (updated-blocks-per-snapshot uint)\n    (updated-buffer-blocks-per-cycle uint)\n  )\n  (begin\n    (asserts! (is-eq (var-get admin) contract-caller) ERR_NOT_ADMIN)\n    (print {\n      bitcoin-block-height: burn-block-height,\n      snapshot-length: updated-blocks-per-snapshot,\n      snapshots-per-cycle: updated-snapshots-per-cycle,\n      buffer-blocks-per-cycle: updated-buffer-blocks-per-cycle,\n      cycle-id: (var-get cycle-id),\n      function-name: \"update-cycle-data\",\n    })\n    (var-set next-snapshots-per-cycle updated-snapshots-per-cycle)\n    (var-set next-blocks-per-snapshot updated-blocks-per-snapshot)\n    (ok (var-set next-buffer-blocks-per-cycle\n      updated-buffer-blocks-per-cycle\n    ))\n  )\n)\n\n(define-public (update-cycle-data-before-initialized\n    (updated-snapshots-per-cycle uint)\n    (updated-blocks-per-snapshot uint)\n    (updated-buffer-blocks-per-cycle uint)\n  )\n  (begin\n    (asserts! (is-eq (var-get admin) contract-caller) ERR_NOT_ADMIN)\n    (asserts! (not (var-get is-contract-active))\n      ERR_CONTRACT_ALREADY_ACTIVE\n    )\n    (print {\n      bitcoin-block-height: burn-block-height,\n      snapshot-length: updated-blocks-per-snapshot,\n      snapshots-per-cycle: updated-snapshots-per-cycle,\n      buffer-blocks-per-cycle: updated-buffer-blocks-per-cycle,\n      cycle-id: (var-get cycle-id),\n      function-name: \"update-cycle-data\",\n    })\n    (var-set next-snapshots-per-cycle updated-snapshots-per-cycle)\n    (var-set next-blocks-per-snapshot updated-blocks-per-snapshot)\n    (ok (var-set next-buffer-blocks-per-cycle\n      updated-buffer-blocks-per-cycle\n    ))\n  )\n)\n\n(define-public (update-bitcoin-blocks-per-year (updated-bitcoin-blocks-per-year uint))\n  (begin\n    (asserts! (is-eq (var-get admin) contract-caller) ERR_NOT_ADMIN)\n    (print {\n      bitcoin-block-height: burn-block-height,\n      cycle-id: (var-get cycle-id),\n      bitcoin-blocks-per-year: updated-bitcoin-blocks-per-year,\n      function-name: \"update-bitcoin-blocks-per-year\",\n    })\n    (ok (var-set bitcoin-blocks-per-year updated-bitcoin-blocks-per-year))\n  )\n)\n\n(define-public (update-apr (new-apr-scaled uint))\n  (begin\n    (asserts! (is-eq (var-get admin) contract-caller) ERR_NOT_ADMIN)\n    (asserts! (>= new-apr-scaled MIN_APR_SCALED) ERR_APR_TOO_LOW)\n    (asserts! (<= new-apr-scaled MAX_APR_SCALED) ERR_APR_TOO_HIGH)\n    (ok (var-set annual-percentage-rate new-apr-scaled))\n  )\n)\n\n(define-public (update-yield-boost-multiplier (new-multiplier uint))\n  (begin\n    (asserts! (is-eq (var-get admin) contract-caller) ERR_NOT_ADMIN)\n    (asserts! (>= new-multiplier u1) ERR_MULTIPLIER_TOO_LOW)\n    (asserts! (<= new-multiplier u20) ERR_MULTIPLIER_TOO_HIGH)\n    (print {\n      bitcoin-block-height: burn-block-height,\n      yield-boost-multiplier: new-multiplier,\n      max-boost: (+ new-multiplier u1),\n      cycle-id: (var-get cycle-id),\n      function-name: \"update-yield-boost-multiplier\",\n    })\n    (ok (var-set yield-boost-multiplier new-multiplier))\n  )\n)\n\n(define-public (emergency-withdraw-sbtc\n    (amount uint)\n    (recipient principal)\n  )\n  (begin\n    (asserts! (is-eq contract-caller (var-get admin)) ERR_NOT_ADMIN)\n    (asserts! (> amount u0) ERR_INSUFFICIENT_FUNDS)\n    (let ((contract-balance (get-wallet-sbtc-balance current-contract)))\n      (asserts! (>= contract-balance amount) ERR_INSUFFICIENT_FUNDS)\n      (print {\n        bitcoin-block-height: burn-block-height,\n        cycle-id: (var-get cycle-id),\n        amount: amount,\n        recipient: recipient,\n        contract-balance: contract-balance,\n        function-name: \"emergency-withdraw-sbtc\",\n      })\n      (try! (transfer-sbtc-from-contract amount recipient))\n      (ok true)\n    )\n  )\n)\n\n(define-read-only (is-defi-protocol-healthy\n    (defi-name uint)\n    (check-cycle uint)\n    (check-snapshot uint)\n  )\n  (let ((status (map-get? compromised-defi-protocol { defi-name: defi-name })))\n    (if (is-none status)\n      true\n      (let (\n          (status-data (unwrap-panic status))\n          (compromised-cycle (get compromised-at-cycle status-data))\n          (compromised-snapshot (get compromised-at-snapshot status-data))\n        )\n        (or\n          (> compromised-cycle check-cycle)\n          (and\n            (is-eq compromised-cycle check-cycle)\n            (> compromised-snapshot check-snapshot)\n          )\n        )\n      )\n    )\n  )\n)\n\n(define-public (mark-defi-compromised\n    (defi-name uint)\n    (first-compromised-snapshot uint)\n  )\n  (begin\n    (asserts! (is-eq contract-caller (var-get admin)) ERR_NOT_ADMIN)\n    (print {\n      bitcoin-block-height: burn-block-height,\n      cycle-id: (var-get cycle-id),\n      defi-name: defi-name,\n      compromised-at-snapshot: first-compromised-snapshot,\n      function-name: \"mark-defi-compromised\",\n    })\n    (ok (map-set compromised-defi-protocol { defi-name: defi-name } {\n      compromised-at-cycle: (var-get cycle-id),\n      compromised-at-snapshot: first-compromised-snapshot,\n    }))\n  )\n)\n\n(define-public (restore-defi-protocol (defi-name uint))\n  (begin\n    (asserts! (is-eq contract-caller (var-get admin)) ERR_NOT_ADMIN)\n    (asserts!\n      (is-some (map-get? compromised-defi-protocol { defi-name: defi-name }))\n      ERR_DEFI_NOT_COMPROMISED\n    )\n    (print {\n      bitcoin-block-height: burn-block-height,\n      cycle-id: (var-get cycle-id),\n      defi-name: defi-name,\n      function-name: \"restore-defi-protocol\",\n    })\n    (ok (map-delete compromised-defi-protocol { defi-name: defi-name }))\n  )\n)\n\n(define-public (trigger-full-cycle-rollback)\n  (begin\n    (asserts! (is-eq contract-caller (var-get admin)) ERR_NOT_ADMIN)\n    (asserts!\n      (is-none (map-get? cycle-finalization-block-heights { cycle-id: (var-get cycle-id) }))\n      ERR_CANNOT_ROLLBACK_FINALIZED_CYCLE\n    )\n\n    (var-set current-cycle-rollback-id\n      (+ (var-get current-cycle-rollback-id) u1)\n    )\n\n    (var-set current-snapshot-index u0)\n    (var-set current-snapshot-count u0)\n    (var-set current-snapshot-total-sbtc u0)\n    (var-set current-snapshot-total-sbtc-in-defis u0)\n    (var-set current-snapshot-total-stx u0)\n    (var-set current-cycle-total-sbtc-in-wallet u0)\n    (var-set current-cycle-total-sbtc-in-defis u0)\n    (var-set current-cycle-total-stx u0)\n    (var-set last-operation-done u0)\n    (var-set are-snapshots-finalized false)\n    (var-set is-buffer-set false)\n    (var-set is-ratio-validated false)\n    (var-set are-weights-computed false)\n    (var-set is-distribution-enabled false)\n    (var-set total-weights-sum u0)\n    (var-set weights-computed-count u0)\n    (var-set participants-rewarded-count u0)\n\n    (var-set current-snapshot-bitcoin-block-height\n      (var-get current-cycle-bitcoin-block-height)\n    )\n    (var-set current-snapshot-stacks-block-height\n      (var-get current-cycle-stacks-block-height)\n    )\n\n    (map-set snapshot-aggregate-data {\n      cycle-id: (var-get cycle-id),\n      rollback-id: (var-get current-cycle-rollback-id),\n      snapshot-index: u0,\n    } {\n      stacks-block-height: (var-get current-cycle-stacks-block-height),\n      bitcoin-block-height: (var-get current-cycle-bitcoin-block-height),\n      total-sbtc-wallet: u0,\n      total-sbtc-defi: u0,\n      total-stx-stacked: u0,\n    })\n\n    (print {\n      bitcoin-block-height: burn-block-height,\n      cycle-id: (var-get cycle-id),\n      rollback-id: (var-get current-cycle-rollback-id),\n      function-name: \"trigger-full-cycle-rollback\",\n    })\n    (ok true)\n  )\n)\n\n(define-public (capture-snapshot-balances (principals (list 900 principal)))\n  (let ((stx-id-header-hash (unwrap!\n      (get-stacks-block-info? id-header-hash\n        (var-get current-snapshot-stacks-block-height)\n      )\n      ERR_STX_BLOCK_IN_FUTURE\n    )))\n    (asserts! (var-get is-contract-active) ERR_CONTRACT_NOT_ACTIVE)\n    (var-set snapshot-block-hash stx-id-header-hash)\n    (map capture-participant-balances principals)\n    (ok true)\n  )\n)\n\n(define-private (capture-participant-balances (enrolled-address principal))\n  (let (\n      (cycle-id-current (var-get cycle-id))\n      (current-snapshot-index-value (var-get current-snapshot-index))\n      (arkadiko (is-defi-protocol-healthy ARKADIKO cycle-id-current\n        current-snapshot-index-value\n      ))\n      (based-dollar (is-defi-protocol-healthy BASED_DOLLAR cycle-id-current\n        current-snapshot-index-value\n      ))\n      (bitflow (is-defi-protocol-healthy BITFLOW cycle-id-current\n        current-snapshot-index-value\n      ))\n      (granite (is-defi-protocol-healthy GRANITE cycle-id-current\n        current-snapshot-index-value\n      ))\n      (velar (is-defi-protocol-healthy VELAR cycle-id-current\n        current-snapshot-index-value\n      ))\n      (zest (is-defi-protocol-healthy ZEST cycle-id-current\n        current-snapshot-index-value\n      ))\n    )\n    (capture-participant-snapshot enrolled-address arkadiko\n      based-dollar bitflow granite velar zest\n    )\n  )\n)\n\n(define-public (capture-snapshot-balances-optimizer (principals (list\n  900\n  {\n    address: principal,\n    arkadiko: bool,\n    based-dollar: bool,\n    bitflow: bool,\n    granite: bool,\n    velar: bool,\n    zest: bool,\n  }\n)))\n  (let ((stx-id-header-hash (unwrap!\n      (get-stacks-block-info? id-header-hash\n        (var-get current-snapshot-stacks-block-height)\n      )\n      ERR_STX_BLOCK_IN_FUTURE\n    )))\n    (asserts! (var-get is-contract-active) ERR_CONTRACT_NOT_ACTIVE)\n    (asserts!\n      (is-some (map-get? optimized-snapshot-operators { operator-address: contract-caller }))\n      ERR_NOT_OPTIMIZED_OPERATOR\n    )\n    (var-set snapshot-block-hash stx-id-header-hash)\n    (map capture-participant-balances-optimizer principals)\n    (ok true)\n  )\n)\n\n(define-private (capture-participant-balances-optimizer (user {\n  address: principal,\n  arkadiko: bool,\n  based-dollar: bool,\n  bitflow: bool,\n  granite: bool,\n  velar: bool,\n  zest: bool,\n}))\n  (let (\n      (enrolled-address (get address user))\n      (cycle-id-current (var-get cycle-id))\n      (current-snapshot-index-value (var-get current-snapshot-index))\n      (arkadiko (and (get arkadiko user) (is-defi-protocol-healthy ARKADIKO cycle-id-current\n        current-snapshot-index-value\n      )))\n      (based-dollar (and (get based-dollar user) (is-defi-protocol-healthy BASED_DOLLAR cycle-id-current\n        current-snapshot-index-value\n      )))\n      (bitflow (and (get bitflow user) (is-defi-protocol-healthy BITFLOW cycle-id-current\n        current-snapshot-index-value\n      )))\n      (granite (and (get granite user) (is-defi-protocol-healthy GRANITE cycle-id-current\n        current-snapshot-index-value\n      )))\n      (velar (and (get velar user) (is-defi-protocol-healthy VELAR cycle-id-current\n        current-snapshot-index-value\n      )))\n      (zest (and (get zest user) (is-defi-protocol-healthy ZEST cycle-id-current\n        current-snapshot-index-value\n      )))\n    )\n    (capture-participant-snapshot enrolled-address arkadiko\n      based-dollar bitflow granite velar zest\n    )\n  )\n)\n\n(define-private (capture-participant-snapshot\n    (enrolled-address principal)\n    (arkadiko bool)\n    (based-dollar bool)\n    (bitflow bool)\n    (granite bool)\n    (velar bool)\n    (zest bool)\n  )\n  (let (\n      (cycle-id-current (var-get cycle-id))\n      (current-snapshot-index-value (var-get current-snapshot-index))\n      (rollback-id-current (var-get current-cycle-rollback-id))\n      (participant-data (at-block (var-get current-cycle-stacks-block-hash)\n        (map-get? participants { address: enrolled-address })\n      ))\n      (participant-holding-data (map-get? participant-holdings-per-cycle {\n        cycle-id: cycle-id-current,\n        rollback-id: rollback-id-current,\n        participant-address: enrolled-address,\n      }))\n      (sbtc-wallet-balance (at-block (var-get snapshot-block-hash)\n        (get-wallet-sbtc-balance enrolled-address)\n      ))\n      (sbtc-defi-balances (at-block (var-get snapshot-block-hash)\n        (get-defi-sbtc-balance {\n          address: enrolled-address,\n          arkadiko: arkadiko,\n          based-dollar: based-dollar,\n          bitflow: bitflow,\n          granite: granite,\n          velar: velar,\n          zest: zest,\n        })\n      ))\n      (sbtc-arkadiko-amount (get arkadiko sbtc-defi-balances))\n      (sbtc-based-dollar-amount (get based-dollar sbtc-defi-balances))\n      (sbtc-bitflow-amount (get bitflow sbtc-defi-balances))\n      (sbtc-granite-amount (get granite sbtc-defi-balances))\n      (sbtc-velar-amount (get velar sbtc-defi-balances))\n      (sbtc-zest-amount (get zest sbtc-defi-balances))\n      (sbtc-total-defi-amount (get total sbtc-defi-balances))\n    )\n    (if (or\n        (is-none participant-data)\n        (and (is-some participant-data) (is-eq\n          (default-to SNAPSHOT_NOT_TAKEN_MARKER\n            (get last-snapshot-index participant-holding-data)\n          )\n          current-snapshot-index-value\n        ))\n      )\n      true\n      (let (\n          (participant-stacking-address (unwrap-panic (get stacking-address participant-data)))\n          (stacking-holding-data (map-get? stx-stacked-by-stacking-address {\n            cycle-id: cycle-id-current,\n            rollback-id: rollback-id-current,\n            stacking-address: participant-stacking-address,\n          }))\n          (participant-tracking-address (unwrap-panic (get tracking-address participant-data)))\n          (tracking-holding-data (map-get? sbtc-holdings-by-tracking-address {\n            cycle-id: cycle-id-current,\n            rollback-id: rollback-id-current,\n            tracking-address: participant-tracking-address,\n          }))\n          (stx-stacked-amount (get-amount-stacked-at-block-height\n            participant-stacking-address\n            (var-get current-snapshot-stacks-block-height)\n          ))\n        )\n        (var-set current-snapshot-total-sbtc\n          (+ (var-get current-snapshot-total-sbtc) sbtc-wallet-balance)\n        )\n        (var-set current-snapshot-count\n          (+ (var-get current-snapshot-count) u1)\n        )\n        (var-set current-snapshot-total-stx\n          (+ (var-get current-snapshot-total-stx) stx-stacked-amount)\n        )\n        (map-set participant-holdings-per-cycle {\n          cycle-id: cycle-id-current,\n          rollback-id: rollback-id-current,\n          participant-address: enrolled-address,\n        } {\n          sbtc-wallet-amount: (+ sbtc-wallet-balance\n            (default-to u0\n              (get sbtc-wallet-amount participant-holding-data)\n            )),\n          sbtc-defi-amount: (+ sbtc-total-defi-amount\n            (default-to u0\n              (get sbtc-defi-amount participant-holding-data)\n            )),\n          stx-stacked-amount: (+ stx-stacked-amount\n            (default-to u0\n              (get stx-stacked-amount participant-holding-data)\n            )),\n          last-snapshot-index: current-snapshot-index-value,\n          has-been-rewarded: false,\n          reward-amount: u0,\n        })\n        (map-set sbtc-holdings-by-tracking-address {\n          cycle-id: cycle-id-current,\n          rollback-id: rollback-id-current,\n          tracking-address: participant-tracking-address,\n        } {\n          sbtc-wallet-amount: (+ sbtc-wallet-balance\n            (default-to u0\n              (get sbtc-wallet-amount tracking-holding-data)\n            )),\n          sbtc-defi-amount: (+ sbtc-total-defi-amount\n            (default-to u0 (get sbtc-defi-amount tracking-holding-data))\n          ),\n          has-been-rewarded: false,\n        })\n        (if (is-some (map-get? snapshot-processed-stacking-addresses {\n            cycle-id: cycle-id-current,\n            rollback-id: rollback-id-current,\n            snapshot-index: current-snapshot-index-value,\n            stacking-address: participant-stacking-address,\n          }))\n          true\n          (begin\n            (map-set stx-stacked-by-stacking-address {\n              cycle-id: cycle-id-current,\n              rollback-id: rollback-id-current,\n              stacking-address: participant-stacking-address,\n            } { stx-amount: (+ stx-stacked-amount\n              (default-to u0 (get stx-amount stacking-holding-data))\n            ) }\n            )\n            (map-set snapshot-processed-stacking-addresses {\n              cycle-id: cycle-id-current,\n              rollback-id: rollback-id-current,\n              snapshot-index: current-snapshot-index-value,\n              stacking-address: participant-stacking-address,\n            } { has-been-processed: true }\n            )\n          )\n        )\n        (var-set current-snapshot-total-sbtc-in-defis\n          (+ (var-get current-snapshot-total-sbtc-in-defis)\n            sbtc-total-defi-amount\n          ))\n        (print {\n          cycle-id: cycle-id-current,\n          snapshot-index: current-snapshot-index-value,\n          rollback-id: rollback-id-current,\n          enrolled-address: enrolled-address,\n          tracking-address: participant-tracking-address,\n          stacking-address: participant-stacking-address,\n          sbtc-wallet-balance: sbtc-wallet-balance,\n          sbtc-total-defi-balance: sbtc-total-defi-amount,\n          sbtc-arkadiko: sbtc-arkadiko-amount,\n          sbtc-based-dollar: sbtc-based-dollar-amount,\n          sbtc-bitflow: sbtc-bitflow-amount,\n          sbtc-granite: sbtc-granite-amount,\n          sbtc-velar: sbtc-velar-amount,\n          sbtc-zest: sbtc-zest-amount,\n          stx-stacked: stx-stacked-amount,\n          function-name: \"compute-current-snapshot-balance\",\n        })\n        true\n      )\n    )\n  )\n)\n\n(define-public (advance-to-next-snapshot (new-stx-block-height uint))\n  (let ((next-snapshot-bitcoin-block-height (+ (var-get current-snapshot-bitcoin-block-height)\n      (var-get blocks-per-snapshot)\n    )))\n    (asserts! (var-get is-contract-active) ERR_CONTRACT_NOT_ACTIVE)\n    (asserts! (>= burn-block-height next-snapshot-bitcoin-block-height)\n      ERR_NOT_NEW_SNAPSHOT_YET\n    )\n    (asserts!\n      (is-eq (var-get current-snapshot-count)\n        (var-get current-cycle-participants-count)\n      )\n      ERR_NOT_SNAPSHOTTED_ALL_PARTICIPANTS\n    )\n    (asserts!\n      (not (is-eq (var-get snapshots-per-cycle)\n        (+ (var-get current-snapshot-index) u1)\n      ))\n      ERR_CYCLE_ENDED\n    )\n    (asserts!\n      (< next-snapshot-bitcoin-block-height\n        (var-get next-cycle-bitcoin-block-height)\n      )\n      ERR_CYCLE_ENDED_2\n    )\n    (asserts!\n      (unwrap-panic (validate-bitcoin-block new-stx-block-height\n        next-snapshot-bitcoin-block-height\n      ))\n      ERR_STX_BLOCK_NOT_MATCHING\n    )\n\n    (var-set current-snapshot-bitcoin-block-height\n      next-snapshot-bitcoin-block-height\n    )\n    (var-set current-cycle-total-sbtc-in-wallet\n      (+ (var-get current-cycle-total-sbtc-in-wallet)\n        (var-get current-snapshot-total-sbtc)\n      ))\n    (var-set current-cycle-total-sbtc-in-defis\n      (+ (var-get current-cycle-total-sbtc-in-defis)\n        (var-get current-snapshot-total-sbtc-in-defis)\n      ))\n    (var-set current-cycle-total-stx\n      (+ (var-get current-cycle-total-stx)\n        (var-get current-snapshot-total-stx)\n      ))\n    (map-set snapshot-aggregate-data {\n      cycle-id: (var-get cycle-id),\n      rollback-id: (var-get current-cycle-rollback-id),\n      snapshot-index: (var-get current-snapshot-index),\n    }\n      (merge\n        (unwrap-panic (map-get? snapshot-aggregate-data {\n          cycle-id: (var-get cycle-id),\n          rollback-id: (var-get current-cycle-rollback-id),\n          snapshot-index: (var-get current-snapshot-index),\n        })) {\n        total-sbtc-wallet: (var-get current-cycle-total-sbtc-in-wallet),\n        total-sbtc-defi: (var-get current-cycle-total-sbtc-in-defis),\n        total-stx-stacked: (var-get current-cycle-total-stx),\n      })\n    )\n    (var-set current-snapshot-total-sbtc u0)\n    (var-set current-snapshot-total-sbtc-in-defis u0)\n    (var-set current-snapshot-total-stx u0)\n    (var-set current-snapshot-count u0)\n    (var-set current-snapshot-index\n      (+ (var-get current-snapshot-index) u1)\n    )\n    (map-set snapshot-aggregate-data {\n      cycle-id: (var-get cycle-id),\n      rollback-id: (var-get current-cycle-rollback-id),\n      snapshot-index: (var-get current-snapshot-index),\n    } {\n      stacks-block-height: new-stx-block-height,\n      bitcoin-block-height: next-snapshot-bitcoin-block-height,\n      total-sbtc-wallet: u0,\n      total-sbtc-defi: u0,\n      total-stx-stacked: u0,\n    })\n    (ok (var-set current-snapshot-stacks-block-height new-stx-block-height))\n  )\n)\n\n(define-public (start-buffer-period)\n  (begin\n    (asserts! (var-get is-contract-active) ERR_CONTRACT_NOT_ACTIVE)\n    (asserts! (not (var-get is-buffer-set)) ERR_BUFFER_ALREADY_SET)\n    (asserts!\n      (is-eq (+ (var-get current-snapshot-index) u1)\n        (var-get snapshots-per-cycle)\n      )\n      ERR_NOT_ALL_SNAPSHOTS\n    )\n    (asserts!\n      (is-eq (var-get current-snapshot-count)\n        (var-get current-cycle-participants-count)\n      )\n      ERR_NOT_SNAPSHOTTED_ALL_PARTICIPANTS\n    )\n    (var-set is-buffer-set true)\n    (var-set current-cycle-total-sbtc-in-wallet\n      (+ (var-get current-cycle-total-sbtc-in-wallet)\n        (var-get current-snapshot-total-sbtc)\n      ))\n    (var-set current-cycle-total-sbtc-in-defis\n      (+ (var-get current-cycle-total-sbtc-in-defis)\n        (var-get current-snapshot-total-sbtc-in-defis)\n      ))\n    (var-set current-cycle-total-stx\n      (+ (var-get current-cycle-total-stx)\n        (var-get current-snapshot-total-stx)\n      ))\n    (map-set snapshot-aggregate-data {\n      cycle-id: (var-get cycle-id),\n      rollback-id: (var-get current-cycle-rollback-id),\n      snapshot-index: (var-get current-snapshot-index),\n    }\n      (merge\n        (unwrap-panic (map-get? snapshot-aggregate-data {\n          cycle-id: (var-get cycle-id),\n          rollback-id: (var-get current-cycle-rollback-id),\n          snapshot-index: (var-get current-snapshot-index),\n        })) {\n        total-sbtc-wallet: (var-get current-cycle-total-sbtc-in-wallet),\n        total-sbtc-defi: (var-get current-cycle-total-sbtc-in-defis),\n        total-stx-stacked: (var-get current-cycle-total-stx),\n      })\n    )\n    (print {\n      cycle-id: (var-get cycle-id),\n      current-cycle-total-sbtc-in-wallet: (var-get current-cycle-total-sbtc-in-wallet),\n      current-cycle-total-sbtc-in-defis: (var-get current-cycle-total-sbtc-in-defis),\n      current-cycle-total-stx: (var-get current-cycle-total-stx),\n      function-name: \"conclude-cycle-snapshots\",\n    })\n    (var-set last-operation-done u1)\n    (ok true)\n  )\n)\n\n(define-public (finalize-snapshots)\n  (begin\n    (asserts! (var-get is-contract-active) ERR_CONTRACT_NOT_ACTIVE)\n    (asserts! (not (var-get are-snapshots-finalized))\n      ERR_SNAPSHOTS_ALREADY_CONCLUDED\n    )\n    (asserts! (var-get is-buffer-set) ERR_BUFFER_NOT_ACTIVATED)\n    (asserts!\n      (>= burn-block-height\n        (+ (var-get buffer-period-start-block)\n          (var-get buffer-blocks-per-cycle)\n        ))\n      ERR_BUFFER_PERIOD_NOT_PASSED\n    )\n    (var-set last-operation-done u2)\n    (ok (var-set are-snapshots-finalized true))\n  )\n)\n\n(define-public (propose-golden-ratio (ratio uint))\n  (let (\n      (cycle-id-current (var-get cycle-id))\n      (rollback-id-current (var-get current-cycle-rollback-id))\n    )\n    (asserts! (var-get are-snapshots-finalized)\n      ERR_SNAPSHOTS_NOT_CONCLUDED\n    )\n    (asserts!\n      (is-none (map-get? validated-golden-ratio-per-cycle { cycle-id: cycle-id-current }))\n      ERR_ALREADY_VALIDATED_RATIO\n    )\n    (asserts!\n      (is-none (map-get? golden-ratio-proposals {\n        cycle-id: cycle-id-current,\n        proposer-address: contract-caller,\n      }))\n      ERR_ALREADY_PROPOSED_RATIO\n    )\n    (map-set golden-ratio-proposals {\n      cycle-id: cycle-id-current,\n      proposer-address: contract-caller,\n    } {\n      proposed-golden-ratio: ratio,\n      participants-tallied: u0,\n      sbtc-below-ratio: u0,\n      sbtc-above-ratio: u0,\n      sbtc-equal-ratio: u0,\n    })\n    (print {\n      cycle-id: cycle-id-current,\n      proposed-address: contract-caller,\n      function-name: \"propose-golden-ratio\",\n    })\n    (ok true)\n  )\n)\n\n(define-public (change-proposed-golden-ratio (ratio uint))\n  (let (\n      (cycle-id-current (var-get cycle-id))\n      (rollback-id-current (var-get current-cycle-rollback-id))\n    )\n    (asserts!\n      (is-some (map-get? golden-ratio-proposals {\n        cycle-id: cycle-id-current,\n        proposer-address: contract-caller,\n      }))\n      ERR_RATIO_NOT_PROPOSED\n    )\n    (asserts!\n      (is-none (map-get? validated-golden-ratio-per-cycle { cycle-id: cycle-id-current }))\n      ERR_ALREADY_VALIDATED_RATIO\n    )\n    (map-set golden-ratio-proposals {\n      cycle-id: cycle-id-current,\n      proposer-address: contract-caller,\n    } {\n      proposed-golden-ratio: ratio,\n      participants-tallied: u0,\n      sbtc-below-ratio: u0,\n      sbtc-above-ratio: u0,\n      sbtc-equal-ratio: u0,\n    })\n    (ok true)\n  )\n)\n\n(define-public (tally-participant-ratios (principals (list 900 principal)))\n  (let (\n      (cycle-id-current (var-get cycle-id))\n      (rollback-id-current (var-get current-cycle-rollback-id))\n      (golden-ratio-proposals-map (unwrap!\n        (map-get? golden-ratio-proposals {\n          cycle-id: cycle-id-current,\n          proposer-address: contract-caller,\n        })\n        ERR_RATIO_NOT_PROPOSED\n      ))\n      (golden-ratio (get proposed-golden-ratio golden-ratio-proposals-map))\n      (participants-count (get participants-tallied golden-ratio-proposals-map))\n    )\n    (asserts!\n      (is-none (map-get? validated-golden-ratio-per-cycle { cycle-id: cycle-id-current }))\n      ERR_ALREADY_VALIDATED_RATIO\n    )\n    (asserts!\n      (< participants-count (var-get current-cycle-participants-count))\n      ERR_COMPUTED_RATIO_ALL_PARTICIPANTS\n    )\n    (var-set ratio-being-tallied golden-ratio)\n    (map tally-user-ratio principals)\n    (ok true)\n  )\n)\n\n(define-private (tally-user-ratio (address principal))\n  (let (\n      (current-cycle-id (var-get cycle-id))\n      (current-rollback-id (var-get current-cycle-rollback-id))\n      (participant-state (unwrap-panic (at-block (var-get current-cycle-stacks-block-hash)\n        (map-get? participants { address: address })\n      )))\n      (stacking-address (get stacking-address participant-state))\n      (stacking-state (unwrap-panic (map-get? stx-stacked-by-stacking-address {\n        stacking-address: stacking-address,\n        cycle-id: current-cycle-id,\n        rollback-id: current-rollback-id,\n      })))\n      (stx-user-amount (get stx-amount stacking-state))\n      (tracking-address (get tracking-address participant-state))\n      (tracking-state (unwrap-panic (map-get? sbtc-holdings-by-tracking-address {\n        tracking-address: tracking-address,\n        cycle-id: current-cycle-id,\n        rollback-id: current-rollback-id,\n      })))\n      (sbtc-user-amount (get sbtc-wallet-amount tracking-state))\n      (sbtc-user-amount-defis (get sbtc-defi-amount tracking-state))\n      (current-golden-ratio-proposals (var-get ratio-being-tallied))\n      (golden-ratio-proposals-map (unwrap-panic (map-get? golden-ratio-proposals {\n        cycle-id: current-cycle-id,\n        proposer-address: contract-caller,\n      })))\n      (proposed-participants-counted (get participants-tallied golden-ratio-proposals-map))\n    )\n    (if (is-some (map-get? participant-ratio-computation-status {\n        cycle-id: current-cycle-id,\n        proposer-address: contract-caller,\n        ratio-value: current-golden-ratio-proposals,\n        participant-address: address,\n      }))\n      true\n      (begin\n        (print {\n          cycle-id: current-cycle-id,\n          enrolled-address: address,\n          stacking-address: stacking-address,\n          tracking-address: tracking-address,\n          function-name: \"count-golden-ratio\",\n          stx-user-amount: stx-user-amount,\n          sbtc-user-amount: sbtc-user-amount,\n          sbtc-user-amount-defis: sbtc-user-amount-defis,\n          reward-mechanism: (var-get reward-calculation-mechanism),\n          contract-caller: contract-caller,\n        })\n        (map-set participant-ratio-computation-status {\n          cycle-id: current-cycle-id,\n          proposer-address: contract-caller,\n          ratio-value: current-golden-ratio-proposals,\n          participant-address: address,\n        } { has-been-computed: true }\n        )\n        (map-set golden-ratio-proposals {\n          cycle-id: current-cycle-id,\n          proposer-address: contract-caller,\n        }\n          (merge golden-ratio-proposals-map { participants-tallied: (+ proposed-participants-counted u1) })\n        )\n        (if (or\n            (is-eq sbtc-user-amount u0)\n            (is-some (map-get? tracking-address-ratio-computation-status {\n              cycle-id: current-cycle-id,\n              proposer-address: contract-caller,\n              ratio-value: current-golden-ratio-proposals,\n              tracking-address: tracking-address,\n            }))\n          )\n          true\n          (let (\n              (mechanism (var-get reward-calculation-mechanism))\n              (sbtc-for-ratio sbtc-user-amount)\n              (golden-ratio-proposals-map-updated (unwrap-panic (map-get? golden-ratio-proposals {\n                cycle-id: current-cycle-id,\n                proposer-address: contract-caller,\n              })))\n              (sbtc-below (get sbtc-below-ratio golden-ratio-proposals-map))\n              (sbtc-above (get sbtc-above-ratio golden-ratio-proposals-map))\n              (sbtc-equal (get sbtc-equal-ratio golden-ratio-proposals-map))\n              (user-ratio (/ (* stx-user-amount RATIO_SCALE_FACTOR) sbtc-for-ratio))\n            )\n            (map-set tracking-address-ratio-computation-status {\n              cycle-id: current-cycle-id,\n              proposer-address: contract-caller,\n              ratio-value: current-golden-ratio-proposals,\n              tracking-address: tracking-address,\n            } { has-been-computed: true }\n            )\n            (if (< user-ratio current-golden-ratio-proposals)\n              (begin\n                (print {\n                  user-address: address,\n                  user-ratio: user-ratio,\n                  action: \"below\",\n                  user-amount: sbtc-for-ratio,\n                  mechanism: mechanism,\n                })\n                (map-set golden-ratio-proposals {\n                  cycle-id: current-cycle-id,\n                  proposer-address: contract-caller,\n                }\n                  (merge golden-ratio-proposals-map-updated { sbtc-below-ratio: (+ sbtc-below sbtc-for-ratio) })\n                )\n              )\n              (if (is-eq user-ratio current-golden-ratio-proposals)\n                (begin\n                  (print {\n                    user-address: address,\n                    user-ratio: user-ratio,\n                    action: \"equal\",\n                    user-amount: sbtc-for-ratio,\n                    mechanism: mechanism,\n                  })\n                  (map-set golden-ratio-proposals {\n                    cycle-id: current-cycle-id,\n                    proposer-address: contract-caller,\n                  }\n                    (merge golden-ratio-proposals-map-updated { sbtc-equal-ratio: (+ sbtc-equal sbtc-for-ratio) })\n                  )\n                )\n                (begin\n                  (print {\n                    user-address: address,\n                    user-ratio: user-ratio,\n                    action: \"above\",\n                    user-amount: sbtc-for-ratio,\n                    mechanism: mechanism,\n                  })\n                  (map-set golden-ratio-proposals {\n                    cycle-id: current-cycle-id,\n                    proposer-address: contract-caller,\n                  }\n                    (merge golden-ratio-proposals-map-updated { sbtc-above-ratio: (+ sbtc-above sbtc-for-ratio) })\n                  )\n                )\n              )\n            )\n            true\n          )\n        )\n      )\n    )\n  )\n)\n\n(define-public (set-max-percentage-above-golden-ratio (new-max-percentage-above-golden-ratio uint))\n  (begin\n    (asserts! (is-eq contract-caller (var-get admin)) ERR_NOT_ADMIN)\n    (ok (var-set max-percentage-above-golden-ratio\n      new-max-percentage-above-golden-ratio\n    ))\n  )\n)\n\n(define-public (validate-ratio)\n  (let (\n      (cycle-id-current (var-get cycle-id))\n      (rollback-id-current (var-get current-cycle-rollback-id))\n      (golden-ratio-proposals-map (unwrap!\n        (map-get? golden-ratio-proposals {\n          cycle-id: cycle-id-current,\n          proposer-address: contract-caller,\n        })\n        ERR_RATIO_NOT_PROPOSED\n      ))\n      (golden-ratio (get proposed-golden-ratio golden-ratio-proposals-map))\n      (participants-count (get participants-tallied golden-ratio-proposals-map))\n      (sbtc-below (get sbtc-below-ratio golden-ratio-proposals-map))\n      (sbtc-above (get sbtc-above-ratio golden-ratio-proposals-map))\n      (sbtc-equal (get sbtc-equal-ratio golden-ratio-proposals-map))\n      (max-sbtc-allowed-above-ratio (/\n        (* (var-get max-percentage-above-golden-ratio)\n          (var-get current-cycle-total-sbtc-in-wallet)\n        )\n        PERCENTAGE_PRECISION_FACTOR\n      ))\n      (is-above-within-threshold (<= (* u100 sbtc-above) max-sbtc-allowed-above-ratio))\n      (is-above-plus-equal-within-threshold (>= (* u100 (+ sbtc-above sbtc-equal))\n        max-sbtc-allowed-above-ratio\n      ))\n      (total-stx (var-get current-cycle-total-stx))\n      (all-stx-is-zero (is-eq total-stx u0))\n    )\n    (print {\n      sbtc-above: sbtc-above,\n      sbtc-below: sbtc-below,\n      sbtc-equal: sbtc-equal,\n      sbtc-total: (+ (var-get current-cycle-total-sbtc-in-wallet)\n        (var-get current-cycle-total-sbtc-in-defis)\n      ),\n    })\n    (asserts!\n      (is-none (map-get? validated-golden-ratio-per-cycle { cycle-id: cycle-id-current }))\n      ERR_ALREADY_VALIDATED_RATIO\n    )\n    (asserts!\n      (is-eq participants-count\n        (var-get current-cycle-participants-count)\n      )\n      ERR_COMPUTE_RATIO_FOR_ALL_PARTICIPANTS_FIRST\n    )\n\n    (asserts!\n      (or (not all-stx-is-zero) (is-eq golden-ratio RATIO_SCALE_FACTOR))\n      ERR_INVALID_RATIO_FOR_ZERO_STX\n    )\n\n    (if (not all-stx-is-zero)\n      (begin\n        (asserts! is-above-within-threshold ERR_RATIO_TOO_LOW)\n        (asserts! is-above-plus-equal-within-threshold\n          ERR_RATIO_TOO_HIGH\n        )\n        false\n      )\n      false\n    )\n\n    (var-set is-ratio-validated true)\n    (map-set validated-golden-ratio-per-cycle { cycle-id: cycle-id-current } { golden-ratio: golden-ratio })\n    (var-set last-operation-done u3)\n    (ok true)\n  )\n)\n\n(define-read-only (get-ratio-data)\n  (let (\n      (cycle-id-current (var-get cycle-id))\n      (golden-ratio-proposals-map (unwrap!\n        (map-get? golden-ratio-proposals {\n          cycle-id: cycle-id-current,\n          proposer-address: contract-caller,\n        })\n        ERR_RATIO_NOT_PROPOSED\n      ))\n    )\n    (ok {\n      sbtc-total-totals: (+ (var-get current-cycle-total-sbtc-in-wallet)\n        (var-get current-cycle-total-sbtc-in-defis)\n      ),\n      nr-snapshots: (var-get snapshots-per-cycle),\n      sbtc-below: (get sbtc-below-ratio golden-ratio-proposals-map),\n      sbtc-above: (get sbtc-above-ratio golden-ratio-proposals-map),\n    })\n  )\n)\n\n(define-public (calculate-participant-weights (principals (list 900 principal)))\n  (begin\n    (asserts! (var-get is-ratio-validated) ERR_RATIOS_NOT_CONCLUDED)\n    (ok (map calculate-participant-weight principals))\n  )\n)\n\n(define-private (calculate-participant-weight (enrolled-address principal))\n  (let (\n      (cycle-id-current (var-get cycle-id))\n      (rollback-id-current (var-get current-cycle-rollback-id))\n      (participant-state (unwrap-panic (at-block (var-get current-cycle-stacks-block-hash)\n        (map-get? participants { address: enrolled-address })\n      )))\n      (participant-stacking-address (get stacking-address participant-state))\n      (participant-tracking-address (get tracking-address participant-state))\n      (stacking-state (unwrap-panic (map-get? stx-stacked-by-stacking-address {\n        stacking-address: participant-stacking-address,\n        cycle-id: cycle-id-current,\n        rollback-id: rollback-id-current,\n      })))\n      (tracking-state (unwrap-panic (map-get? sbtc-holdings-by-tracking-address {\n        tracking-address: participant-tracking-address,\n        cycle-id: cycle-id-current,\n        rollback-id: rollback-id-current,\n      })))\n      (stx-stacked-amount (get stx-amount stacking-state))\n      (sbtc-wallet-amount (get sbtc-wallet-amount tracking-state))\n      (sbtc-defi-amount (get sbtc-defi-amount tracking-state))\n      (boost-multiplier (var-get yield-boost-multiplier))\n      (golden-ratio-data (unwrap-panic (map-get? validated-golden-ratio-per-cycle { cycle-id: cycle-id-current })))\n      (D-raw (get golden-ratio golden-ratio-data))\n      (golden-ratio (if (> D-raw u0)\n        D-raw\n        MIN_GOLDEN_RATIO\n      ))\n    )\n    (if (is-some (map-get? participant-weight-computation-status {\n        cycle-id: cycle-id-current,\n        participant-address: enrolled-address,\n      }))\n      true\n      (if (is-some (map-get? participant-weights-by-tracking-address {\n          cycle-id: cycle-id-current,\n          tracking-address: participant-tracking-address,\n        }))\n        (begin\n          (map-set participant-weight-computation-status {\n            cycle-id: cycle-id-current,\n            participant-address: enrolled-address,\n          } { has-been-computed: true }\n          )\n          (var-set weights-computed-count\n            (+ (var-get weights-computed-count) u1)\n          )\n          (print {\n            cycle-id: cycle-id-current,\n            enrolled-address: enrolled-address,\n            tracking-address: participant-tracking-address,\n            sbtc-wallet-amount: sbtc-wallet-amount,\n            sbtc-defi-amount: sbtc-defi-amount,\n            stx-stacked-amount: stx-stacked-amount,\n            golden-ratio: golden-ratio,\n            note: \"weight-already-exists\",\n            function-name: \"compute-weight\",\n          })\n          true\n        )\n        (let (\n            (mechanism (var-get reward-calculation-mechanism))\n            (snapshots-count (var-get snapshots-per-cycle))\n            (weight-data (let (\n                (user-ratio-wallet (if (> sbtc-wallet-amount u0)\n                  (/ (* stx-stacked-amount RATIO_SCALE_FACTOR)\n                    sbtc-wallet-amount\n                  )\n                  u0\n                ))\n                (boost-ratio-wallet (if (is-eq sbtc-wallet-amount u0)\n                  u0\n                  (if (< golden-ratio MIN_GOLDEN_RATIO)\n                    u0\n                    (if (> user-ratio-wallet golden-ratio)\n                      RATIO_SCALE_FACTOR\n                      (/ (* user-ratio-wallet RATIO_SCALE_FACTOR)\n                        golden-ratio\n                      )\n                    )\n                  )\n                ))\n                (boost-ratio-defi (if (is-eq sbtc-defi-amount u0)\n                  u0\n                  RATIO_SCALE_FACTOR\n                ))\n                (sqrt-boost-ratio-wallet (sqrti boost-ratio-wallet))\n                (sqrt-boost-ratio-defi (sqrti boost-ratio-defi))\n                (w-wallet (if (is-eq sbtc-wallet-amount u0)\n                  u0\n                  (/\n                    (* sbtc-wallet-amount\n                      (+ RATIO_SCALE_FACTOR\n                        (* boost-multiplier sqrt-boost-ratio-wallet\n                          SQRT_RATIO_SCALE_FACTOR\n                        ))\n                    )\n                    (* RATIO_SCALE_FACTOR snapshots-count)\n                  )\n                ))\n                (w-defi (if (is-eq sbtc-defi-amount u0)\n                  u0\n                  (/\n                    (* sbtc-defi-amount\n                      (+ RATIO_SCALE_FACTOR\n                        (* boost-multiplier sqrt-boost-ratio-defi\n                          SQRT_RATIO_SCALE_FACTOR\n                        ))\n                    )\n                    (* RATIO_SCALE_FACTOR snapshots-count)\n                  )\n                ))\n              )\n              {\n                user-ratio-wallet: user-ratio-wallet,\n                boost-ratio-wallet: boost-ratio-wallet,\n                boost-ratio-defi: boost-ratio-defi,\n                weight-wallet: w-wallet,\n                weight-defi: w-defi,\n              }\n            ))\n            (user-ratio-wallet (get user-ratio-wallet weight-data))\n            (boost-ratio-wallet (get boost-ratio-wallet weight-data))\n            (boost-ratio-defi (get boost-ratio-defi weight-data))\n            (weight-wallet (get weight-wallet weight-data))\n            (weight-defi (get weight-defi weight-data))\n            (total-weight (+ weight-wallet weight-defi))\n          )\n          (map-set participant-weights-by-tracking-address {\n            cycle-id: cycle-id-current,\n            tracking-address: participant-tracking-address,\n          } {\n            weight-wallet: weight-wallet,\n            weight-defi: weight-defi,\n            weight-total: total-weight,\n          })\n          (map-set participant-weight-computation-status {\n            cycle-id: cycle-id-current,\n            participant-address: enrolled-address,\n          } { has-been-computed: true }\n          )\n          (var-set weights-computed-count\n            (+ (var-get weights-computed-count) u1)\n          )\n          (print {\n            cycle-id: cycle-id-current,\n            enrolled-address: enrolled-address,\n            tracking-address: participant-tracking-address,\n            stx-stacked-amount: stx-stacked-amount,\n            sbtc-wallet-amount: sbtc-wallet-amount,\n            sbtc-defi-amount: sbtc-defi-amount,\n            user-ratio-wallet: user-ratio-wallet,\n            golden-ratio: golden-ratio,\n            boost-ratio-wallet: boost-ratio-wallet,\n            boost-ratio-defi: boost-ratio-defi,\n            weight-wallet: weight-wallet,\n            weight-defi: weight-defi,\n            total-weight: total-weight,\n            reward-mechanism: (var-get reward-calculation-mechanism),\n            defi-multiplier: DECIMAL_PRECISION_8,\n            function-name: \"compute-weight\",\n          })\n          (var-set total-weights-sum\n            (+ (var-get total-weights-sum) total-weight)\n          )\n          true\n        )\n      )\n    )\n  )\n)\n\n(define-public (finalize-weight-computation)\n  (let ((cycle-id-current (var-get cycle-id)))\n    (asserts! (var-get is-ratio-validated) ERR_RATIOS_NOT_CONCLUDED)\n    (asserts! (not (var-get are-weights-computed))\n      ERR_WEIGHTS_ALREADY_COMPUTED\n    )\n    (asserts!\n      (is-eq (var-get weights-computed-count)\n        (var-get current-cycle-participants-count)\n      )\n      ERR_NOT_ALL_WEIGHTS_COMPUTED\n    )\n    (var-set are-weights-computed true)\n    (print {\n      cycle-id: cycle-id-current,\n      total-weights-sum: (var-get total-weights-sum),\n      function-name: \"finalize-weights\",\n    })\n    (var-set last-operation-done u4)\n    (ok true)\n  )\n)\n\n(define-read-only (get-weight-computation-status)\n  {\n    are-weights-computed: (var-get are-weights-computed),\n    total-weights-sum: (var-get total-weights-sum),\n    cycle-id: (var-get cycle-id),\n  }\n)\n\n(define-read-only (get-participant-weight\n    (cycle uint)\n    (tracking-addr principal)\n  )\n  (map-get? participant-weights-by-tracking-address {\n    cycle-id: cycle,\n    tracking-address: tracking-addr,\n  })\n)\n\n(define-public (set-is-distribution-enabled)\n  (begin\n    (asserts! (var-get is-contract-active) ERR_CONTRACT_NOT_ACTIVE)\n    (asserts! (not (var-get is-distribution-enabled))\n      ERR_SET_CAN_DISTRIBUTE_ALREADY_CALLED\n    )\n    (asserts! (var-get are-weights-computed) ERR_WEIGHTS_NOT_COMPUTED)\n    (let (\n        (pool-rewards (get-wallet-sbtc-balance current-contract))\n        (max-cap-rewards (/ (* (cycle-percentage-rate) (var-get total-weights-sum))\n          (+ (var-get yield-boost-multiplier) u1)\n        ))\n        (local-rewards-to-distribute (if (< (* DECIMAL_PRECISION_8 pool-rewards) max-cap-rewards)\n          (* DECIMAL_PRECISION_8 pool-rewards)\n          max-cap-rewards\n        ))\n      )\n      (var-set rewards-to-distribute local-rewards-to-distribute)\n      (var-set last-operation-done u5)\n      (ok (var-set is-distribution-enabled true))\n    )\n  )\n)\n\n(define-public (distribute-rewards (principals (list 900 principal)))\n  (begin\n    (asserts! (var-get is-distribution-enabled)\n      ERR_CANNOT_DISTRIBUTE_REWARDS\n    )\n    (if (is-eq\n        (+ (var-get current-cycle-total-sbtc-in-wallet)\n          (var-get current-cycle-total-sbtc-in-defis)\n        )\n        u0\n      )\n      (begin\n        (var-set participants-rewarded-count\n          (var-get current-cycle-participants-count)\n        )\n        (ok (list))\n      )\n      (ok (map distribute-reward-user principals))\n    )\n  )\n)\n\n(define-private (distribute-reward-user (user principal))\n  (let (\n      (cycle-id-current (var-get cycle-id))\n      (rollback-id-current (var-get current-cycle-rollback-id))\n      (holding-state (unwrap!\n        (map-get? participant-holdings-per-cycle {\n          participant-address: user,\n          cycle-id: cycle-id-current,\n          rollback-id: rollback-id-current,\n        })\n        ERR_NOT_ENROLLED\n      ))\n      (participant-state (unwrap-panic (at-block (var-get current-cycle-stacks-block-hash)\n        (map-get? participants { address: user })\n      )))\n      (participant-state-now (map-get? participants { address: user }))\n      (stacking-address (get stacking-address participant-state))\n      (stacking-state (unwrap!\n        (map-get? stx-stacked-by-stacking-address {\n          stacking-address: stacking-address,\n          cycle-id: cycle-id-current,\n          rollback-id: rollback-id-current,\n        })\n        ERR_NOT_ENROLLED\n      ))\n      (tracking-address (get tracking-address participant-state))\n      (tracking-state (unwrap!\n        (map-get? sbtc-holdings-by-tracking-address {\n          tracking-address: tracking-address,\n          cycle-id: cycle-id-current,\n          rollback-id: rollback-id-current,\n        })\n        ERR_NOT_ENROLLED\n      ))\n      (rewarded-address (if (is-some participant-state-now)\n        (unwrap-panic (get rewarded-address participant-state-now))\n        (get rewarded-address participant-state)\n      ))\n      (weight-data (unwrap!\n        (map-get? participant-weights-by-tracking-address {\n          cycle-id: cycle-id-current,\n          tracking-address: tracking-address,\n        })\n        ERR_WEIGHTS_NOT_COMPUTED\n      ))\n      (user-weight-wallet (get weight-wallet weight-data))\n      (user-weight-defi (get weight-defi weight-data))\n      (user-weight-total (get weight-total weight-data))\n      (total-weight (var-get total-weights-sum))\n      (stx-user-amount (get stx-amount stacking-state))\n      (sbtc-user-amount (get sbtc-wallet-amount tracking-state))\n      (user-theoretical-ratio (if (is-eq sbtc-user-amount u0)\n        u0\n        (/ (* stx-user-amount RATIO_SCALE_FACTOR) sbtc-user-amount)\n      ))\n      (golden-ratio (unwrap!\n        (get golden-ratio\n          (map-get? validated-golden-ratio-per-cycle { cycle-id: cycle-id-current })\n        )\n        ERR_RATIOS_NOT_CONCLUDED\n      ))\n      (user-ratio (if (> user-theoretical-ratio golden-ratio)\n        golden-ratio\n        user-theoretical-ratio\n      ))\n      (reward-amount-wallet (if (is-eq total-weight u0)\n        u0\n        (/ (* user-weight-wallet (var-get rewards-to-distribute))\n          (* total-weight DECIMAL_PRECISION_8)\n        )\n      ))\n      (reward-amount-defi (if (is-eq total-weight u0)\n        u0\n        (/ (* user-weight-defi (var-get rewards-to-distribute))\n          (* total-weight DECIMAL_PRECISION_8)\n        )\n      ))\n      (reward-amount-total (+ reward-amount-wallet reward-amount-defi))\n    )\n    (if (get has-been-rewarded holding-state)\n      ERR_ALREADY_REWARDED\n      (begin\n        (var-set participants-rewarded-count\n          (+ (var-get participants-rewarded-count) u1)\n        )\n        (map-set participant-holdings-per-cycle {\n          participant-address: user,\n          cycle-id: cycle-id-current,\n          rollback-id: rollback-id-current,\n        }\n          (merge holding-state {\n            has-been-rewarded: true,\n            reward-amount: reward-amount-total,\n          })\n        )\n        (if (not (get has-been-rewarded tracking-state))\n          (begin\n            (map-set rewards-by-rewarded-address {\n              rewarded-address: rewarded-address,\n              cycle-id: cycle-id-current,\n            } { reward-amount: reward-amount-total }\n            )\n            (map-set sbtc-holdings-by-tracking-address {\n              tracking-address: tracking-address,\n              cycle-id: cycle-id-current,\n              rollback-id: rollback-id-current,\n            }\n              (merge tracking-state { has-been-rewarded: true })\n            )\n            (print {\n              cycle-id: cycle-id-current,\n              enrolled-address: user,\n              reward-address: rewarded-address,\n              stacking-address: stacking-address,\n              tracking-address: tracking-address,\n              reward-amount-wallet: reward-amount-wallet,\n              reward-amount-defi: reward-amount-defi,\n              reward-amount-total: reward-amount-total,\n              weight-wallet: user-weight-wallet,\n              weight-defi: user-weight-defi,\n              weight-total: user-weight-total,\n              ratio: user-ratio,\n              function-name: \"distribute-rewards\",\n            })\n            (if (> reward-amount-total u0)\n              (try! (transfer-sbtc-from-contract reward-amount-total\n                rewarded-address\n              ))\n              false\n            )\n          )\n          (begin\n            (print {\n              cycle-id: cycle-id-current,\n              enrolled-address: user,\n              reward-address: rewarded-address,\n              stacking-address: stacking-address,\n              tracking-address: tracking-address,\n              reward-amount-wallet: u0,\n              reward-amount-defi: u0,\n              reward-amount-total: u0,\n              weight-wallet: u0,\n              weight-defi: u0,\n              weight-total: u0,\n              ratio: u0,\n              function-name: \"distribute-rewards\",\n            })\n            false\n          )\n        )\n        (ok true)\n      )\n    )\n  )\n)\n\n(define-public (finalize-reward-distribution)\n  (begin\n    (asserts! (var-get is-contract-active) ERR_CONTRACT_NOT_ACTIVE)\n    (asserts!\n      (is-eq (var-get current-cycle-participants-count)\n        (var-get participants-rewarded-count)\n      )\n      ERR_NOT_REWARDED_ALL\n    )\n    (asserts! (var-get is-distribution-enabled) ERR_CANNOT_FINALIZE)\n    (asserts!\n      (is-none (map-get? cycle-finalization-block-heights { cycle-id: (var-get cycle-id) }))\n      ERR_ALREADY_FINALIZED\n    )\n\n    (print {\n      bitcoin-block-height: burn-block-height,\n      cycle-id: (var-get cycle-id),\n      function-name: \"finalize-reward-distribution\",\n    })\n    (var-set last-operation-done u6)\n    (ok (map-set cycle-finalization-block-heights { cycle-id: (var-get cycle-id) } { stacks-block-height-at-finalization: stacks-block-height }))\n  )\n)\n\n(define-public (advance-to-next-cycle (stx-block-height uint))\n  (begin\n    (asserts! (var-get is-contract-active) ERR_CONTRACT_NOT_ACTIVE)\n    (asserts!\n      (>= burn-block-height (var-get next-cycle-bitcoin-block-height))\n      ERR_NOT_NEW_CYCLE_YET\n    )\n    (asserts!\n      (is-eq (var-get current-cycle-participants-count)\n        (var-get participants-rewarded-count)\n      )\n      ERR_NOT_REWARDED_ALL\n    )\n    (asserts!\n      (is-some (map-get? cycle-finalization-block-heights { cycle-id: (var-get cycle-id) }))\n      ERR_REWARDS_NOT_SENT_YET\n    )\n    (asserts!\n      (unwrap-panic (validate-bitcoin-block stx-block-height\n        (var-get next-cycle-bitcoin-block-height)\n      ))\n      ERR_STX_BLOCK_NOT_MATCHING\n    )\n\n    (var-set current-cycle-bitcoin-block-height\n      (+ (var-get current-cycle-bitcoin-block-height)\n        (+\n          (* (var-get blocks-per-snapshot)\n            (var-get snapshots-per-cycle)\n          )\n          (var-get buffer-blocks-per-cycle)\n        ))\n    )\n    (var-set cycle-id (+ (var-get cycle-id) u1))\n    (reset-state-for-cycle stx-block-height)\n    (ok true)\n  )\n)\n\n(define-read-only (get-current-cycle-id)\n  (var-get cycle-id)\n)\n\n(define-read-only (cycle-data)\n  {\n    cycle-id: (var-get cycle-id),\n    current-cycle-bitcoin-block-height: (var-get current-cycle-bitcoin-block-height),\n    next-cycle-bitcoin-block-height: (var-get next-cycle-bitcoin-block-height),\n    current-cycle-stacks-block-height: (var-get current-cycle-stacks-block-height),\n    current-cycle-stacks-block-hash: (var-get current-cycle-stacks-block-hash),\n    participants-count: (var-get current-cycle-participants-count),\n    snapshots-per-cycle: (var-get snapshots-per-cycle),\n    reward-mechanism: (var-get reward-calculation-mechanism),\n    blocks-per-snapshot: (var-get blocks-per-snapshot),\n    buffer-blocks-per-cycle: (var-get buffer-blocks-per-cycle),\n    buffer-period-start-block: (var-get buffer-period-start-block),\n    current-snapshot-index: (var-get current-snapshot-index),\n    defi-multiplier: DECIMAL_PRECISION_8,\n  }\n)\n\n(define-read-only (get-cycle-current-state)\n  {\n    cycle-id: (var-get cycle-id),\n    first-bitcoin-block: (var-get current-cycle-bitcoin-block-height),\n    last-bitcoin-block: (- (var-get next-cycle-bitcoin-block-height) u1),\n  }\n)\n\n(define-read-only (current-overview-data)\n  {\n    cycle-id: (var-get cycle-id),\n    snapshot-index: (var-get current-snapshot-index),\n    snapshots-per-cycle: (var-get snapshots-per-cycle),\n  }\n)\n\n(define-read-only (get-yield-cycle-data (cycle uint))\n  (map-get? yield-cycles-data { cycle-id: cycle })\n)\n\n(define-read-only (snapshot-data)\n  {\n    current-snapshot-bitcoin-block-height: (var-get current-snapshot-bitcoin-block-height),\n    current-snapshot-stacks-block-height: (var-get current-snapshot-stacks-block-height),\n    current-snapshot-count: (var-get current-snapshot-count),\n    current-snapshot-total-sbtc: (var-get current-snapshot-total-sbtc),\n    current-snapshot-total-sbtc-in-defis: (var-get current-snapshot-total-sbtc-in-defis),\n    current-snapshot-total-stx: (var-get current-snapshot-total-stx),\n    current-snapshot-index: (var-get current-snapshot-index),\n    blocks-per-snapshot: (var-get blocks-per-snapshot),\n  }\n)\n\n(define-read-only (get-snapshot-data\n    (checked-cycle-id uint)\n    (checked-rollback-id uint)\n    (checked-snapshot-id uint)\n  )\n  (map-get? snapshot-aggregate-data {\n    cycle-id: checked-cycle-id,\n    rollback-id: checked-rollback-id,\n    snapshot-index: checked-snapshot-id,\n  })\n)\n\n(define-read-only (get-stacks-block-height-for-cycle-snapshot\n    (checked-cycle-id uint)\n    (checked-rollback-id uint)\n    (checked-snapshot-id uint)\n  )\n  (get stacks-block-height\n    (get-snapshot-data checked-cycle-id checked-rollback-id\n      checked-snapshot-id\n    ))\n)\n\n(define-read-only (get-bitcoin-block-height-for-cycle-snapshot\n    (checked-cycle-id uint)\n    (checked-rollback-id uint)\n    (checked-snapshot-id uint)\n  )\n  (get bitcoin-block-height\n    (get-snapshot-data checked-cycle-id checked-rollback-id\n      checked-snapshot-id\n    ))\n)\n\n(define-read-only (get-reward-distribution-status)\n  {\n    participants-rewarded-count: (var-get participants-rewarded-count),\n    is-distribution-enabled: (var-get is-distribution-enabled),\n  }\n)\n\n(define-read-only (is-distribution-ready)\n  (var-get is-distribution-enabled)\n)\n\n(define-read-only (reward-amount-for-cycle-and-address\n    (wanted-cycle-id uint)\n    (wanted-rollback-id uint)\n    (address principal)\n  )\n  (get reward-amount\n    (map-get? participant-holdings-per-cycle {\n      cycle-id: wanted-cycle-id,\n      rollback-id: wanted-rollback-id,\n      participant-address: address,\n    })\n  )\n)\n\n(define-read-only (reward-amount-for-cycle-and-reward-address\n    (wanted-cycle-id uint)\n    (reward-address principal)\n  )\n  (get reward-amount\n    (map-get? rewards-by-rewarded-address {\n      cycle-id: wanted-cycle-id,\n      rewarded-address: reward-address,\n    })\n  )\n)\n\n(define-read-only (is-distribution-finalized-for-current-cycle)\n  (is-some (map-get? cycle-finalization-block-heights { cycle-id: (var-get cycle-id) }))\n)\n\n(define-read-only (get-distribution-finalized-at-height\n    (wanted-cycle-id uint)\n    (wanted-rollback-id uint)\n  )\n  (map-get? cycle-finalization-block-heights { cycle-id: wanted-cycle-id })\n)\n\n(define-read-only (get-buffer-end-block)\n  (+ (var-get buffer-period-start-block)\n    (var-get buffer-blocks-per-cycle)\n  )\n)\n\n(define-read-only (is-buffer-period-passed)\n  (>= burn-block-height (get-buffer-end-block))\n)\n\n(define-read-only (get-last-operation-state)\n  (var-get last-operation-done)\n)\n\n(define-read-only (get-admin)\n  (var-get admin)\n)\n\n(define-read-only (get-is-contract-active)\n  (var-get is-contract-active)\n)\n\n(define-read-only (get-current-bitcoin-block-height)\n  burn-block-height\n)\n\n(define-read-only (get-minimum-enrollment-amount)\n  (var-get min-sbtc-hold-required-for-enrollment)\n)\n\n(define-read-only (get-next-action-bitcoin-height)\n  (if (var-get is-contract-active)\n    (+ (var-get current-snapshot-bitcoin-block-height)\n      (var-get blocks-per-snapshot)\n    )\n    (var-get current-cycle-bitcoin-block-height)\n  )\n)\n\n(define-read-only (is-enrolled-in-next-cycle (address principal))\n  (is-some (map-get? participants { address: address }))\n)\n\n(define-read-only (is-enrolled-this-cycle (address principal))\n  (is-some (at-block (var-get current-cycle-stacks-block-hash)\n    (map-get? participants { address: address })\n  ))\n)\n\n(define-read-only (get-is-blacklisted (address principal))\n  (is-some (map-get? blacklist { address: address }))\n)\n\n(define-read-only (get-is-blacklisted-list (addresses (list 900 principal)))\n  (map is-blacklisted addresses)\n)\n\n(define-private (is-blacklisted (address principal))\n  (is-some (map-get? blacklist { address: address }))\n)\n\n(define-read-only (get-latest-reward-address (address principal))\n  (get rewarded-address (map-get? participants { address: address }))\n)\n\n(define-read-only (get-participant-cycle-info\n    (address principal)\n    (cycle uint)\n    (rollback uint)\n  )\n  (let (\n      (participant-info (at-block\n        (unwrap-panic (get-stacks-block-info? id-header-hash\n          (unwrap!\n            (get start-stx-block-height\n              (map-get? yield-cycles-data { cycle-id: cycle })\n            )\n            ERR_CYCLE_IN_FUTURE\n          )))\n        (map-get? participants { address: address })\n      ))\n      (tracking-address (unwrap! (get tracking-address participant-info) ERR_NOT_ENROLLED))\n      (stacking-address (unwrap! (get stacking-address participant-info) ERR_NOT_ENROLLED))\n    )\n    (ok {\n      participant-data: participant-info,\n      holding-data: (map-get? participant-holdings-per-cycle {\n        cycle-id: cycle,\n        rollback-id: rollback,\n        participant-address: address,\n      }),\n      tracking-data: (map-get? sbtc-holdings-by-tracking-address {\n        cycle-id: cycle,\n        rollback-id: rollback,\n        tracking-address: tracking-address,\n      }),\n      stacking-data: (map-get? stx-stacked-by-stacking-address {\n        cycle-id: cycle,\n        rollback-id: rollback,\n        stacking-address: stacking-address,\n      }),\n    })\n  )\n)\n\n(define-read-only (nr-cycles-year)\n  (/ (* DECIMAL_PRECISION_8 (var-get bitcoin-blocks-per-year))\n    (+ (* (var-get blocks-per-snapshot) (var-get snapshots-per-cycle))\n      (var-get buffer-blocks-per-cycle)\n    ))\n)\n\n(define-read-only (cycle-percentage-rate)\n  (/ (* DECIMAL_PRECISION_8 (var-get annual-percentage-rate))\n    (nr-cycles-year)\n  )\n)\n\n(define-read-only (get-amount-stx-stacked (address principal))\n  (get locked (stx-account address))\n)\n\n(define-read-only (get-amount-stx-stacked-at-block-height\n    (address principal)\n    (stx-block-height uint)\n  )\n  (at-block\n    (unwrap-panic (get-stacks-block-info? id-header-hash stx-block-height))\n    (get locked (stx-account address))\n  )\n)\n\n(define-read-only (get-amount-stacked-at-block-height\n    (address principal)\n    (stx-block-height uint)\n  )\n  (if (var-get is-liquid-stacking-enabled)\n    (+\n      (contract-call? .liquid-stacking-v2\n        get-user-liquid-stx-stacked-at-block-height address\n        stx-block-height\n      )\n      (get-amount-stx-stacked-at-block-height address stx-block-height)\n    )\n    (get-amount-stx-stacked-at-block-height address stx-block-height)\n  )\n)\n\n(define-read-only (get-amount-stacked-now (address principal))\n  (get-amount-stacked-at-block-height address\n    (- stacks-block-height u1)\n  )\n)\n\n(define-read-only (get-apr-data)\n  {\n    MULTIPLIER: (+ (var-get yield-boost-multiplier) u1),\n    MAX_APR: (var-get annual-percentage-rate),\n    MIN_APR: (/ (var-get annual-percentage-rate)\n      (+ (var-get yield-boost-multiplier) u1)\n    ),\n  }\n)\n\n(define-read-only (meets-enrollment-minimum (user {\n  address: principal,\n  arkadiko: bool,\n  based-dollar: bool,\n  bitflow: bool,\n  granite: bool,\n  velar: bool,\n  zest: bool,\n}))\n  (>=\n    (get-wallet-sbtc-balance (get address user))\n    (var-get min-sbtc-hold-required-for-enrollment)\n  )\n)\n\n(define-read-only (get-wallet-sbtc-balance (address principal))\n  (unwrap-panic (contract-call? 'SM3VDXK3WZZSA84XXFKAFAF15NNZX32CTSG82JFQ4.sbtc-token\n    get-balance-available address\n  ))\n)\n\n(define-read-only (get-defi-sbtc-balance (user {\n  address: principal,\n  arkadiko: bool,\n  based-dollar: bool,\n  bitflow: bool,\n  granite: bool,\n  velar: bool,\n  zest: bool,\n}))\n  (contract-call? .sbtc-holdings-defi-v2_3\n    get-user-individual-sBTC-in-DeFIs user\n  )\n)\n\n(define-read-only (get-defi-sbtc-balance-now (address principal))\n  (let (\n      (cycle-id-current (var-get cycle-id))\n      (current-snapshot-index-value (var-get current-snapshot-index))\n      (arkadiko (is-defi-protocol-healthy ARKADIKO cycle-id-current\n        current-snapshot-index-value\n      ))\n      (based-dollar (is-defi-protocol-healthy BASED_DOLLAR cycle-id-current\n        current-snapshot-index-value\n      ))\n      (bitflow (is-defi-protocol-healthy BITFLOW cycle-id-current\n        current-snapshot-index-value\n      ))\n      (granite (is-defi-protocol-healthy GRANITE cycle-id-current\n        current-snapshot-index-value\n      ))\n      (velar (is-defi-protocol-healthy VELAR cycle-id-current\n        current-snapshot-index-value\n      ))\n      (zest (is-defi-protocol-healthy ZEST cycle-id-current\n        current-snapshot-index-value\n      ))\n    )\n    (contract-call? .sbtc-holdings-defi-v2_3\n      get-user-individual-sBTC-in-DeFIs {\n      address: address,\n      arkadiko: arkadiko,\n      based-dollar: based-dollar,\n      bitflow: bitflow,\n      granite: granite,\n      velar: velar,\n      zest: zest,\n    })\n  )\n)\n\n(define-public (validate-bitcoin-block\n    (stx-block-height-proposed uint)\n    (btc-block-related uint)\n  )\n  (contract-call? .bitcoin-block-buffer-v2\n    validate-stx-block-brackets-btc-block stx-block-height-proposed\n    btc-block-related\n  )\n)\n\n(define-private (transfer-sbtc-from-contract\n    (amount uint)\n    (recipient principal)\n  )\n  (as-contract?\n    ((with-ft 'SM3VDXK3WZZSA84XXFKAFAF15NNZX32CTSG82JFQ4.sbtc-token\n      \"sbtc-token\" amount\n    ))\n    (unwrap-panic (contract-call?\n      'SM3VDXK3WZZSA84XXFKAFAF15NNZX32CTSG82JFQ4.sbtc-token transfer\n      amount tx-sender recipient none\n    ))\n  )\n)\n","publish_height":6221015,"proof":"0x0000001f04ba0000001ce70ca5ede0be912b086dca57c5f71defdedd94f3d809a618836964baa9a187ced8c0bf2098bd1a38308c3fdc7b18cdcf87a9ff97369b1ad104be49480000000000000000006f020000000000000004816d935877de59f584660f792637bdf12d2307e91e3d63976eeb3cbac5f644df5d82819f935877de59f584660f792637bdf12d2307e91e3d63976eeb3cbac5f644df5d82816b25a28d2a4b8f34dfe9ad35eb6d083acc4f18ad4f485d9f4ac6594d674ed10a33016f0000000000000000000000000000000000000000000000000000000000000000935877de59f584660f792637bdf12d2307e91e3d63976eeb3cbac5f644df5d82935877de59f584660f792637bdf12d2307e91e3d63976eeb3cbac5f644df5d8225a28d2a4b8f34dfe9ad35eb6d083acc4f18ad4f485d9f4ac6594d674ed10a33030505000000000000010082007cbf17dded474924060f90c532172c77b75105d7eca871e39ab1ad8ff46f2d708101ae43aea35a4ed1b7630d072ef8bdefb03545639474ed61a49a7d06207015234283025dee59a6ee21122aba4bd860ef9d2095933283cfc79b303e226fc05e4e5a1ae78103353f0785cd9f6be3b41e22ccb8d91182001543f3cd67a88478cfd5d1a41a6b538204bddd70b323294a658a4fe120960f0a390040190e445f2324f1902d0e3f8897b3020500000000000000000000000000000000000000000000000000000000000000008206de2133e34296c7a3af9ad3da40ab3e1916eb328242706a3f0bba9a4b186beae98107f5b32027af8409e3345573e4d14ed32aa72d19ccf61b385ca90cc648e9fac10a81080b0c00daa83b1000982a3c90a2f28f47b25f8e815b593d6fb2358d012b00d0468209506a9658b7dd68ca82228ddd0ebd31225425837884e87ad5d54787b45450aa4e820a14497fc51865215d8f410025cd9363b8d3cda6242c977f6809127ae58bbb9115820b00fdf0d1bb3eac3d4edcc60dbe0fa89cc7eece01dcc19331b0b1adb2cf0e848c830c21fff1939ec86a59ac68c9492b61f85f684be61c33c5d338e3d00b905a859116820d73961c32a92817cb58a8a4054e973a3e35c8207c424a2c572060fb52998ef88e820e7f59f8b2365070f94499bedb1804d49afd091233641f133aa87f4bdaeb644d34820f1d3f180e811f14790b28c45199c872817b3c3633efc5382bbf8b004c79457e368210275000afa255771cbac39c4553a87320c049ef52349aae8cc4a9fa3b618388e88311a3f0e74ca99efa8c0e19da94f699eee1cf1ba27201d973631fde944ff8514ee482123937f5b4b68fbc6c3e6077a943909dfd15dc3afac6b17f5831ffe5d13ccb44838213b2d912fdb328b427dcb47b0db39423ab36a3e5dfd749d64cb50cdd7ea99a829a811467ba5f89c32d10e0193747de6228accdb6c7f2acfff65e4f5256c8139f3d3a6f8215a888cb33df904850718436af9cfd3aaf60e5d7ab121375fb6ea9456ef7313aaf821655dc24a99cb2477a6a5ae70350d073f6efc48d92533d40db5d5859c340acf8cc8217e8174330b7851b636081397c89c9b299b1cd53e24b3f3dd1b84b08fb4dfe58ed8218d63c7a659bed5a58acc29f491f7d9a5b8b1e7169e6f38b4100e9d17eb852a37383191c7809a180f42edced9875723b78ce1dac64e9df00b2a721ac92c7ed29910e81811ac0cfad385d6f0d7d5230565ebf80aa7dbef72df806a678fae8c723bc0e582317821b1326ca4ade974b376473babc70ab201b11e49b5c3f715063932af7ca3211b45400000000000000000000000000000000000000000000000000000000000000000000821ded2be839d095c204c3727c113e66483043447e0186a12c2d3d5c3318889c9281821e121197fb108e9128555d825ad3a03c586e3834caab5e1ecc11cee1b49c599116811f4569ed7d8390092f0a1dfa8e344ad1c1f585bc19165c963f027324cfc57a08a782208967ce67836408ca6f2b68d65bae659319b0d3514ce3aa53cb9786d3c2899991822183bca637daac4279922dbe87a539778fb0c95da473a04b75f08f4e8ff61947838122bdee2f8d5671a94d05e4d0bbb4d56a60b673aed9a5a500f452b5b079892b1a828123c27f2fc8420fc099be0396b14f51089f4858c0045d6f72788c57451ad4f0b39c00000000000000000000000000000000000000000000000000000000000000000000822554a4cf501533c4ee62e4a94e55ae9328932b367132c3c7ab9d16ba765c0be3bd82263a66cc1ef1e75eddd92c8aac0643691a933437cd2931d7a3e2e2ecd97d7a66a5812754433d27eaf12efbc4c927cedf891ad0872841c92bdff7779d5880cf05b661f6812800bca5e848bf6b4398143f48d47de13538071f2b67dfdf05b3fcd7db439a22fa82295d836f03592dde1070915d3e5f469dff5daa9159f33c05ad56289a4ec4a44e94822ac214f3f93ef7341a1b68a4fe7c11a8fbefdb577a577d81b1f1584827e54db499822ba6dcfa388727eafd978bcd548897ae975084f6da3696db45ec5f5e398e927078812c2026d16684bc15b6f58800f110b28ccc9a8899775555c25a3f481f665fbf1ae0822d4f6a67cc193a541829c543377bbef68d5b2ee26150e1fc47106440bfefb7370700000000000000000000000000000000000000000000000000000000000000000000812f6aa197ba5dc3d4adf5a3017069afbbce6c609df407c4e44c4aee2f2c93d0700f833093110f13c2b0ce217cef70e6cd678c58a8acc0e8894c1bab710f70bfbe00813182317f0205f46f0ab80f7d48854960664e94171d5b265ee5f8914afdbc6963c9b3d982327a55937ddef0dc62d6700fbd61407fe388090253981c445ee765c4b45c1995af813333b1e83a321e3ff5bffcc4e37c3fac6aa8786fedcc2a4de7bee75b2f114f6ca782341f715637933112895d148052726b55e3d2caf5d46ee3b8df78228f2402023d1c8235b8346f5814e19780d17385ecb30078282a7ee82c8c33b4d3c71caa102d8aab92823661d351048142565fdabc798f47d185d2f91b816903517e9bc97935d98315807081370f9676045d477fffb9055d77c4ca7ea65128c9812abdf459169371040ec83df48238c8e9c27793f5aae95110015265ca87cef96d5775bf3fa202db9e330be8f5f6418239fcf403f3e3104e57ffb090919f5a6123bf17513198ea7b64440a6d2557757b85823a2eb3f26a6bf88f265a6610cf5060bc59ec076e2b61a81431e7a171a30e85edfb813b9dec67e051ef9ad686bb322065b3b189d4db0de2e8a1e40bc35b72d24dc3fae9823cb9356e674acb73817c5e7909c0a26c11f289c0a1a9fe0c3ae9b1a1285bb7beb9813d35bc82e8b1a6efb671d6748f840c0bee2e450570ff5d46e7189529c8393a0889823ef09ed911ae36b2b896dc558f398ed0604a37b4d20733ff61a5172aa416a49eab813f7031661c07e4d6865db84cb10efbef70404d95d18b5f96de8c640a418941f56b82405cb8461bbaa9c362eb2a1184516f0f884683d51a544f5482b4cf50b93ad4ffd48241faca8892facda5718e6b6ac15c8ac8e29523a48f20af87ef643ada3b3c175bc582421f2a0d96f7027c6122675b1760e9b1aecfa5932581de038a86075df47ecb6239000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081451acbdf3d4285e3e0d57a5c69c64ce6fc5c4d6a7bef9a8e247c04a1b036eb5e908246898d07ff0aabf102c0a5a5f56083bfab9d9c6ad3d0975e3efd523a40ee91f20d8247f0f68297249d91b7053543920ce7f7313ee90c3326ebb9a32e400116b0382b1581489be6279e448744ffec1b45d9f18c790974ec84bdb8eb529ee47b01d822d75faf83497e74167cc08d17a1eb7d517dc8bec62329eedac9bbf39399c3ae67580317ac08814a5028a04f544c94583abb6899a008b13e7a660379a2c2b7ca51817c7e258a46ce824b299d1f7b8049885d0818119b75c31e214f9e209147cb876575cedd397a2ad65f00000000000000000000000000000000000000000000000000000000000000000000824d46f275c2a629c24ac2e8aa3ffa1c7b44e50b4d7f3f6826339c3e472424ed0310814ea8e7634ee92b77833debb3a8ef6818d6bf324aa40025ba510ae3d9542b83b480824f4b70d1f4e9538a41eea9d3a23aae7e778d49b7cd2d3e09ab8fe5c02a3667a31d825056917ad3cd05dee32667682a3fad959dca779852b875c644003f94f9f60e009482516b02a9509725a725595e4488e9c4f794a70a4686db537d91a3b92a900f596222000000000000000000000000000000000000000000000000000000000000000000008253dc52296a4c51a9d0e33cf3a75c5ffc6bf227bc6d389444d0ae471d9bae2787b000000000000000000000000000000000000000000000000000000000000000000000825526a2e951283893cf7e3a0e0e924fc573abed2cebb5d53dd93c7788ee57ce05338256c2985118459405cdb75c02a8f8136b545c8b2eb5db395ee0b355950f2d83159281573700cbcead025f2230b2b21e67c4d1c9d3e9bb99d414632555b2a201880550148258b2307921c750151565738141d0fb75170561350ff372c2bdbb48b82add6ab838825959b9eb6f90737841eb819b8ca368f42717d53a7b3d6bf311e9411db168c36208825a13e02ad8420a371cbc09e17a323853f2e7d7a205693ed736d9d4a389b802ff12825b4279fe61f15b2b583051f6b2d7d36da2b1d1d3345b7bd89956c14b34125b1b7d825c7ca3d1f97bd7274dc9f7e9ac3f101584961ae0a9b363fe04f8a1b4ac06e544db825d02cbc09564ca13a56eaf67a77b8a5b6fc08f0c99e3b05207221fdb000631b2bf825eb813c06953be360759798dda03c965f3fe7d9681bcac564122ea746f3b6b471b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008261628cd32725222e356423cea34f3875f28ed7eb20414380eac417155fad9f2ce78262c1d11e7e31fd47445cae79d3b6dc15bfd1e0b746f28a89432fb511cfcff2f1d181635af21627ccc17e032f918140f83edd24de287eac1ef095b70cc82b9ae4e0a23382645bca52fbf70a16540d764446a29a0e9a1610a3722af47950eff4babdd9793e2f8165f2f2864179426bc439e0a7820e8e886ffdb62b1e047f4dfe85efec86db25977b81662073934559860b49c8562ca940162bc2201385f8e86bb2d70a70cd2db020f0f18267045c231d19f98c0976822434763111145f3a02bc6f9217e069bc0c848c2b5109826840fc233be77036e4dee43d830be82357dfc878c3a362840448149f6818e4fda2826925844a3e7a20cb9298b919d96b2742b2fbde984ba72469785c5cc96146bcb490826a8758f9655164d0a075cd4efb8677079f3377e1f9c415d9556af1c9e75c72fd5300000000000000000000000000000000000000000000000000000000000000000000816cc3ad042ac9892fae31c11db40283ae8865b75276aa5d984937eb6a5093a0bca2836daf196bc2c6c894191fa3e70236485be493fb4d495ffc9d41ff3a42ea5709c63a826e51370bbd347eb2f4f1166278a4037810a10e5a0f7a9bea2e5b48ff8b5cad92b7000000000000000000000000000000000000000000000000000000000000000000008270d8d5824fb97e26e38e2796e7b4831db49ea0b6cf9573a9290d7a3181f9ab9cda8271e19931dd22a08d366c4343d53f66671154e546e38c0e0404098b9d6c4c1dfd4a8272d87cf40a9b27d3865f0a4329d814a2591e2aeb9165119df4ec877bbe5459ba2a8273409c26e624a8d1195e81f270d413b1d373b517812e27d5049398e8018146d1998274d95828957a306c8c88143867ee153952668fbb2f47c873936cd456794f0dbb278275d76bb3bb9000d3d90548368f903e33cd850f94508ce7a5db1ae1a7b4a139ba44000000000000000000000000000000000000000000000000000000000000000000008177741b8b3be89de71bb8e71b38a411ad18201885c3a561ecaf430d74d4af5a1de88278c451ebe1f35d46ed69bfbd44ea3d08dab895d1a3697c50b1fa422b59f62ae24982792a700ac4996b57998f5c1f3b0a38518a054882e0bec107606a1f99b60323c6a200000000000000000000000000000000000000000000000000000000000000000000827b54c3894cf4bf6aad2c0171d094584359ac1b5f23f280cf9373917f9d7bb8d440837cb75dab7a049fd96171c430754fb3b52d59ae8ed74a0997be314604dfc7344e67817d28387b793485de93184fe84b69f95bb298f7f5a72ecf2076bfd3f90052b88863827ed45791c724339cd3fe5b16433d84b8a7ae9dfcd1abb7dae920e9e87803d7fa2e827f543e9b8d9ba449c1237a651386538ba882368efedbed3a55a0fa427249cec10e818027ced4f5c6fdcaf5c398d08b5ab1c73be50d4aa5a12e31805601b58b90daa9908381c9b5494607488027b7c72f851058fc590500c02644183c01670cfad26d4a5b3f0000000000000000000000000000000000000000000000000000000000000000000082837eae98114eeababb4a0311f8ecfddcc558f97747da316623b4ad90c107508f198284fbf53ad0cdd40f279a26b4b2a5594a09bad1e6971e0b0f19ee10166eabf0660881859c9244a9269af10bb3613e3cb26e66a6f271ed2941ebd374dede6c148dc342658286fcc4e23f56f239a8140f93a8a6191879a8d8b74fb7f092021bcb96b91201f0a781872b6682fcb5544217c3326efc67affb32e4dbdc63f9e866f1ad585e431c680f7a8288e19233caa259028ecf536b78dd3c395fdd956d9ed8aa74336e21706725428aa88289471f84045262bcfc0c2e36243cf0311b1d60a1f90bb56d971f11062800fff814828af4a32a958a2834d630c254b2454d80a83d3790a403d178b14aea425894bad02e828bbe1ab9e390a5492628e0580a4b496346bf287de7a09295c8407b20e988338bd8828ca3f1b9d35de6584a989421635dfad4084c69bb6e77418f09ae7adaabdbb04046828db4a2c9f19a79c1731626d9eedffbd12db359509148fb3e971a8e9906356c8ef9828e08309b1fdb86dfdea7bb24413c44096e9472a899c010b2af0e79ae9ad78b2a96828f585aa20245455469d8c75ad1603f6deb42c46fd2c49557c0c307ad0517eb25b18290c97765c00ff92c102df01a6d4bbdc01bd41c7841a844a5f1bb4938f71366466282911b3a42dd4cf6cf57ff4bd7f7c0516c6d2e2ddadc9ef228557438068c77916a9400000000000000000000000000000000000000000000000000000000000000000000819382631f8423f33b42e5b1ba038da8cb59b5fa5b1e651cf8b4d7341a985869194881947fb9a0db23c9928de4230dca5557a73a8cbfcd46fc3bb6d8a3bfaf2f54d780898195b7da1ebc738e46a91ee17c010a87ec3d930d244fc0f43e6406e0e9172daa88cd82961ac793339a02311e52a575618226a4a63d84b2db754d8a4e7c714f063f9207e88297f6fb11e49d7e4fe7039b95d7ac438c08a33cd5405db4db0a2860ea6c67da64bc829803342381f90eb335fcc4d599db9e572cd40e7aea16f86224cbc6408aa990c0d68199c674983f6952d885a50bfd3def6b6d432fa2f3de7f209d13486a84279aa982c2819af6fb11e49d7e4fe7039b95d7ac438c08a33cd5405db4db0a2860ea6c67da64bc819b8ccab8b6af82a008d5522bae0f5f7260072187b139b1482f278ecb4a61f1962100000000000000000000000000000000000000000000000000000000000000000000829d0f30e7051956b92cace43e2649b81c53427572a29f013e947d75c197b0fbd23e819ec5784312e17647e67c687f12b18c24168c738ab5c91ba080b19c61e48465120b829f59be5a8c58706985c245539a5b74eaaeed68e751736816c7940601a6450a040a81a0bf0a99a5492c8f9ffeb076e73278c2db91f1e9bc00558117a907bbcc38d7093d82a15eb74c8ecc1f3d64177f5f602e05f6a76e14dd9b28a0266e7bfa7c8bc5bb705e82a281829d87d334959608302b21c615fa0c85e896d6461f72b6275f78af7be924580000000000000000000000000000000000000000000000000000000000000000000082a4a1040f39d26988d65633bcb974f11ad8c30d601e445507a2a99040832982e712000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000082a766b7442ef7ce2ff4d2719a63bb6952a75084ce0e5c2fb0f0a45cba5d88d6abb783a8060bc49e4325c4484ff65b78dd25a59708a882b2f46161bf59eb68da709ab0e382a92b82fb1a9fd77c22e8ee84b518d7ac11acb931bb7f822cc6932180eb7eaa314482aa0927ffca45b45f33969c5b2b82bfed0b0c3178d0300d61b82a2fe97c6be6f27b82aba45e8be0a804ac64a5a39885974f347e10e1bf0e6fe9504b470ab7ce2ca1a05683ac7eca89e6c78e742e57b57c5e89075f4a1a1926841337e2d3f049a63e38a0b28b83ad49b76bf085cbf8ea5c75851df24fe410ccce0bd1decfc7afce56a1b0a12d7d7082aef7fc19675796cf797c5af56e7771a45403e9dab32396b46f520245b7b2d9ff5f81af9782a1fa11c4569a346f0a3cfe15e1ef65459b39178c7601e0248a8eaeceab3082b0e3923ef2951b302ebea48b2d69fc92c6f6cbc8a647af9d2594146b7b990c389a82b15c1e6aadd76ec88d588b7a42a97ebbe5738d761efe978af91a1cd99df37667c982b250fb99c444d8a5dc39a8f5e43de5ebc932f08d133904a8ede61424e1908a78ee82b34e61cea2cfb37c1632a7aa272e0b765fee19d6e9856eedf78051a5c38656572f82b4a3c8b33f66ba174df687a88f8c78c8778334f406748bcb6fb39f5bb3cad2c09a81b52f6a6c563b44c6cd880b15819c34ae08453b7c3af1f87c31fe1a74e3780888460000000000000000000000000000000000000000000000000000000000000000000081b7e9614f484acad3d93cad80b1d5e6fe4ba0ff675a156e993796ae317b559fd42882b85e6caba8852890065e2391e92349aede7a67d94793f6d801a04d46356f24019882b9baad86ce2ddc429a446b34550a1a6a70a0dfd8d107864db6a8263b158aa45de482ba61e663e7a39b0070d6914999a8ac96d5b7358eb3b9c136f24ad6d177b44628df81bbd8cc7f9613e6e7c54b1cce83e39b4d555ac048fc69c777215a3f4fc8271c400882bcdc552de92922b09bd252a4d484d7ae0a1a7936bd79044bc89a08f9fee0323ca982bdc11e9e19a569b1dd747a388045ba70f42ec22c3e0d6f440dd6294021cca0986382be94b0233fcbcedee9d9ce875d03fdecf7594d3123f7e8a79fb755b0893360c3f90000000000000000000000000000000000000000000000000000000000000000000083c0aff0e455f7cf49df5135b4e7db6a6d61508bc220bae55653633375b48fecf2a082c10148593f393be064165e37b2af42462f0ed5fcffa1080715ba3386f6c00d433d81c291af16abec54f5d217c214ffda0c1c3c97e220f4c246903152bf69d564bb9a2e83c3d597a4ba8117ffb4c61f2d14c18849c8a41e32349250d9ab0c9003c592eb675483c454077614f916c4f248a5253002b23ff2405815020a16fc1a98db4423d29f6adb81c57293423b5536da48127bcb6d076469896719e776c87491820e4ea522b1f8cb6582c6291b04f21b393574725b2789d6ed686d4dcb314ae20011c0a9f1f66d6162290a82c737749fd158680cd296ea5199e48eac87886d66e9a5f2ab789b622cea23741fa482c8254d075ba390708db5028f1c1084c14e33642fdea62192c54cb1c9aa2eb374f982c9039fb46b48c06205417bc9e43008e6475f952879752f9f4efe96aba5eb1470ec82ca12d9d22265a127f66c532e669b13fa7c86cd70109106e6ff16dff804d5b1670f82cb185e8d976102adada841adc8ee0778a69681d7cf0f64728f0d4e2cf6d99064a70000000000000000000000000000000000000000000000000000000000000000000082cdb2256af1799a013f9db5ad7248aed4b39a286eb0302e50259f70be9f90959b9d82ce4363eeedc9b45d93b1a236dec0d0c1929b6febaff1adfb048e37c421d014b3da82cf014e5483516df18051372afb97ff1940280292c909de899744e5ac064d6626c283d0e91c97f4f380eb4bd46b3cb99546193e97c3076fbe5e25a2efa12918701a991982d13f0e39f4f16fcd220ec002adf04946ca8e690c0e59b3075acae1ede2146728e881d2b18c7418db18bd52018686d75c100a80df8d61ae457da97d64eafd9dedca2f6e82d3b3af606b697b27bdbf3d87425142f9e0a254cab6adcac2bde6275355481d28be82d4f307073b6a07fd9722afc4e40d8882930d84726ae4ef0230aa457e930387f8ec82d5951aa36899239e82533ff2591f0fc153311232ee3e40e6afc0e6d600f36731c382d646a7cfc198883eed815bc9a350f4a61eaef618bcaecae035d078203041e92a220000000000000000000000000000000000000000000000000000000000000000000082d8fd55bffdb9066e9865d15c89c547b7cd42f9c6018cfcfac7d9a3a3cc8b3cd1b481d9f7a4db6d4bd1133180b1435372703cf78824a607581bebe2c168d189ce75080a82dac058cba7384f176b11619a98c7a500a48e984ff5a06f4adc2e061296a876896982db33350e1c1c6acb77c3b981434b5f427b145ddb9eba9f9bd795c505a2b36b53d083dc98f8add30ba5397ab0c50c6b9f945e599749a0655127080e174b5e5dad358f6d82dd7e8fc9479418215f69e06048c1a0e843ae47ecbe3df8a8826ef770a7bc5b54d483de7f8135a8b75aa0ba44e71537b6e1b510197b1c9b1786604667fb935bc5f475ad81df951532690d137afbf2111938d86d4be3f23d9c9de73c28dd5642cbd99558c38581e095c0ca716d805e77bb8e3bfe07d81d8eae6bfac23d7e6f0917ab6cf43b917e0282e1ee2e17cd40f17ea8f2ff149c840bf7c968880a6f3c98b5f5473763114a26c52581e2e65ff55e3339a7a1b6fb284233418aa6396fdb83d1eaad703fd753d099a3318e82e3dade21b8927cf8626f47cbfce85fc006f857bb94f6a744e3ae73ea3d2396827182e4ad303bb9ae47b29b715bda7f18a38f7ee67f376296d315fe4b6ff31618fb656581e5be1acca2eca5964a89e47c991346afb5e5241b1adfea689dc2a2697b5a39743e82e66dfc2bf81c4387669b33708c0001f1a68d6c1f21b62ee5dad31d74f7a324a4d481e7d47f2b0a73f1425b10ea81afac049e7f6839963ecb7b0d82fcebb639494198600000000000000000000000000000000000000000000000000000000000000000000082e90706d6540f96d87ac286521d38509e91c77791f446af4ae88875ee097e72c81081eab6f9a18802418f9d37eaa5cd550f72ce43c393ba41d3fccaaf0fe37f1577eceb81eb2716d49b3189e538b044e288aa372132af902a06e87258fe12cf55ea93f22e4782ec8b098e16e563dcb213d899e2793c3882c2861e6a2deda038f19f4f59b113c12381ed80ed94dad5bd87eedd6938858d9d0f7c0672f3fbb8db0cc3e75ec2519845bde582eed7ac5ac6c17f6e7b87dc1ec723d498b6dc3b0d67c04a56779216a6c2a72cd9d782ef2ff908b8315fc20a1b8a0782d41cdf5cad380a6456dfa17c33b0282beffef0b882f0922c1d6d641a14c4e54318a3bbee54696a9653cec11589153df621607cfdd10d82f1f4c4ae314d61cf1c6027bc95249c3ce89e446105a5ca83f82be036604b0cd55082f2bfae2a98cd08cfe2b68567caf2b7052f126f09e6e94ffad6c8b7e7a9c587b12d83f3587dca53e73e6b4c4a73a77dea8ec0d5b218e84569ce2d862606375eb756205581f4a02b680550c0db1cf92793431b408de15a78bdd96a2f699899c4c21921e150e583f55adbb8240f70c95b587aee49c0d279240f4bc9613cb8bbfc5064ffce3b86af6e82f6d553b51fd4c77ce924c3b621d998b54e6e5f231d3d9d0a9c41ab54d3fd57e00c82f7b86334673aad0e35b946fd1c5347fbc963cbe6622d6a9340bf488939e5e5e53b82f8876b40316a42247f706dc34c939dfe721dc24e45e15782d36af3448656a31b5a82f9bf23e94aacdc5d3d0a071b463533da7671df7f02a5aa907381ee01353a20056382fa24bc4664ea3ac3fecfd67f6e848c36bd90c3c2b7130ab137cb73033bbb2f6f6d82fb57d511642231e4241109827233fe157c0ee20f88745bf3c6dd600ac8ed00b0330000000000000000000000000000000000000000000000000000000000000000000082fdb1898b7587aa36f3d30a1becd081a67f037310061d2c5f8e8eb18cccede6f43c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007cbf17dded474924060f90c532172c77b75105d7eca871e39ab1ad8ff46f2d70ae43aea35a4ed1b7630d072ef8bdefb03545639474ed61a49a7d0620701523425dee59a6ee21122aba4bd860ef9d2095933283cfc79b303e226fc05e4e5a1ae7353f0785cd9f6be3b41e22ccb8d91182001543f3cd67a88478cfd5d1a41a6b53bddd70b323294a658a4fe120960f0a390040190e445f2324f1902d0e3f8897b3de2133e34296c7a3af9ad3da40ab3e1916eb328242706a3f0bba9a4b186beae9f5b32027af8409e3345573e4d14ed32aa72d19ccf61b385ca90cc648e9fac10a0b0c00daa83b1000982a3c90a2f28f47b25f8e815b593d6fb2358d012b00d046506a9658b7dd68ca82228ddd0ebd31225425837884e87ad5d54787b45450aa4e14497fc51865215d8f410025cd9363b8d3cda6242c977f6809127ae58bbb911500fdf0d1bb3eac3d4edcc60dbe0fa89cc7eece01dcc19331b0b1adb2cf0e848c21fff1939ec86a59ac68c9492b61f85f684be61c33c5d338e3d00b905a85911673961c32a92817cb58a8a4054e973a3e35c8207c424a2c572060fb52998ef88e7f59f8b2365070f94499bedb1804d49afd091233641f133aa87f4bdaeb644d341d3f180e811f14790b28c45199c872817b3c3633efc5382bbf8b004c79457e36275000afa255771cbac39c4553a87320c049ef52349aae8cc4a9fa3b618388e8a3f0e74ca99efa8c0e19da94f699eee1cf1ba27201d973631fde944ff8514ee43937f5b4b68fbc6c3e6077a943909dfd15dc3afac6b17f5831ffe5d13ccb4483b2d912fdb328b427dcb47b0db39423ab36a3e5dfd749d64cb50cdd7ea99a829a67ba5f89c32d10e0193747de6228accdb6c7f2acfff65e4f5256c8139f3d3a6fa888cb33df904850718436af9cfd3aaf60e5d7ab121375fb6ea9456ef7313aaf55dc24a99cb2477a6a5ae70350d073f6efc48d92533d40db5d5859c340acf8cce8174330b7851b636081397c89c9b299b1cd53e24b3f3dd1b84b08fb4dfe58edd63c7a659bed5a58acc29f491f7d9a5b8b1e7169e6f38b4100e9d17eb852a3731c7809a180f42edced9875723b78ce1dac64e9df00b2a721ac92c7ed29910e81c0cfad385d6f0d7d5230565ebf80aa7dbef72df806a678fae8c723bc0e5823171326ca4ade974b376473babc70ab201b11e49b5c3f715063932af7ca3211b454c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967aed2be839d095c204c3727c113e66483043447e0186a12c2d3d5c3318889c9281121197fb108e9128555d825ad3a03c586e3834caab5e1ecc11cee1b49c5991164569ed7d8390092f0a1dfa8e344ad1c1f585bc19165c963f027324cfc57a08a78967ce67836408ca6f2b68d65bae659319b0d3514ce3aa53cb9786d3c289999183bca637daac4279922dbe87a539778fb0c95da473a04b75f08f4e8ff6194783bdee2f8d5671a94d05e4d0bbb4d56a60b673aed9a5a500f452b5b079892b1a82c27f2fc8420fc099be0396b14f51089f4858c0045d6f72788c57451ad4f0b39cc672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a54a4cf501533c4ee62e4a94e55ae9328932b367132c3c7ab9d16ba765c0be3bd3a66cc1ef1e75eddd92c8aac0643691a933437cd2931d7a3e2e2ecd97d7a66a554433d27eaf12efbc4c927cedf891ad0872841c92bdff7779d5880cf05b661f600bca5e848bf6b4398143f48d47de13538071f2b67dfdf05b3fcd7db439a22fa5d836f03592dde1070915d3e5f469dff5daa9159f33c05ad56289a4ec4a44e94c214f3f93ef7341a1b68a4fe7c11a8fbefdb577a577d81b1f1584827e54db499a6dcfa388727eafd978bcd548897ae975084f6da3696db45ec5f5e398e9270782026d16684bc15b6f58800f110b28ccc9a8899775555c25a3f481f665fbf1ae04f6a67cc193a541829c543377bbef68d5b2ee26150e1fc47106440bfefb73707c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a6aa197ba5dc3d4adf5a3017069afbbce6c609df407c4e44c4aee2f2c93d0700f93110f13c2b0ce217cef70e6cd678c58a8acc0e8894c1bab710f70bfbe0081317f0205f46f0ab80f7d48854960664e94171d5b265ee5f8914afdbc6963c9b3d97a55937ddef0dc62d6700fbd61407fe388090253981c445ee765c4b45c1995af33b1e83a321e3ff5bffcc4e37c3fac6aa8786fedcc2a4de7bee75b2f114f6ca71f715637933112895d148052726b55e3d2caf5d46ee3b8df78228f2402023d1cb8346f5814e19780d17385ecb30078282a7ee82c8c33b4d3c71caa102d8aab9261d351048142565fdabc798f47d185d2f91b816903517e9bc97935d9831580700f9676045d477fffb9055d77c4ca7ea65128c9812abdf459169371040ec83df4c8e9c27793f5aae95110015265ca87cef96d5775bf3fa202db9e330be8f5f641fcf403f3e3104e57ffb090919f5a6123bf17513198ea7b64440a6d2557757b852eb3f26a6bf88f265a6610cf5060bc59ec076e2b61a81431e7a171a30e85edfb9dec67e051ef9ad686bb322065b3b189d4db0de2e8a1e40bc35b72d24dc3fae9b9356e674acb73817c5e7909c0a26c11f289c0a1a9fe0c3ae9b1a1285bb7beb935bc82e8b1a6efb671d6748f840c0bee2e450570ff5d46e7189529c8393a0889f09ed911ae36b2b896dc558f398ed0604a37b4d20733ff61a5172aa416a49eab7031661c07e4d6865db84cb10efbef70404d95d18b5f96de8c640a418941f56b5cb8461bbaa9c362eb2a1184516f0f884683d51a544f5482b4cf50b93ad4ffd4faca8892facda5718e6b6ac15c8ac8e29523a48f20af87ef643ada3b3c175bc51f2a0d96f7027c6122675b1760e9b1aecfa5932581de038a86075df47ecb6239c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ac672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a1acbdf3d4285e3e0d57a5c69c64ce6fc5c4d6a7bef9a8e247c04a1b036eb5e90898d07ff0aabf102c0a5a5f56083bfab9d9c6ad3d0975e3efd523a40ee91f20df0f68297249d91b7053543920ce7f7313ee90c3326ebb9a32e400116b0382b159be6279e448744ffec1b45d9f18c790974ec84bdb8eb529ee47b01d822d75faf7e74167cc08d17a1eb7d517dc8bec62329eedac9bbf39399c3ae67580317ac085028a04f544c94583abb6899a008b13e7a660379a2c2b7ca51817c7e258a46ce299d1f7b8049885d0818119b75c31e214f9e209147cb876575cedd397a2ad65fc672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a46f275c2a629c24ac2e8aa3ffa1c7b44e50b4d7f3f6826339c3e472424ed0310a8e7634ee92b77833debb3a8ef6818d6bf324aa40025ba510ae3d9542b83b4804b70d1f4e9538a41eea9d3a23aae7e778d49b7cd2d3e09ab8fe5c02a3667a31d56917ad3cd05dee32667682a3fad959dca779852b875c644003f94f9f60e00946b02a9509725a725595e4488e9c4f794a70a4686db537d91a3b92a900f596222c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967adc52296a4c51a9d0e33cf3a75c5ffc6bf227bc6d389444d0ae471d9bae2787b0c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a26a2e951283893cf7e3a0e0e924fc573abed2cebb5d53dd93c7788ee57ce0533c2985118459405cdb75c02a8f8136b545c8b2eb5db395ee0b355950f2d8315923700cbcead025f2230b2b21e67c4d1c9d3e9bb99d414632555b2a20188055014b2307921c750151565738141d0fb75170561350ff372c2bdbb48b82add6ab83859b9eb6f90737841eb819b8ca368f42717d53a7b3d6bf311e9411db168c3620813e02ad8420a371cbc09e17a323853f2e7d7a205693ed736d9d4a389b802ff124279fe61f15b2b583051f6b2d7d36da2b1d1d3345b7bd89956c14b34125b1b7d7ca3d1f97bd7274dc9f7e9ac3f101584961ae0a9b363fe04f8a1b4ac06e544db02cbc09564ca13a56eaf67a77b8a5b6fc08f0c99e3b05207221fdb000631b2bfb813c06953be360759798dda03c965f3fe7d9681bcac564122ea746f3b6b471bc672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ac672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a628cd32725222e356423cea34f3875f28ed7eb20414380eac417155fad9f2ce7c1d11e7e31fd47445cae79d3b6dc15bfd1e0b746f28a89432fb511cfcff2f1d15af21627ccc17e032f918140f83edd24de287eac1ef095b70cc82b9ae4e0a2335bca52fbf70a16540d764446a29a0e9a1610a3722af47950eff4babdd9793e2ff2f2864179426bc439e0a7820e8e886ffdb62b1e047f4dfe85efec86db25977b2073934559860b49c8562ca940162bc2201385f8e86bb2d70a70cd2db020f0f1045c231d19f98c0976822434763111145f3a02bc6f9217e069bc0c848c2b510940fc233be77036e4dee43d830be82357dfc878c3a362840448149f6818e4fda225844a3e7a20cb9298b919d96b2742b2fbde984ba72469785c5cc96146bcb4908758f9655164d0a075cd4efb8677079f3377e1f9c415d9556af1c9e75c72fd53c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ac3ad042ac9892fae31c11db40283ae8865b75276aa5d984937eb6a5093a0bca2af196bc2c6c894191fa3e70236485be493fb4d495ffc9d41ff3a42ea5709c63a51370bbd347eb2f4f1166278a4037810a10e5a0f7a9bea2e5b48ff8b5cad92b7c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ad8d5824fb97e26e38e2796e7b4831db49ea0b6cf9573a9290d7a3181f9ab9cdae19931dd22a08d366c4343d53f66671154e546e38c0e0404098b9d6c4c1dfd4ad87cf40a9b27d3865f0a4329d814a2591e2aeb9165119df4ec877bbe5459ba2a409c26e624a8d1195e81f270d413b1d373b517812e27d5049398e8018146d199d95828957a306c8c88143867ee153952668fbb2f47c873936cd456794f0dbb27d76bb3bb9000d3d90548368f903e33cd850f94508ce7a5db1ae1a7b4a139ba44c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a741b8b3be89de71bb8e71b38a411ad18201885c3a561ecaf430d74d4af5a1de8c451ebe1f35d46ed69bfbd44ea3d08dab895d1a3697c50b1fa422b59f62ae2492a700ac4996b57998f5c1f3b0a38518a054882e0bec107606a1f99b60323c6a2c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a54c3894cf4bf6aad2c0171d094584359ac1b5f23f280cf9373917f9d7bb8d440b75dab7a049fd96171c430754fb3b52d59ae8ed74a0997be314604dfc7344e6728387b793485de93184fe84b69f95bb298f7f5a72ecf2076bfd3f90052b88863d45791c724339cd3fe5b16433d84b8a7ae9dfcd1abb7dae920e9e87803d7fa2e543e9b8d9ba449c1237a651386538ba882368efedbed3a55a0fa427249cec10e27ced4f5c6fdcaf5c398d08b5ab1c73be50d4aa5a12e31805601b58b90daa990c9b5494607488027b7c72f851058fc590500c02644183c01670cfad26d4a5b3fc672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a7eae98114eeababb4a0311f8ecfddcc558f97747da316623b4ad90c107508f19fbf53ad0cdd40f279a26b4b2a5594a09bad1e6971e0b0f19ee10166eabf066089c9244a9269af10bb3613e3cb26e66a6f271ed2941ebd374dede6c148dc34265fcc4e23f56f239a8140f93a8a6191879a8d8b74fb7f092021bcb96b91201f0a72b6682fcb5544217c3326efc67affb32e4dbdc63f9e866f1ad585e431c680f7ae19233caa259028ecf536b78dd3c395fdd956d9ed8aa74336e21706725428aa8471f84045262bcfc0c2e36243cf0311b1d60a1f90bb56d971f11062800fff814f4a32a958a2834d630c254b2454d80a83d3790a403d178b14aea425894bad02ebe1ab9e390a5492628e0580a4b496346bf287de7a09295c8407b20e988338bd8a3f1b9d35de6584a989421635dfad4084c69bb6e77418f09ae7adaabdbb04046b4a2c9f19a79c1731626d9eedffbd12db359509148fb3e971a8e9906356c8ef908309b1fdb86dfdea7bb24413c44096e9472a899c010b2af0e79ae9ad78b2a96585aa20245455469d8c75ad1603f6deb42c46fd2c49557c0c307ad0517eb25b1c97765c00ff92c102df01a6d4bbdc01bd41c7841a844a5f1bb4938f7136646621b3a42dd4cf6cf57ff4bd7f7c0516c6d2e2ddadc9ef228557438068c77916a94c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a82631f8423f33b42e5b1ba038da8cb59b5fa5b1e651cf8b4d7341a98586919487fb9a0db23c9928de4230dca5557a73a8cbfcd46fc3bb6d8a3bfaf2f54d78089b7da1ebc738e46a91ee17c010a87ec3d930d244fc0f43e6406e0e9172daa88cd1ac793339a02311e52a575618226a4a63d84b2db754d8a4e7c714f063f9207e8f6fb11e49d7e4fe7039b95d7ac438c08a33cd5405db4db0a2860ea6c67da64bc03342381f90eb335fcc4d599db9e572cd40e7aea16f86224cbc6408aa990c0d6c674983f6952d885a50bfd3def6b6d432fa2f3de7f209d13486a84279aa982c2f6fb11e49d7e4fe7039b95d7ac438c08a33cd5405db4db0a2860ea6c67da64bc8ccab8b6af82a008d5522bae0f5f7260072187b139b1482f278ecb4a61f19621c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a0f30e7051956b92cace43e2649b81c53427572a29f013e947d75c197b0fbd23ec5784312e17647e67c687f12b18c24168c738ab5c91ba080b19c61e48465120b59be5a8c58706985c245539a5b74eaaeed68e751736816c7940601a6450a040abf0a99a5492c8f9ffeb076e73278c2db91f1e9bc00558117a907bbcc38d7093d5eb74c8ecc1f3d64177f5f602e05f6a76e14dd9b28a0266e7bfa7c8bc5bb705e81829d87d334959608302b21c615fa0c85e896d6461f72b6275f78af7be92458c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967aa1040f39d26988d65633bcb974f11ad8c30d601e445507a2a99040832982e712c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ac672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a66b7442ef7ce2ff4d2719a63bb6952a75084ce0e5c2fb0f0a45cba5d88d6abb7060bc49e4325c4484ff65b78dd25a59708a882b2f46161bf59eb68da709ab0e32b82fb1a9fd77c22e8ee84b518d7ac11acb931bb7f822cc6932180eb7eaa31440927ffca45b45f33969c5b2b82bfed0b0c3178d0300d61b82a2fe97c6be6f27ba45e8be0a804ac64a5a39885974f347e10e1bf0e6fe9504b470ab7ce2ca1a0567eca89e6c78e742e57b57c5e89075f4a1a1926841337e2d3f049a63e38a0b28b49b76bf085cbf8ea5c75851df24fe410ccce0bd1decfc7afce56a1b0a12d7d70f7fc19675796cf797c5af56e7771a45403e9dab32396b46f520245b7b2d9ff5f9782a1fa11c4569a346f0a3cfe15e1ef65459b39178c7601e0248a8eaeceab30e3923ef2951b302ebea48b2d69fc92c6f6cbc8a647af9d2594146b7b990c389a5c1e6aadd76ec88d588b7a42a97ebbe5738d761efe978af91a1cd99df37667c950fb99c444d8a5dc39a8f5e43de5ebc932f08d133904a8ede61424e1908a78ee4e61cea2cfb37c1632a7aa272e0b765fee19d6e9856eedf78051a5c38656572fa3c8b33f66ba174df687a88f8c78c8778334f406748bcb6fb39f5bb3cad2c09a2f6a6c563b44c6cd880b15819c34ae08453b7c3af1f87c31fe1a74e378088846c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ae9614f484acad3d93cad80b1d5e6fe4ba0ff675a156e993796ae317b559fd4285e6caba8852890065e2391e92349aede7a67d94793f6d801a04d46356f240198baad86ce2ddc429a446b34550a1a6a70a0dfd8d107864db6a8263b158aa45de461e663e7a39b0070d6914999a8ac96d5b7358eb3b9c136f24ad6d177b44628dfd8cc7f9613e6e7c54b1cce83e39b4d555ac048fc69c777215a3f4fc8271c4008dc552de92922b09bd252a4d484d7ae0a1a7936bd79044bc89a08f9fee0323ca9c11e9e19a569b1dd747a388045ba70f42ec22c3e0d6f440dd6294021cca0986394b0233fcbcedee9d9ce875d03fdecf7594d3123f7e8a79fb755b0893360c3f9c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967aaff0e455f7cf49df5135b4e7db6a6d61508bc220bae55653633375b48fecf2a00148593f393be064165e37b2af42462f0ed5fcffa1080715ba3386f6c00d433d91af16abec54f5d217c214ffda0c1c3c97e220f4c246903152bf69d564bb9a2ed597a4ba8117ffb4c61f2d14c18849c8a41e32349250d9ab0c9003c592eb675454077614f916c4f248a5253002b23ff2405815020a16fc1a98db4423d29f6adb7293423b5536da48127bcb6d076469896719e776c87491820e4ea522b1f8cb65291b04f21b393574725b2789d6ed686d4dcb314ae20011c0a9f1f66d6162290a37749fd158680cd296ea5199e48eac87886d66e9a5f2ab789b622cea23741fa4254d075ba390708db5028f1c1084c14e33642fdea62192c54cb1c9aa2eb374f9039fb46b48c06205417bc9e43008e6475f952879752f9f4efe96aba5eb1470ec12d9d22265a127f66c532e669b13fa7c86cd70109106e6ff16dff804d5b1670f185e8d976102adada841adc8ee0778a69681d7cf0f64728f0d4e2cf6d99064a7c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ab2256af1799a013f9db5ad7248aed4b39a286eb0302e50259f70be9f90959b9d4363eeedc9b45d93b1a236dec0d0c1929b6febaff1adfb048e37c421d014b3da014e5483516df18051372afb97ff1940280292c909de899744e5ac064d6626c2e91c97f4f380eb4bd46b3cb99546193e97c3076fbe5e25a2efa12918701a99193f0e39f4f16fcd220ec002adf04946ca8e690c0e59b3075acae1ede2146728e8b18c7418db18bd52018686d75c100a80df8d61ae457da97d64eafd9dedca2f6eb3af606b697b27bdbf3d87425142f9e0a254cab6adcac2bde6275355481d28bef307073b6a07fd9722afc4e40d8882930d84726ae4ef0230aa457e930387f8ec951aa36899239e82533ff2591f0fc153311232ee3e40e6afc0e6d600f36731c346a7cfc198883eed815bc9a350f4a61eaef618bcaecae035d078203041e92a22c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967afd55bffdb9066e9865d15c89c547b7cd42f9c6018cfcfac7d9a3a3cc8b3cd1b4f7a4db6d4bd1133180b1435372703cf78824a607581bebe2c168d189ce75080ac058cba7384f176b11619a98c7a500a48e984ff5a06f4adc2e061296a876896933350e1c1c6acb77c3b981434b5f427b145ddb9eba9f9bd795c505a2b36b53d098f8add30ba5397ab0c50c6b9f945e599749a0655127080e174b5e5dad358f6d7e8fc9479418215f69e06048c1a0e843ae47ecbe3df8a8826ef770a7bc5b54d47f8135a8b75aa0ba44e71537b6e1b510197b1c9b1786604667fb935bc5f475ad951532690d137afbf2111938d86d4be3f23d9c9de73c28dd5642cbd99558c38595c0ca716d805e77bb8e3bfe07d81d8eae6bfac23d7e6f0917ab6cf43b917e02ee2e17cd40f17ea8f2ff149c840bf7c968880a6f3c98b5f5473763114a26c525e65ff55e3339a7a1b6fb284233418aa6396fdb83d1eaad703fd753d099a3318edade21b8927cf8626f47cbfce85fc006f857bb94f6a744e3ae73ea3d23968271ad303bb9ae47b29b715bda7f18a38f7ee67f376296d315fe4b6ff31618fb6565be1acca2eca5964a89e47c991346afb5e5241b1adfea689dc2a2697b5a39743e6dfc2bf81c4387669b33708c0001f1a68d6c1f21b62ee5dad31d74f7a324a4d4d47f2b0a73f1425b10ea81afac049e7f6839963ecb7b0d82fcebb63949419860c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a0706d6540f96d87ac286521d38509e91c77791f446af4ae88875ee097e72c810b6f9a18802418f9d37eaa5cd550f72ce43c393ba41d3fccaaf0fe37f1577eceb2716d49b3189e538b044e288aa372132af902a06e87258fe12cf55ea93f22e478b098e16e563dcb213d899e2793c3882c2861e6a2deda038f19f4f59b113c12380ed94dad5bd87eedd6938858d9d0f7c0672f3fbb8db0cc3e75ec2519845bde5d7ac5ac6c17f6e7b87dc1ec723d498b6dc3b0d67c04a56779216a6c2a72cd9d72ff908b8315fc20a1b8a0782d41cdf5cad380a6456dfa17c33b0282beffef0b8922c1d6d641a14c4e54318a3bbee54696a9653cec11589153df621607cfdd10df4c4ae314d61cf1c6027bc95249c3ce89e446105a5ca83f82be036604b0cd550bfae2a98cd08cfe2b68567caf2b7052f126f09e6e94ffad6c8b7e7a9c587b12d587dca53e73e6b4c4a73a77dea8ec0d5b218e84569ce2d862606375eb7562055a02b680550c0db1cf92793431b408de15a78bdd96a2f699899c4c21921e150e55adbb8240f70c95b587aee49c0d279240f4bc9613cb8bbfc5064ffce3b86af6ed553b51fd4c77ce924c3b621d998b54e6e5f231d3d9d0a9c41ab54d3fd57e00cb86334673aad0e35b946fd1c5347fbc963cbe6622d6a9340bf488939e5e5e53b876b40316a42247f706dc34c939dfe721dc24e45e15782d36af3448656a31b5abf23e94aacdc5d3d0a071b463533da7671df7f02a5aa907381ee01353a20056324bc4664ea3ac3fecfd67f6e848c36bd90c3c2b7130ab137cb73033bbb2f6f6d57d511642231e4241109827233fe157c0ee20f88745bf3c6dd600ac8ed00b033c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ab1898b7587aa36f3d30a1becd081a67f037310061d2c5f8e8eb18cccede6f43cc672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ac672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a03db05000000000000010085001739c97c94885717d4ff7f4b5612813336b6f91d87daac9f923155d2c04a09688501fbec3f611dc70937ae7270cb3fb98ba590e369ef2262ee79c23b1ed5c3667c968502b01610b855d0f1c9a85b26f6d4d728294afddf8abbc977caf29999837460661c850337df044e9c5b32d5d467244f24013fcbde66198e92f469fd70fb29a4b3ce59ba8504ba1890909a230cf60afd63b163b5c2056726b4c9a0f8a8a336ada2ed6b3564c48505890904e6150ed2bcad477dac790037093ac8cd0b29e260c83efc664d4b8e38e58506b1035ee78dde645a93e8c847801514227d7ddac439ac74e6c569b09dcc1de319850744b6e9c7885212dc06b845283f1ba4e7d91d39a796d0d8f7f2f7fd474ad5a71c850803eb3be86ff66e67a7300c41d30be831da1f5957cac0192bb0324769ede7006a85097183610880da930ec83cee39f105f148fe9a6f0002566ccfadf7b86b4985f5c5850a8c128df2c12d6e4a71b5283ecfde5318d596f90845138ce512edce2f213e23b0850b2c10f787ceeb99527e4915a1719ff50d21bf6caf91bef7547e93fbf635a8f8fa850c3606d5e757cc7c5e80a9e1000aec2ffccbbf1ca3936c36d1553c8481c07cf3de850d9fa0c53ff3a7fecd1f922f00ec1607e262c849fd0f886c2d89c2f882051a59e8850eb1d85f538f57eb34c0170d66e1b6a9b0e97272be26439cdadad52ca17c9f89c0850f66bc525ca635bda0f8926d95998be7123c9786f891d36b64b8938f4fe3bb2ecd85109b943f2292f20f185cbc0eeb99a745fe21fe8fe67662be50f67e56d8496f6ca485114a82a3cb87838a07fc6760c0f2ea858a72fb8cf7bd0e919876855efa9a244ec4851237df044e9c5b32d5d467244f24013fcbde66198e92f469fd70fb29a4b3ce59ba85131455c2cc0751894635e4a0c86b68f063862d6b8cd35ba051a0937d07d4d2840285140be6779ec98804e3482f86fc2ed59ac3dec554b1c4e2af3b982e0326dd8757e08515de4836d71e51e403a5d82b0a32c367d838becad3bd53f2b058f0a3548c407b82851680edd01e6898af135b652afde2b08d97e9c753ba0ee78a021a0f7db34343e7da85173b91f1423049bda551e6cbd047767af6da588e8d9cd4e229b621de7a8df73b4485180f144a2e0b5533bae91053c5ea23d04aaa62223ac61e73446a7536b187aba89285195bc05a48904250fb34035c4162dce704a58b8c95a4587a118fa8d3a1b926e5c1851ac6a592b370a2ed98b3410b464c962e062722c4dabaf9a679954901980c1acf87851b1bd491ac70455e0a82bab957348a9f629f8e166e5813dd215764dda61cd89d26851cf4fd3fff5cfd4208a4cf40d864bcd51d87a8c1148c35eeb7973e0bfd5939077c851dd7c49866141a930b1c70ba5df995b748d4b630fd9c22e0eab475d6a275cd857c851e24306ff0df795edd63c8cb632b9bc86da1894ae494a3761c3e0717d0a6eaa4e1851f8d91b407007b9bc6c06a50eaee9cbcb137ada525ec7eec45268039b29a4cf488852052a67b234a9f98a821a6418df2294a23883d7eb073171005b2e806a32ebb8bbe85210799091662126cab086308f0333463ac65ed744829d25a4bc2cab72597ec389085229e2e850c19ec762eae9350917fbb513a55610d1983065bb3b6865e8b80b22a488523cc88d044d5e84ab408ce866de5774666908ccdc7479b7ed4b68d6b3e0df5afd08524f83379c24c0d39d83cd35028d350c258583e5e20c950cc972d13110ac10ff3ed8525a25fe03ee7596f1ad1434feb952944d969660921a6bd0143713daac6279ac6e88526a35148912f5652bff433cb6cb075254645878c8ccbc705c66f246f1a9f822e0b85276132f8ed84116a1c55379a784886273b67cdfee604e9c244279380ac3090268e85286b5a472f22cad62baedb812655276b348b4fc0c8a69bed97700c9eec97d1bbfb852992c5fe3a6f54a7a3ab4a663e995a30e135140b5edc61981b516d4e23d320748c852adc211c6279d42db2ff2366b4325dfbde970338f67bb60bd883f3abde7c0ee0be852b504c7517eb9a604aebedc2373152eab3d956d7b980cfae6b13bed40f2addb57c852cbd2a63c02c7f73c56b8a1265c5c688af77cd950f8373ab74a7ca16edd0ea0ae6852d446cf4cf33d93b306c441acac29849358fdaad9bb4ce8307d4851d8036f0bf6c852e0b60d1c2ed9c867b7ca085d9eb7dbd0f94f4fc6d1d4b25be9620adea6b75b970852fd83c22acc9c88a3c88847e658d57c91c2ca625bbb2a76d33430c97ab506e42d585302c10f787ceeb99527e4915a1719ff50d21bf6caf91bef7547e93fbf635a8f8fa8531916667a9c38c8e112db56c10e24ef7fff2d7c4d1becd84963a214d1b2ae6e5208532182440bf9d7d6e2886f779ff2e1732d3a0d98c09a2ee15d3da9c7f457d9065ac8533a72aa29e2f0ded1c76b91728cc923de5f78aa07e8e932732286521e2e09634a085347954e5f48cabb89021f6d84b3ed3652da99191e3eabe04702e9d6d78d30d6c0e8535f453a537a2a16e4593471bef8f1e5a0f3b5e7f8eb7d12d44342cadd0695d7e1385363b4f46fc18533d26bbbc0fab9c06b5f12a882b90b3be0850ba4d7a7110c401f785378128cfa181b363b68c242e09582f5481172ecefe88182576ce8b2e8e1bf42e23853831ff4cb5abee7ed24c1b8f9e41898180d92d268a73e8b57163eecd0cb04ca87b8539e81c7e8287867b9e2cf99f02e9afeadf07cf35fef8457ccc17f20ee688167d97853a889e4fee836cc8ee8fc30cbc25c676c3a06df87f3e54b0fe3e764aa78c76cc13853bf4c0ed75772039365abc057b0105267107df214a648cfce3b0a3aeb4eb17f4b0853c265f859d305b2465be360b84b1f8d433f90b9cecd27bf60c104ae9ac25877e80853d49399d7bf6ac9d78499e64a1fdc4458a2b92d8dee5b73ce009f579487496ce90853eee4e3f7079aedbe01e65d5b1bf2cdee6c19eed29294d5d05529205054bdd6a84853faa3c2e9ec1762fc69c0b4a71ed66b92ab394f7a946f51e71a6a42f43b4ec8e9f8540462df0feddc1bb001ad67b661c1b5d9981f65d55c8c97650d4cb3c7946bdf6cf854130db1624a739006c99b3e5e3e29cfc2571b4eb1e729ab4e9284d333a440092698542ef6ca694626c0638d3130bb2ffcedeff423601e955c4f1257684ba3b11311d9d8543d5a7a7972970ba55973614483c96cc37884ef7bb6b02c24fa0aace95665faf37854465c2e2452a724401758bc1bb6182837f192922d82e8beefee757fb8e51c1fbea85452c10f787ceeb99527e4915a1719ff50d21bf6caf91bef7547e93fbf635a8f8fa85461883b891da6dd03ca122cd15519ee862047b01aacf785de33c9394348d23baac854713ba66d9f3948103d1db9fd36f643e86db3c78fe734b7c9b563ac5fe9e4bcaff8548462df0feddc1bb001ad67b661c1b5d9981f65d55c8c97650d4cb3c7946bdf6cf85490b8237389d43e9ef147c332dd9cc8e7cedeabe4848f272ce3bb987619a5d8177854a5c902fa490890b2c8185249b311a11ae3bdbdd51ccd86a3cc647cd7aaaacb9f0854b1250d4c6cb1b5410e41d32f60a92d0f5ff7096c3d0ff72527bd82cf4c84f485e854cfcefce7473e4cc80a49ec7393ccb0f7f9dea237d2137d13aa7a054f4e02c7ab2854dd9af4e1158073fb75159c1fefb378b947b01ac4b81708f5e620ac798d3961385854e003acb8e89dcad7886e83e3ea669b4ff59cfa7b80034b1ee103e59a1bed0495a854fa967bcc0ec3dd89c9468374953d79bb066a5af173e59e7af5fd18a7074fd4fd58550f12c58783caa9b755cbd2734bb060d4bab2f8d1ff37696262140a9a7fe7ba39485519b54aa922043556710f13cd995db8fd38817ee14a3ce5d17730c98d1fff8ec9285525b833a3a9723e11371f45fdb86fabd87fe823bfe5e7512747c30b9bf4fe6a39285539447a08a195c546b63f78401dad09f7019517150c81b76152dc22a619524e51a85548296934a2c29c0ed27b2f8ae19ca8c94329404cfeb5def008f5358735c3b760685555395dbb2b4f787bb5eab08dbd03e830e279095dd849da3e726a5494f262989cd855654ed099e54592d663d3b97b473ed02e4b7513565b2902f999fb7bb68dac78f1c8557ca2aa6a95bf780005b6458013c7d1dbb3a118ac7d19480280fb28d3433b2f66c85582fa2527e6109acd362a39fa19d3fa5fac4fa2589fb6e5fe3d9c9fbcbce8312848559bcca925a04a9393ed59af463e57a7ae9b2e3b6c0102a2da2b179446d5dccbdfe855aef1194a2da2c2ef652cc9f505ecb34804e88a14fc57c757db6fd3b8fe1452526855ba9c250c631e85e73459cc23c7a248735d33ddfdec68ced1025cc2cec9c88b321855c403f768487d574a6adb39931e3c884a39ca373c91dd970a1c34b8c036d5c5de3855d8c569a7ebe96cc406e78c718af3737ff43acca993e6aa245897e900444a3472c855e37df044e9c5b32d5d467244f24013fcbde66198e92f469fd70fb29a4b3ce59ba855f6ba03d2a2f1d8ebf6bc9bb778083790b3640a3b6b0e0962533304741491e219f8560fca782d27cd594b6df66758073f65c4f6f67c20286ffb4f62b8665d613a3d66285611250d4c6cb1b5410e41d32f60a92d0f5ff7096c3d0ff72527bd82cf4c84f485e856265a15b88e7a3980a165139fc3bf414219a6937fe00f563097400d1823f43b16785635a1508dd323a2c2060fbb5b42686afd1aa303dbc422eccafe8a9bfe21d808ba5856499dae34f0866feaf564d6fbe70a5f14882c7607e2d05e162138c5d6c72e26a0a8565d40b61c7c922f44116add929f64fdf2723bd231e79a0a62341eb684fea05577f8566196b46f1d0ebe1d6b8c108ae80a71aa9296335611c73ce4a7b2502d758de06cf8567c119a748efc0f6d959c668584dcf8bbcb2576b1d54fd8c132765f64c05a9ce9e85686771eb25de460fcf38cb2ef2db0edd1a3920565a0dc6eebad8a12922e3660b81856976ba5535078d3a04281f4a151c760ecba75aabff02fbcabf3e549caa5352782d856abf5a1b140f6023e5d2b1fd9dd4295d56d9c2cb508ac90540f8eb80f4d0709868856b310c7c1f820ca46614d3e209f08f8cf7c242d8bdc7c0abd60df496615f8c1715856c4ddff066d0afc2fa9f97744b78dfae8361ea14a747d8790106c3711deff21552856d71f911d131729a624ec1ecd2ec50d7a5d490bbd1655399d5623642702e6ee1a5856e0430fe40488b924698e5a979652e2edca064aa375c46cca4a39e9d9843e8c399856f265f859d305b2465be360b84b1f8d433f90b9cecd27bf60c104ae9ac25877e8085702f8d33a44f69ad4ef0cb9d281e08de61756112fba5327dbe8902e65801d20e81857135257e7b8adead9eb9eafbf15874ed671e6d80a47aaf31b07bebd7698440b7ec857273f35f8a1e7896edb368fe19d1b3a3cb388cfa3b9415ecaa0d6313cd22da8a128573605efdce8146407a5c89bef6ce22d0892a9c9307010bd94cce56d75e88945a1d857448f397ff1c64a597d547660745e78bf9d4f90b10a08b6f10c75492e0dec604fd85755d155dc2bd31003beb7fcf825324f5d0606ce4be549d18bffaf7c9cf897f5d268576988dc1f223614f0b95e88ecd669831076fb252f8f9965bd4fad5050208f818458577027e626623f16de3ac4f7f1b59222b5bed948492271bc6207265342bdd7c8b368578be68787a0a1a0b22122ba64174a5a331825dbc4028a7b20169d6d0f95ba133c48579dda9dd20133ba3a9b968f035d2d455121ac8c97696bdee6f1650d4831ea1c5da857a1dfaa6a91a2c55b13607b955764f5615ae4a4a629e1f0e901d1447fab2e88b71857b597eb87128a88a4a9b5e4a1a720849978a4c1223ff7df0f7c09cb1a195c26b2b857c65fd7e5f6047f5c166935f8bab6b10f511fe807db80f4be0b8fb8be6e73f3a12857dbec3e9aa7c7a9fefcdaad5a03eabe962b384a8f4295e2620177b8a4ae78f0883857ebda632b591188e1bf1c29f6f2389484d53607001f2be5e2b900be527bec0b1cd857fe4b4ecd8d2e6b98239b7afacc90d09180658071eebeb58f5392656582a15df448580fbb0e645a7ad8ee56f42ee92ac64df7ef6a8ec449323e9c99666ad3abf97d11a8581a4101b95738d6760e540f9c205e13c73f0bfcae48bd05690e467557c1097473985820cb4144d2894e019032881a6e1f0c165cb1afa810f81b88b897f3d88fb2704538583493e89882bb94f36abd2f42865aa52492942c81e7285851b02ed6afd8d0a9fbb8584604ac04aa86a3e8b2875990e860bc6ce0e90bcff08feb655659ed5f31979b18e85858fac5356a32b9497b757a469af85cec1a2732378e822b1475fd544b28af0a6818586ae0a9f8a610d688f8a573db0db25a60c1b1b658c7735401ce74938f0a8d9120f8587b7e3531acbca2525adac0991d4705f95d37ac627587c4d74284ed476a0c6d80e85880177573adc1e798dbea0f9e07e0b12913fab5cbb11deac9236b7925f5015fee58589b71804b88a2e0fa8a71258b6d397eff6fc9ede2b332a590957c987c3bb9a5471858ae34c44f68cbeb920c0dab164a1391a42ca9be2398d9c05fb92e3edfa57d4d2b0858be7a9726eb0c85b1b458141e36a83825ad3e90a1e977633cd99956ee6778c025a858c037981157b602db0d783026df88d412c33c06c5680d1e06007e6d1da255fdcd5858d8e64caa88c4dcc137d2dcf81b80eba15a517496de028082cee9b4f8da51a0877858eb12bbd7b8443faa86a09edb2b7cb9e18299b3248e2083b038f943616d81c0960858fe072975956657fa231b003962d553fbaf8ff26171d19a3506245f436c17d715e8590462df0feddc1bb001ad67b661c1b5d9981f65d55c8c97650d4cb3c7946bdf6cf8591acd917f0234a65e9d35793d8242a3a2c8bd8b80f2e10be2f57463ee2a92469cc859268b2190b2c79b1d00c34b6568175b3ddc736048091aafb8a12f68f4f79910ee38593ef18c0c1c3d44e67cac52fc93a7092389d76e81072140e17ea01047ce807ff0485943c8d5b6d22464cd4986e9a89e8de639ddf7351d051b8158b899791dc22465f0e8595073e994faee5945f7849104a3999a2e9753512005c25ec6cb6037165ef7623988596b85dec39a23a3dad4b8afed71d008742109d6838c0f4c88e37ab7072ea096c2f85974823606872937aed13e0c159e50bb04fe25a57d4b1241941ef00ae137668d295859831122a190fe308aa3cd0c883d05d8281bb2cbafa235ba599e988ff38538fbb4d85993ce06ea5187301c2eaf2d6404d458dfb5d4e29e5f6c69041f4232b46c47883c3859adcf4cb147a5baab9ab484ab9cd621c9849bc0a6fa9d2501d2710f10aa3efe24a859b85960f821b86f4974213c0b186a8bdc30873981889778562c053399328dbaefa859c536bea17e5b93291b9dc01b211bd614e20b873d9ba473185f118c49682173539859d5d3bfa0d85c77928dab237507992a7b2bab3c80951a92887c946dc49fb684e2d859e913052aba419c187b96529c556d0e0ceedab7e76d86f43b64508d620b7b79487859f3cf938e27e2ba6de6911a2c26723a82c241138185e12ba5db164841d4c0c82d285a07b63439f6687c4c7e505c74a8ed3ac177fc17398b0105c89e942f7c0521d2b5c85a1668114814b5a016b2cead242748d6afd32c85a483126735079df45d7e80a0a1585a2464efb7958e7d74eb69e7ccefcdcc1b7256a0e17fbf28f3cb2c0bdad621c819785a324e062c8c9683e3605c17db7242d0d74c1b702508ca79c1e0cdaa6f7ab46995485a4cebb2420a3e289c925f9655e052731c0a16535b8fd7a7f868ad70291a62e3e0f85a583b4bdd7c7830346fef717cfb0749110e5f952094234329b8e14ca9bd460f9d385a666d39111ee860683933218bf01f8117a48333db00750d573df0ceb113fe4a4d985a7c3806bdf32a79e15eb6de0f4368b9da3ca2be0e293ec0d77e42d3bb127fe99fd85a88c7a4c1169f7b73777143701c30290c0d9deede9316e75a9f36b57a8f39fa30585a9e74c4ec6d89dd48f01c2d545cd11ec6597ed550162c72f7a673ab63e447aeba385aa5eb11c5e32ff3ff6cf1de69f5039cbc5cb25a76bb0116784445491c85a536a2185abf93a377e3b3ecb9fe407c43bd905dac9c9ae61d5997cf2fd14f30556bc6d403885ace81c7e8287867b9e2cf99f02e9afeadf07cf35fef8457ccc17f20ee688167d9785ad298ad77f2eb3f5037fe5464c0f4e8234a2541d4e5cdb684c4515747834f6887f85aed06c70d13e40059257016fc77e58f3c0dbf2507c8c3c064195a4d67cc684d4f185afac38f594071edc3af7a20642109f026a78c3959e886f2a058b2e3c3fd43a395685b0642cf12ab165a5a83a145eb74a9090b1b8ee799946e984ba635f7de48fc1fdf985b1f22420c4469a8a5a976e2f48a77f7285f1d827cea482eec57c4e118be388d71785b2dc9e6c98d3bae553d7faf8e9d221d216307c2335daaa89a0933b7b10c066b9ec85b3fd73f29912ba8be75ac2c96b5b3fb848cd57b815c8a2ba52f6411401cd5b25c585b44fda669c83126fede450e42c73644e51d308b6727521747af471018fe6be55af85b59aa7f4e08169416adc3fa95abbcd3186e3b39da1549e7ad444b88932b7aac95d85b637df044e9c5b32d5d467244f24013fcbde66198e92f469fd70fb29a4b3ce59ba85b7b03b984e1280040cf4ef96b5cc86ab354cec73d5e113a4a88854918e3411086285b8addcd9d5ca8819f697aaa95ec7bfd5fec93e61d463c6c332d6a1f54d25d6569885b96d45f8dfd340885301d535c11fd873660bf88ca5074541fb06960678b38dbac785bae6259077c8b5be59726ca02c7b298d823e26e307448479eb7587f9841b1f362185bb7e42f93071d79d0b86bbfdd6f53d692bd58e12ac59030d94c675ed24d715ef1485bcc3e7d6cc923dec753357ec6e27e2996acbeb85ac15bb8a5b3f790e02cf1b894a85bd609bb9ef26d53039f1ce98b14d17f18ef362b61a4ddc80374fbba77434dd3bbc85be9823abd3cb883061e8b09798f2a7b9c0bfa82a3d425ebb246d02fd6290ecfd2685bf6f28872e8ad23885b23e9af6be2b433fd4a8b60e5046902ae2d3f6cd8238684d85c0195d44e283f2784ec10ff5e36efd2e3391eaee087e509083dd3ded1084076d6c85c13fb28adb3b0546477abc314caf5a0a6877e2e080875a62e11faafb3a95edc30f85c23dc7fd213fab4a666cd5505cfb3b5199d85705d13ddad7c6f758f5b618facbf285c36159731e7dafd90bc4ad7d323c3b8a10858617c1ef53e649ccf374dd93bf3f8a85c40cc0c6ec711eee746771bce97f736755c171571b32718aedee853eb29b149f9f85c552ad81e1b7925221baec2d0f50b0ec55e039f8e7467e1e1e2ffebce607f60b1385c6642c489f50f8b903fb3b124eece3c1b05d5af1fb39cf85463ef8b89a9c32233f85c78d2755eb42cca8cc5d3770f3e1986281c0a1a2208bd3d028b5603a2f072b055785c8700af089b54afe10c1f4b223cd7ddac01055351fcba874d1a9b6e0af1560f2e285c9df5ebdf34ea2f24521fa514c2642869026165eba796e79b5ee5a162b98a6bee585ca9ce7f00b556687c8ed6d7920bd1b9a71b6a1c9d0c0efb02020b2e34982f867ba85cb9d40c06b11497f120e68f593bb2965b0d73301422f4d92b5aa6562e08534379c85cce6610750c08ec2f08e9662c9570303d9b3e2c0998ae934fdfdcfd816212d9ba785cd7a731c4d34cb0d18a4734d722154f36b688778d4abfb0419240fa0135484c2bc85ce8155f9d686791bfddd4f418ce236a145b2594d0458349c4577535dafdc43fd7f85cf8a0da14e9448f90556e2844b698a301b791e3c1667167bdb90355ad793216e9885d088f6e188a754191f87805d4d82ed3351b64dd3d2835b122ec27ac867a67be71985d17d99a73b83a729d205deffa4afd2543f29f4a341e47b8cf6377d4dae91b3434185d28be7fa7846ae55fda1db6d915b69aeda9af570a6e53867836c74ba11de8888d485d340b231e4ee74bbf8062309ccf6817d0f6ee7cb2b5e2c2fd3287373473c0f78fa85d4b6670439ada41a2e16d16fca568aaf244b50391b64e08f3e6360cc78a55947f485d53cad60ad759f3cf2343583e355edfe65102dbf60109426665a5c92fbc8fb300685d652f1d8407e322a9f15355cbeea291e2a816963fe0fe0ba42ea03409aa88f5ca685d7c030f700028a00d3ca656296704a4131ea4a0aa1f1bb0acfd451a6124226fc7b85d8af9757ed2c894f815e25975b0a96a548248e328b4be6a0a54bf704d4414dbf9485d978f1726fc2a2b2eeff18c4c388b7f41b4b00464a25a4306054fb57edb1e33b4a85da61619c0eeda47377656b7c4eeceb41d30aa2a2b258024a25a54522f83a703a9805db000000000000000000000000000000000000000000000000000000000000000085dc86bde42bc2adc8fd4f6be5227298723bf4d383ac07d34db332308aced2349d7285dd773649bc6b115ab4b51d920553726e020c4e4a7b5f13d82344e3c530622545ac85de44e950f064cc30a9860df9b2eda70abe525e0bbbf2569e54341fe76799c9c01185dfe4cc0cbc86df36b5054921cfe7abbf7f55cb52a22b919c38f27ec650dd9aa4f885e059b7fdf53e39d7915eab94b0ff8b524612a4c6a026edbd367f9a7d3c5cc4f0a085e1768babd9f533e5b1acd64295b6af602b5be71d217ec3bf13e48261d5b962bbca85e2d25b58f00a2c7bb6933054f46144e598c20467c3404ed2f8bbbe33b066c88b6185e36d634e05f700ef09f9d6cfda2d7a3424299f3392d3fb75b1a8ef125e62b12e9885e4c772954abd11e2979344154dfb737773e8fe4be9e33e4ceef617dbbdaa392fc885e5e5bfc313755676f4f0ff0c84ce3b5d4075a9b9292774feda2b8e3f867c20087885e623bada6dbd1770af11a29dbcb67259499160166d31dc7150717f097a94994b9585e7b374a7fe05bd366ed8e2ca6e22bd2b8bf93be98fdaed7eeab08954cbb6c3a7eb85e8a3e5a099c5a25d2761e446823c854b9280bfd0b26eb44e1b2133044d906b7b4c85e9958927de752662a9b20282a2f57db6bc30ceae3d9da6172720af0abac208c2fd85ea9c953ae4079a66449920ec3680ef327a5afa5d46b7b65f234d5ba06f2554093a85ebae0c72bc17d18f5d9e4371568f21e9b08f20b2f153eb4b0ac48dce0ef130947285ecc38e214e1a31ddb3fbbab4a78436866fae2d312d6beeeb06cb2deae1e67306a585ed0a22c766c8ee86345c2c1346ee7673b690302d128d7ea60a0838b954f4eccb5085ee300320af2918b8c37f355b26b309f4abfa0cb9d7db5c0f5518f547d96441d99585ef5d7cce0bb0dde2ef47c56a09ac9e24fb5a5940fdc207f419a6233ce65a22af3f85f065a15b88e7a3980a165139fc3bf414219a6937fe00f563097400d1823f43b16785f1b7a0afd603c9c5725bd84d5c15a344b2e41a8345fb4865c8b2fc10bc44c3b85185f2933d21ae1b0e988e5974b37ff10bfc0e1f12bc989d6a9425809d8b0b27fc57dd85f3f5f2c6b759d93288bc4099e5450ac60177058624e0c45d60cb1f8a500bf013d985f468a96a39be8452b2fe019d1a4cccb56eeaf6575168b1fcecf7cd57fd3c11fef685f5ad85af600c38744bc70237f5056d610713984978fbe3f8aa13bc5fbb0bdc17d585f6d1bd0d920e8b8a979c42bb48e7cb661a5abc4512550ec91c460e874b65b7013e85f7bd586d02efbc7527252733c43e12c7e4816d45726e44f4b381b25556848d987185f8298666cf2a857281ecfb040f7c5bba8443ecd86eb3a8e0c688f48ba7c23a6e3585f92a27525130854d2900f0219f0f9d4ccd08e80dd51340992ae24d157fd60d7dc085fa0d8344142ab3257c604fba05206ee43e063a275f1f6c2d2d538c8a68e13aeb3185fb37df044e9c5b32d5d467244f24013fcbde66198e92f469fd70fb29a4b3ce59ba85fc6ad9e338033fec53be344b2a5849f9946b4aebbbe2d801d238f5b757044bf9ce85fd9847d4105134450b8444254859de231eb26b241438687e1800f091d800e2a70185fe20a7f3b03be522c22af449525a96a6300b14feb586563716c4ae151701c4828285fff2883f2e8e5c92bcd900e33a4468e6991790ce09ee6eac86acded859c33b422b1739c97c94885717d4ff7f4b5612813336b6f91d87daac9f923155d2c04a0968fbec3f611dc70937ae7270cb3fb98ba590e369ef2262ee79c23b1ed5c3667c96b01610b855d0f1c9a85b26f6d4d728294afddf8abbc977caf29999837460661c37df044e9c5b32d5d467244f24013fcbde66198e92f469fd70fb29a4b3ce59baba1890909a230cf60afd63b163b5c2056726b4c9a0f8a8a336ada2ed6b3564c4890904e6150ed2bcad477dac790037093ac8cd0b29e260c83efc664d4b8e38e5b1035ee78dde645a93e8c847801514227d7ddac439ac74e6c569b09dcc1de31944b6e9c7885212dc06b845283f1ba4e7d91d39a796d0d8f7f2f7fd474ad5a71c03eb3be86ff66e67a7300c41d30be831da1f5957cac0192bb0324769ede7006a7183610880da930ec83cee39f105f148fe9a6f0002566ccfadf7b86b4985f5c58c128df2c12d6e4a71b5283ecfde5318d596f90845138ce512edce2f213e23b02c10f787ceeb99527e4915a1719ff50d21bf6caf91bef7547e93fbf635a8f8fa3606d5e757cc7c5e80a9e1000aec2ffccbbf1ca3936c36d1553c8481c07cf3de9fa0c53ff3a7fecd1f922f00ec1607e262c849fd0f886c2d89c2f882051a59e8b1d85f538f57eb34c0170d66e1b6a9b0e97272be26439cdadad52ca17c9f89c066bc525ca635bda0f8926d95998be7123c9786f891d36b64b8938f4fe3bb2ecd9b943f2292f20f185cbc0eeb99a745fe21fe8fe67662be50f67e56d8496f6ca44a82a3cb87838a07fc6760c0f2ea858a72fb8cf7bd0e919876855efa9a244ec437df044e9c5b32d5d467244f24013fcbde66198e92f469fd70fb29a4b3ce59ba1455c2cc0751894635e4a0c86b68f063862d6b8cd35ba051a0937d07d4d284020be6779ec98804e3482f86fc2ed59ac3dec554b1c4e2af3b982e0326dd8757e0de4836d71e51e403a5d82b0a32c367d838becad3bd53f2b058f0a3548c407b8280edd01e6898af135b652afde2b08d97e9c753ba0ee78a021a0f7db34343e7da3b91f1423049bda551e6cbd047767af6da588e8d9cd4e229b621de7a8df73b440f144a2e0b5533bae91053c5ea23d04aaa62223ac61e73446a7536b187aba8925bc05a48904250fb34035c4162dce704a58b8c95a4587a118fa8d3a1b926e5c1c6a592b370a2ed98b3410b464c962e062722c4dabaf9a679954901980c1acf871bd491ac70455e0a82bab957348a9f629f8e166e5813dd215764dda61cd89d26f4fd3fff5cfd4208a4cf40d864bcd51d87a8c1148c35eeb7973e0bfd5939077cd7c49866141a930b1c70ba5df995b748d4b630fd9c22e0eab475d6a275cd857c24306ff0df795edd63c8cb632b9bc86da1894ae494a3761c3e0717d0a6eaa4e18d91b407007b9bc6c06a50eaee9cbcb137ada525ec7eec45268039b29a4cf48852a67b234a9f98a821a6418df2294a23883d7eb073171005b2e806a32ebb8bbe0799091662126cab086308f0333463ac65ed744829d25a4bc2cab72597ec38909e2e850c19ec762eae9350917fbb513a55610d1983065bb3b6865e8b80b22a48cc88d044d5e84ab408ce866de5774666908ccdc7479b7ed4b68d6b3e0df5afd0f83379c24c0d39d83cd35028d350c258583e5e20c950cc972d13110ac10ff3eda25fe03ee7596f1ad1434feb952944d969660921a6bd0143713daac6279ac6e8a35148912f5652bff433cb6cb075254645878c8ccbc705c66f246f1a9f822e0b6132f8ed84116a1c55379a784886273b67cdfee604e9c244279380ac3090268e6b5a472f22cad62baedb812655276b348b4fc0c8a69bed97700c9eec97d1bbfb92c5fe3a6f54a7a3ab4a663e995a30e135140b5edc61981b516d4e23d320748cdc211c6279d42db2ff2366b4325dfbde970338f67bb60bd883f3abde7c0ee0be504c7517eb9a604aebedc2373152eab3d956d7b980cfae6b13bed40f2addb57cbd2a63c02c7f73c56b8a1265c5c688af77cd950f8373ab74a7ca16edd0ea0ae6446cf4cf33d93b306c441acac29849358fdaad9bb4ce8307d4851d8036f0bf6c0b60d1c2ed9c867b7ca085d9eb7dbd0f94f4fc6d1d4b25be9620adea6b75b970d83c22acc9c88a3c88847e658d57c91c2ca625bbb2a76d33430c97ab506e42d52c10f787ceeb99527e4915a1719ff50d21bf6caf91bef7547e93fbf635a8f8fa916667a9c38c8e112db56c10e24ef7fff2d7c4d1becd84963a214d1b2ae6e520182440bf9d7d6e2886f779ff2e1732d3a0d98c09a2ee15d3da9c7f457d9065aca72aa29e2f0ded1c76b91728cc923de5f78aa07e8e932732286521e2e09634a07954e5f48cabb89021f6d84b3ed3652da99191e3eabe04702e9d6d78d30d6c0ef453a537a2a16e4593471bef8f1e5a0f3b5e7f8eb7d12d44342cadd0695d7e133b4f46fc18533d26bbbc0fab9c06b5f12a882b90b3be0850ba4d7a7110c401f78128cfa181b363b68c242e09582f5481172ecefe88182576ce8b2e8e1bf42e2331ff4cb5abee7ed24c1b8f9e41898180d92d268a73e8b57163eecd0cb04ca87be81c7e8287867b9e2cf99f02e9afeadf07cf35fef8457ccc17f20ee688167d97889e4fee836cc8ee8fc30cbc25c676c3a06df87f3e54b0fe3e764aa78c76cc13f4c0ed75772039365abc057b0105267107df214a648cfce3b0a3aeb4eb17f4b0265f859d305b2465be360b84b1f8d433f90b9cecd27bf60c104ae9ac25877e8049399d7bf6ac9d78499e64a1fdc4458a2b92d8dee5b73ce009f579487496ce90ee4e3f7079aedbe01e65d5b1bf2cdee6c19eed29294d5d05529205054bdd6a84aa3c2e9ec1762fc69c0b4a71ed66b92ab394f7a946f51e71a6a42f43b4ec8e9f462df0feddc1bb001ad67b661c1b5d9981f65d55c8c97650d4cb3c7946bdf6cf30db1624a739006c99b3e5e3e29cfc2571b4eb1e729ab4e9284d333a44009269ef6ca694626c0638d3130bb2ffcedeff423601e955c4f1257684ba3b11311d9dd5a7a7972970ba55973614483c96cc37884ef7bb6b02c24fa0aace95665faf3765c2e2452a724401758bc1bb6182837f192922d82e8beefee757fb8e51c1fbea2c10f787ceeb99527e4915a1719ff50d21bf6caf91bef7547e93fbf635a8f8fa1883b891da6dd03ca122cd15519ee862047b01aacf785de33c9394348d23baac13ba66d9f3948103d1db9fd36f643e86db3c78fe734b7c9b563ac5fe9e4bcaff462df0feddc1bb001ad67b661c1b5d9981f65d55c8c97650d4cb3c7946bdf6cf0b8237389d43e9ef147c332dd9cc8e7cedeabe4848f272ce3bb987619a5d81775c902fa490890b2c8185249b311a11ae3bdbdd51ccd86a3cc647cd7aaaacb9f01250d4c6cb1b5410e41d32f60a92d0f5ff7096c3d0ff72527bd82cf4c84f485efcefce7473e4cc80a49ec7393ccb0f7f9dea237d2137d13aa7a054f4e02c7ab2d9af4e1158073fb75159c1fefb378b947b01ac4b81708f5e620ac798d3961385003acb8e89dcad7886e83e3ea669b4ff59cfa7b80034b1ee103e59a1bed0495aa967bcc0ec3dd89c9468374953d79bb066a5af173e59e7af5fd18a7074fd4fd5f12c58783caa9b755cbd2734bb060d4bab2f8d1ff37696262140a9a7fe7ba3949b54aa922043556710f13cd995db8fd38817ee14a3ce5d17730c98d1fff8ec925b833a3a9723e11371f45fdb86fabd87fe823bfe5e7512747c30b9bf4fe6a3929447a08a195c546b63f78401dad09f7019517150c81b76152dc22a619524e51a8296934a2c29c0ed27b2f8ae19ca8c94329404cfeb5def008f5358735c3b76065395dbb2b4f787bb5eab08dbd03e830e279095dd849da3e726a5494f262989cd54ed099e54592d663d3b97b473ed02e4b7513565b2902f999fb7bb68dac78f1cca2aa6a95bf780005b6458013c7d1dbb3a118ac7d19480280fb28d3433b2f66c2fa2527e6109acd362a39fa19d3fa5fac4fa2589fb6e5fe3d9c9fbcbce831284bcca925a04a9393ed59af463e57a7ae9b2e3b6c0102a2da2b179446d5dccbdfeef1194a2da2c2ef652cc9f505ecb34804e88a14fc57c757db6fd3b8fe1452526a9c250c631e85e73459cc23c7a248735d33ddfdec68ced1025cc2cec9c88b321403f768487d574a6adb39931e3c884a39ca373c91dd970a1c34b8c036d5c5de38c569a7ebe96cc406e78c718af3737ff43acca993e6aa245897e900444a3472c37df044e9c5b32d5d467244f24013fcbde66198e92f469fd70fb29a4b3ce59ba6ba03d2a2f1d8ebf6bc9bb778083790b3640a3b6b0e0962533304741491e219ffca782d27cd594b6df66758073f65c4f6f67c20286ffb4f62b8665d613a3d6621250d4c6cb1b5410e41d32f60a92d0f5ff7096c3d0ff72527bd82cf4c84f485e65a15b88e7a3980a165139fc3bf414219a6937fe00f563097400d1823f43b1675a1508dd323a2c2060fbb5b42686afd1aa303dbc422eccafe8a9bfe21d808ba599dae34f0866feaf564d6fbe70a5f14882c7607e2d05e162138c5d6c72e26a0ad40b61c7c922f44116add929f64fdf2723bd231e79a0a62341eb684fea05577f196b46f1d0ebe1d6b8c108ae80a71aa9296335611c73ce4a7b2502d758de06cfc119a748efc0f6d959c668584dcf8bbcb2576b1d54fd8c132765f64c05a9ce9e6771eb25de460fcf38cb2ef2db0edd1a3920565a0dc6eebad8a12922e3660b8176ba5535078d3a04281f4a151c760ecba75aabff02fbcabf3e549caa5352782dbf5a1b140f6023e5d2b1fd9dd4295d56d9c2cb508ac90540f8eb80f4d0709868310c7c1f820ca46614d3e209f08f8cf7c242d8bdc7c0abd60df496615f8c17154ddff066d0afc2fa9f97744b78dfae8361ea14a747d8790106c3711deff2155271f911d131729a624ec1ecd2ec50d7a5d490bbd1655399d5623642702e6ee1a50430fe40488b924698e5a979652e2edca064aa375c46cca4a39e9d9843e8c399265f859d305b2465be360b84b1f8d433f90b9cecd27bf60c104ae9ac25877e802f8d33a44f69ad4ef0cb9d281e08de61756112fba5327dbe8902e65801d20e8135257e7b8adead9eb9eafbf15874ed671e6d80a47aaf31b07bebd7698440b7ec73f35f8a1e7896edb368fe19d1b3a3cb388cfa3b9415ecaa0d6313cd22da8a12605efdce8146407a5c89bef6ce22d0892a9c9307010bd94cce56d75e88945a1d48f397ff1c64a597d547660745e78bf9d4f90b10a08b6f10c75492e0dec604fd5d155dc2bd31003beb7fcf825324f5d0606ce4be549d18bffaf7c9cf897f5d26988dc1f223614f0b95e88ecd669831076fb252f8f9965bd4fad5050208f81845027e626623f16de3ac4f7f1b59222b5bed948492271bc6207265342bdd7c8b36be68787a0a1a0b22122ba64174a5a331825dbc4028a7b20169d6d0f95ba133c4dda9dd20133ba3a9b968f035d2d455121ac8c97696bdee6f1650d4831ea1c5da1dfaa6a91a2c55b13607b955764f5615ae4a4a629e1f0e901d1447fab2e88b71597eb87128a88a4a9b5e4a1a720849978a4c1223ff7df0f7c09cb1a195c26b2b65fd7e5f6047f5c166935f8bab6b10f511fe807db80f4be0b8fb8be6e73f3a12bec3e9aa7c7a9fefcdaad5a03eabe962b384a8f4295e2620177b8a4ae78f0883bda632b591188e1bf1c29f6f2389484d53607001f2be5e2b900be527bec0b1cde4b4ecd8d2e6b98239b7afacc90d09180658071eebeb58f5392656582a15df44fbb0e645a7ad8ee56f42ee92ac64df7ef6a8ec449323e9c99666ad3abf97d11aa4101b95738d6760e540f9c205e13c73f0bfcae48bd05690e467557c109747390cb4144d2894e019032881a6e1f0c165cb1afa810f81b88b897f3d88fb270453493e89882bb94f36abd2f42865aa52492942c81e7285851b02ed6afd8d0a9fbb604ac04aa86a3e8b2875990e860bc6ce0e90bcff08feb655659ed5f31979b18e8fac5356a32b9497b757a469af85cec1a2732378e822b1475fd544b28af0a681ae0a9f8a610d688f8a573db0db25a60c1b1b658c7735401ce74938f0a8d9120fb7e3531acbca2525adac0991d4705f95d37ac627587c4d74284ed476a0c6d80e0177573adc1e798dbea0f9e07e0b12913fab5cbb11deac9236b7925f5015fee5b71804b88a2e0fa8a71258b6d397eff6fc9ede2b332a590957c987c3bb9a5471e34c44f68cbeb920c0dab164a1391a42ca9be2398d9c05fb92e3edfa57d4d2b0e7a9726eb0c85b1b458141e36a83825ad3e90a1e977633cd99956ee6778c025a037981157b602db0d783026df88d412c33c06c5680d1e06007e6d1da255fdcd58e64caa88c4dcc137d2dcf81b80eba15a517496de028082cee9b4f8da51a0877b12bbd7b8443faa86a09edb2b7cb9e18299b3248e2083b038f943616d81c0960e072975956657fa231b003962d553fbaf8ff26171d19a3506245f436c17d715e462df0feddc1bb001ad67b661c1b5d9981f65d55c8c97650d4cb3c7946bdf6cfacd917f0234a65e9d35793d8242a3a2c8bd8b80f2e10be2f57463ee2a92469cc68b2190b2c79b1d00c34b6568175b3ddc736048091aafb8a12f68f4f79910ee3ef18c0c1c3d44e67cac52fc93a7092389d76e81072140e17ea01047ce807ff043c8d5b6d22464cd4986e9a89e8de639ddf7351d051b8158b899791dc22465f0e073e994faee5945f7849104a3999a2e9753512005c25ec6cb6037165ef762398b85dec39a23a3dad4b8afed71d008742109d6838c0f4c88e37ab7072ea096c2f4823606872937aed13e0c159e50bb04fe25a57d4b1241941ef00ae137668d29531122a190fe308aa3cd0c883d05d8281bb2cbafa235ba599e988ff38538fbb4d3ce06ea5187301c2eaf2d6404d458dfb5d4e29e5f6c69041f4232b46c47883c3dcf4cb147a5baab9ab484ab9cd621c9849bc0a6fa9d2501d2710f10aa3efe24a85960f821b86f4974213c0b186a8bdc30873981889778562c053399328dbaefa536bea17e5b93291b9dc01b211bd614e20b873d9ba473185f118c496821735395d3bfa0d85c77928dab237507992a7b2bab3c80951a92887c946dc49fb684e2d913052aba419c187b96529c556d0e0ceedab7e76d86f43b64508d620b7b794873cf938e27e2ba6de6911a2c26723a82c241138185e12ba5db164841d4c0c82d27b63439f6687c4c7e505c74a8ed3ac177fc17398b0105c89e942f7c0521d2b5c668114814b5a016b2cead242748d6afd32c85a483126735079df45d7e80a0a15464efb7958e7d74eb69e7ccefcdcc1b7256a0e17fbf28f3cb2c0bdad621c819724e062c8c9683e3605c17db7242d0d74c1b702508ca79c1e0cdaa6f7ab469954cebb2420a3e289c925f9655e052731c0a16535b8fd7a7f868ad70291a62e3e0f83b4bdd7c7830346fef717cfb0749110e5f952094234329b8e14ca9bd460f9d366d39111ee860683933218bf01f8117a48333db00750d573df0ceb113fe4a4d9c3806bdf32a79e15eb6de0f4368b9da3ca2be0e293ec0d77e42d3bb127fe99fd8c7a4c1169f7b73777143701c30290c0d9deede9316e75a9f36b57a8f39fa305e74c4ec6d89dd48f01c2d545cd11ec6597ed550162c72f7a673ab63e447aeba35eb11c5e32ff3ff6cf1de69f5039cbc5cb25a76bb0116784445491c85a536a21f93a377e3b3ecb9fe407c43bd905dac9c9ae61d5997cf2fd14f30556bc6d4038e81c7e8287867b9e2cf99f02e9afeadf07cf35fef8457ccc17f20ee688167d97298ad77f2eb3f5037fe5464c0f4e8234a2541d4e5cdb684c4515747834f6887fd06c70d13e40059257016fc77e58f3c0dbf2507c8c3c064195a4d67cc684d4f1ac38f594071edc3af7a20642109f026a78c3959e886f2a058b2e3c3fd43a3956642cf12ab165a5a83a145eb74a9090b1b8ee799946e984ba635f7de48fc1fdf9f22420c4469a8a5a976e2f48a77f7285f1d827cea482eec57c4e118be388d717dc9e6c98d3bae553d7faf8e9d221d216307c2335daaa89a0933b7b10c066b9ecfd73f29912ba8be75ac2c96b5b3fb848cd57b815c8a2ba52f6411401cd5b25c54fda669c83126fede450e42c73644e51d308b6727521747af471018fe6be55af9aa7f4e08169416adc3fa95abbcd3186e3b39da1549e7ad444b88932b7aac95d37df044e9c5b32d5d467244f24013fcbde66198e92f469fd70fb29a4b3ce59bab03b984e1280040cf4ef96b5cc86ab354cec73d5e113a4a88854918e34110862addcd9d5ca8819f697aaa95ec7bfd5fec93e61d463c6c332d6a1f54d25d656986d45f8dfd340885301d535c11fd873660bf88ca5074541fb06960678b38dbac7e6259077c8b5be59726ca02c7b298d823e26e307448479eb7587f9841b1f36217e42f93071d79d0b86bbfdd6f53d692bd58e12ac59030d94c675ed24d715ef14c3e7d6cc923dec753357ec6e27e2996acbeb85ac15bb8a5b3f790e02cf1b894a609bb9ef26d53039f1ce98b14d17f18ef362b61a4ddc80374fbba77434dd3bbc9823abd3cb883061e8b09798f2a7b9c0bfa82a3d425ebb246d02fd6290ecfd266f28872e8ad23885b23e9af6be2b433fd4a8b60e5046902ae2d3f6cd8238684d195d44e283f2784ec10ff5e36efd2e3391eaee087e509083dd3ded1084076d6c3fb28adb3b0546477abc314caf5a0a6877e2e080875a62e11faafb3a95edc30f3dc7fd213fab4a666cd5505cfb3b5199d85705d13ddad7c6f758f5b618facbf26159731e7dafd90bc4ad7d323c3b8a10858617c1ef53e649ccf374dd93bf3f8a0cc0c6ec711eee746771bce97f736755c171571b32718aedee853eb29b149f9f52ad81e1b7925221baec2d0f50b0ec55e039f8e7467e1e1e2ffebce607f60b13642c489f50f8b903fb3b124eece3c1b05d5af1fb39cf85463ef8b89a9c32233f8d2755eb42cca8cc5d3770f3e1986281c0a1a2208bd3d028b5603a2f072b0557700af089b54afe10c1f4b223cd7ddac01055351fcba874d1a9b6e0af1560f2e2df5ebdf34ea2f24521fa514c2642869026165eba796e79b5ee5a162b98a6bee59ce7f00b556687c8ed6d7920bd1b9a71b6a1c9d0c0efb02020b2e34982f867ba9d40c06b11497f120e68f593bb2965b0d73301422f4d92b5aa6562e08534379ce6610750c08ec2f08e9662c9570303d9b3e2c0998ae934fdfdcfd816212d9ba77a731c4d34cb0d18a4734d722154f36b688778d4abfb0419240fa0135484c2bc8155f9d686791bfddd4f418ce236a145b2594d0458349c4577535dafdc43fd7f8a0da14e9448f90556e2844b698a301b791e3c1667167bdb90355ad793216e9888f6e188a754191f87805d4d82ed3351b64dd3d2835b122ec27ac867a67be7197d99a73b83a729d205deffa4afd2543f29f4a341e47b8cf6377d4dae91b343418be7fa7846ae55fda1db6d915b69aeda9af570a6e53867836c74ba11de8888d440b231e4ee74bbf8062309ccf6817d0f6ee7cb2b5e2c2fd3287373473c0f78fab6670439ada41a2e16d16fca568aaf244b50391b64e08f3e6360cc78a55947f43cad60ad759f3cf2343583e355edfe65102dbf60109426665a5c92fbc8fb300652f1d8407e322a9f15355cbeea291e2a816963fe0fe0ba42ea03409aa88f5ca6c030f700028a00d3ca656296704a4131ea4a0aa1f1bb0acfd451a6124226fc7baf9757ed2c894f815e25975b0a96a548248e328b4be6a0a54bf704d4414dbf9478f1726fc2a2b2eeff18c4c388b7f41b4b00464a25a4306054fb57edb1e33b4a61619c0eeda47377656b7c4eeceb41d30aa2a2b258024a25a54522f83a703a9886bde42bc2adc8fd4f6be5227298723bf4d383ac07d34db332308aced2349d72773649bc6b115ab4b51d920553726e020c4e4a7b5f13d82344e3c530622545ac44e950f064cc30a9860df9b2eda70abe525e0bbbf2569e54341fe76799c9c011e4cc0cbc86df36b5054921cfe7abbf7f55cb52a22b919c38f27ec650dd9aa4f859b7fdf53e39d7915eab94b0ff8b524612a4c6a026edbd367f9a7d3c5cc4f0a0768babd9f533e5b1acd64295b6af602b5be71d217ec3bf13e48261d5b962bbcad25b58f00a2c7bb6933054f46144e598c20467c3404ed2f8bbbe33b066c88b616d634e05f700ef09f9d6cfda2d7a3424299f3392d3fb75b1a8ef125e62b12e98c772954abd11e2979344154dfb737773e8fe4be9e33e4ceef617dbbdaa392fc8e5bfc313755676f4f0ff0c84ce3b5d4075a9b9292774feda2b8e3f867c20087823bada6dbd1770af11a29dbcb67259499160166d31dc7150717f097a94994b95b374a7fe05bd366ed8e2ca6e22bd2b8bf93be98fdaed7eeab08954cbb6c3a7eba3e5a099c5a25d2761e446823c854b9280bfd0b26eb44e1b2133044d906b7b4c958927de752662a9b20282a2f57db6bc30ceae3d9da6172720af0abac208c2fd9c953ae4079a66449920ec3680ef327a5afa5d46b7b65f234d5ba06f2554093aae0c72bc17d18f5d9e4371568f21e9b08f20b2f153eb4b0ac48dce0ef1309472c38e214e1a31ddb3fbbab4a78436866fae2d312d6beeeb06cb2deae1e67306a50a22c766c8ee86345c2c1346ee7673b690302d128d7ea60a0838b954f4eccb50300320af2918b8c37f355b26b309f4abfa0cb9d7db5c0f5518f547d96441d9955d7cce0bb0dde2ef47c56a09ac9e24fb5a5940fdc207f419a6233ce65a22af3f65a15b88e7a3980a165139fc3bf414219a6937fe00f563097400d1823f43b167b7a0afd603c9c5725bd84d5c15a344b2e41a8345fb4865c8b2fc10bc44c3b851933d21ae1b0e988e5974b37ff10bfc0e1f12bc989d6a9425809d8b0b27fc57ddf5f2c6b759d93288bc4099e5450ac60177058624e0c45d60cb1f8a500bf013d968a96a39be8452b2fe019d1a4cccb56eeaf6575168b1fcecf7cd57fd3c11fef6ad85af600c38744bc70237f5056d610713984978fbe3f8aa13bc5fbb0bdc17d5d1bd0d920e8b8a979c42bb48e7cb661a5abc4512550ec91c460e874b65b7013ebd586d02efbc7527252733c43e12c7e4816d45726e44f4b381b25556848d9871298666cf2a857281ecfb040f7c5bba8443ecd86eb3a8e0c688f48ba7c23a6e352a27525130854d2900f0219f0f9d4ccd08e80dd51340992ae24d157fd60d7dc00d8344142ab3257c604fba05206ee43e063a275f1f6c2d2d538c8a68e13aeb3137df044e9c5b32d5d467244f24013fcbde66198e92f469fd70fb29a4b3ce59ba6ad9e338033fec53be344b2a5849f9946b4aebbbe2d801d238f5b757044bf9ce9847d4105134450b8444254859de231eb26b241438687e1800f091d800e2a70120a7f3b03be522c22af449525a96a6300b14feb586563716c4ae151701c48282f2883f2e8e5c92bcd900e33a4468e6991790ce09ee6eac86acded859c33b422b039f0500000000000001008500a2ccd88d159db9f3b2c036c581e1e6f691e8cb886f8cabf87aa154a9009c246985018d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4050200000000000000000000000000000000000000000000000000000000000000008503c05f02b982bbb9d1a183917a7df92a894ed66b9d0348a9a3a85bbeec5cfaa4b0050400000000000000000000000000000000000000000000000000000000000000008505446cf4cf33d93b306c441acac29849358fdaad9bb4ce8307d4851d8036f0bf6c850659ea88aa4c6eddc5398ce3048c42da1494107a925cc5e3024e61bbe0fffc69c185073d372dbedb70293e4299760f48e9d1aabad1b06ddb404a7d0942418227d6681a0508000000000000000000000000000000000000000000000000000000000000000085094d85b0b16ae3cc03c32e8fbb567fd2eb90c3ac661d6f641815c9387a01fb583c850a3ff103204b17336288d2aa80a882dbbe997fa5453e1049658baf2f2ef94eb0d6850b24d8f6501ffbfb29927060a4daf343c8a61f61293f5a9c1e2c91a40a338cd9e5850c07eb476de388d8edafa764901cae812c6deb2ddb0466ae6b0a938edd5e33fd71850d8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4050e0000000000000000000000000000000000000000000000000000000000000000850fc88fb3ae736e199b316a5d6343de70653a86d25dbfac44de5ddf101a432d10cb0510000000000000000000000000000000000000000000000000000000000000000085113dccf1aaad5042e3fe67575874f5e4dce1b32ff4239a90fde71203a3baa1b24e051200000000000000000000000000000000000000000000000000000000000000008513539fd9de6ad6cbae88b8242b24ebcb39e0a4f261ebe84c0b7580746c846855f28514c88fb3ae736e199b316a5d6343de70653a86d25dbfac44de5ddf101a432d10cb0515000000000000000000000000000000000000000000000000000000000000000085161c1d9079101657ddf423569d703f97df99e6a71ded10c4dad4be1831c74ccab68517ea669c1d46e07f43cd7ca2c24a1a820caa663774952c56d3477f2c858c8392ec0518000000000000000000000000000000000000000000000000000000000000000085193d372dbedb70293e4299760f48e9d1aabad1b06ddb404a7d0942418227d6681a851a20459a413b1bb96ee64946fd3f9eed27bf65fc10c92f7cfc9266765220c07e96851b2b8eaf7b859d252fd2299e424605a73a5a7b9599813ae418ed01e53369c00444851c96d764cd25672b847eecabb6cd335c52029f8286ffeb64ee248af1a95ce4d324051d0000000000000000000000000000000000000000000000000000000000000000851ef77e8872baea205aad430d0c9d90b40ee701b56d50fe38109d65ef33b041f4a5851f96d764cd25672b847eecabb6cd335c52029f8286ffeb64ee248af1a95ce4d3248520e87596c450e9650e7ff154f7dd6230940b120ab5000332018e15c3126bf711d18521446cf4cf33d93b306c441acac29849358fdaad9bb4ce8307d4851d8036f0bf6c85229509669927db675f36c876383323d6930d518bd18bd80e37ae9672e0191415a08523408c091424bcd7e2569675eca4ec70e2edfd65f83c73ac574269fb14b43242b285249e89f977bd47dc735928681bb478874fefcd27c6e517dce3cd4fd2b3a651105e052500000000000000000000000000000000000000000000000000000000000000008526857dea8906dc4f66fd82f5942ec7213aae30fdd7abc33f46ffd7ddefe3b6c36785278be7fa7846ae55fda1db6d915b69aeda9af570a6e53867836c74ba11de8888d485287b79568ff4bcbf993a70f3142a4499e61ff92c81798c6ea17f25b9767691bc788529cf05e8f72bc7ccf6f58f6ab1ceccb89c17fef8616919f105363ab7c7b3c8d757852a930911f23911b7d89bc5884d1ced8ffdbd4cf9aeaeac4af54021b5b16739a45d852b8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4852cf77e8872baea205aad430d0c9d90b40ee701b56d50fe38109d65ef33b041f4a5052d0000000000000000000000000000000000000000000000000000000000000000852e3ff103204b17336288d2aa80a882dbbe997fa5453e1049658baf2f2ef94eb0d6852fb6681d3fe94a1430f3c9753fdb8d73d3d3415f0c4beb2bfe02853594124f2110853096d764cd25672b847eecabb6cd335c52029f8286ffeb64ee248af1a95ce4d324853105eacddbd1a8ea82615346690ea9666c1903484dfe0573a4d82b2b526b1e88048532202a300e955c5c06274d2454723c283f7a9b61d8c58fcd52c21465cc8c903f96853323874f7645e663e474bc4de2bc5a170e93899da3fa1c3cd11639cfeb7c3ee8d585347b79568ff4bcbf993a70f3142a4499e61ff92c81798c6ea17f25b9767691bc7885353ff103204b17336288d2aa80a882dbbe997fa5453e1049658baf2f2ef94eb0d685368d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4853745ec65505ce0e6c2e05a7aeca61383584f05ac4a356d8334577eadce3c5869908538789055c154a49c8da3fcdb02a2627c46c4a8bf02f73889d64b1faf40b396c64a85393ff103204b17336288d2aa80a882dbbe997fa5453e1049658baf2f2ef94eb0d6053a0000000000000000000000000000000000000000000000000000000000000000853b8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4853c07eb476de388d8edafa764901cae812c6deb2ddb0466ae6b0a938edd5e33fd71853daddcd9d5ca8819f697aaa95ec7bfd5fec93e61d463c6c332d6a1f54d25d65698053e0000000000000000000000000000000000000000000000000000000000000000853f360acfbdc8198052e648eeab8b9ebaa57481be63f07bd1dd4919c82fdb4dedb9854072a9d7801aebbcf2826c2c628ba86fb8c49c9a51bd255d8517edc83046d048438541d8169f584bb9bbdfc025a09b8a12a3a04b3481f9f55b9acc089b24fd819af3410542000000000000000000000000000000000000000000000000000000000000000085439a8e5ed9ef2b6466d56d1bb7211a6020116e2b7b1d4fef91745b03f23c5f9d8e8544e5c03dae88d6617d290194794cdeebcafc6e631a55d6c22410d485ce55ae2b8805450000000000000000000000000000000000000000000000000000000000000000854624d8f6501ffbfb29927060a4daf343c8a61f61293f5a9c1e2c91a40a338cd9e5854788076cfde310e31e16c4f8aff7a7b4a10a0b5e45ad82bce9f5e8965b9b9c5cc48548b6681d3fe94a1430f3c9753fdb8d73d3d3415f0c4beb2bfe02853594124f21108549b6681d3fe94a1430f3c9753fdb8d73d3d3415f0c4beb2bfe02853594124f2110054a0000000000000000000000000000000000000000000000000000000000000000054b0000000000000000000000000000000000000000000000000000000000000000854c4ddfdf605f03cf7f3df86267117cf4371774bc1ed0c02ca762e852d829abe45a854dcf05e8f72bc7ccf6f58f6ab1ceccb89c17fef8616919f105363ab7c7b3c8d757854e108496d8af2a1f437e91a715817d579e4aac0191745f9fd846ed5729c7921e61854fe3877eea23e9960b8878a79214e3fb2e09495194f55745cc6e5cfdefeda326030550000000000000000000000000000000000000000000000000000000000000000085514b45cd4b38ae81fbb92a63dd76b5fe48b81b0f8b762561c34e4b099d387deabb855207eb476de388d8edafa764901cae812c6deb2ddb0466ae6b0a938edd5e33fd7185538d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4855423353175abeec522f0bf4a654040152dc4e0aa20ff4b2d8a26129b21e2d557a08555c6283730495c54d80cc87cef1908df925cd2696c688f7011f6138b8bdc6762b8855636fd31ac1a2857b21472bd767a8d8fcf16b5d29b22ecc1d43d6c4f79457e367c8557406465cb8953a5d810c82f094fa1bc2f324edea190670d893e687ccb59beffd885589467b52a3e19a584f5a52d9ddbab0589d45543a0a12fd3726ff0cac9c3d36c2785595183c25990b4c78d43b05078cdd04d10f4b44180bd921f2336e2e6d9d244337d855ab4c418d3a3ee176efa8c6098430f643d10e947cbd622674632ee38c18570df5b055b0000000000000000000000000000000000000000000000000000000000000000855c78be3ea87602ed4453b66721bfe2756bc719023f2265e00bae8e17df88edde23855d97f3baca1df4fed2032584dcbc78a5a6885c43f9ab8b69a7cf3f57fefc042d0e855e8b72f81103c1547a99a5717e8148817b00330f15f3ef11d339f4d908e09e82f9855f8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4856099a8fda106e982eb5bf0c0fb34dcd9bc3c13a459dcb18ab071c77264901e43120561000000000000000000000000000000000000000000000000000000000000000085628d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4056300000000000000000000000000000000000000000000000000000000000000000564000000000000000000000000000000000000000000000000000000000000000085657b79568ff4bcbf993a70f3142a4499e61ff92c81798c6ea17f25b9767691bc78056600000000000000000000000000000000000000000000000000000000000000008567c88fb3ae736e199b316a5d6343de70653a86d25dbfac44de5ddf101a432d10cb8568fa18da0f8a00fd7c66caec0c8d4eb35609598e5b66914618a5f9a48c5d19ab5785696d13d57975a56e8c3fe10dc27f48158bee3f3078be90e5d579f2420e9ae951e9056a0000000000000000000000000000000000000000000000000000000000000000056b0000000000000000000000000000000000000000000000000000000000000000856c35ea6e2b2efe1b97fe63de9d2e81e92e4c07a83530b4951d266f3dfe30d19a78856d320c78ed806fb913e0e84dc463da44616f68d36cfee1a0b208cdedb786effe11856e446cf4cf33d93b306c441acac29849358fdaad9bb4ce8307d4851d8036f0bf6c856ff77e8872baea205aad430d0c9d90b40ee701b56d50fe38109d65ef33b041f4a5857054c38686ec4a9976084739d51eb790e6fa09e33ba127f69f494d03d86dcdde3e857107eb476de388d8edafa764901cae812c6deb2ddb0466ae6b0a938edd5e33fd710572000000000000000000000000000000000000000000000000000000000000000085734b45cd4b38ae81fbb92a63dd76b5fe48b81b0f8b762561c34e4b099d387deabb85746d13d57975a56e8c3fe10dc27f48158bee3f3078be90e5d579f2420e9ae951e985753d372dbedb70293e4299760f48e9d1aabad1b06ddb404a7d0942418227d6681a05760000000000000000000000000000000000000000000000000000000000000000857759ea88aa4c6eddc5398ce3048c42da1494107a925cc5e3024e61bbe0fffc69c105780000000000000000000000000000000000000000000000000000000000000000857959ea88aa4c6eddc5398ce3048c42da1494107a925cc5e3024e61bbe0fffc69c1857a5569bb6a945423c99e681a87188866eed7a4b22718707cc21e15416497df5a82857b580b42b6c3c01dca9c73a32c0aa2fa55e21c91c513740d859ba87ddd07de29c7857ccf05e8f72bc7ccf6f58f6ab1ceccb89c17fef8616919f105363ab7c7b3c8d757057d0000000000000000000000000000000000000000000000000000000000000000857e39731ca31b499f95ab425f1c05922887d770a371d02701e5b96e3ade15aca072857f2a104c2bb6c5f0ab185ecd428a0a3e3e7371ee1b5966eda30f2b540961bec2e485803cad8141df930cd91a1a73898dd1bb594f2ba26edddbb6b24a7fc7ee3d9862eb85818d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc485828d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4858307eb476de388d8edafa764901cae812c6deb2ddb0466ae6b0a938edd5e33fd718584b6681d3fe94a1430f3c9753fdb8d73d3d3415f0c4beb2bfe02853594124f2110858536d2164cbe2e350bf23d565d8de00343c04bb26f66d037189c331702f4269b7b8586c2756adfd08e2fbb1faa40025b62531eb4a4445364e1e0924d9db710af76f1b0058700000000000000000000000000000000000000000000000000000000000000008588408c091424bcd7e2569675eca4ec70e2edfd65f83c73ac574269fb14b43242b28589ea669c1d46e07f43cd7ca2c24a1a820caa663774952c56d3477f2c858c8392ec858a35ea6e2b2efe1b97fe63de9d2e81e92e4c07a83530b4951d266f3dfe30d19a78858b539fd9de6ad6cbae88b8242b24ebcb39e0a4f261ebe84c0b7580746c846855f2858c338714c3c754a785cd3ba71f077e7b47161e86eda8f45c9048ff4cc1c01b46e6858da7da6152406d4190671b387928c1a93bbe8b4acadc6a63d3468d5b686611eea4858e4b45cd4b38ae81fbb92a63dd76b5fe48b81b0f8b762561c34e4b099d387deabb858f4d85b0b16ae3cc03c32e8fbb567fd2eb90c3ac661d6f641815c9387a01fb583c8590f9d1e2a410550f34d0a20640f79e797ed4021212be78d7611e34125f6df042af859171b17992828271d16a4f4f114315fbdfef48343982465daca862be78d147d60205920000000000000000000000000000000000000000000000000000000000000000859313539a3393d23b41a8b687af66179d3b764453709956ce21ca3b2d71120b3aa08594d021f11c5dc481620b195eb8179417aaf20287dac9a45fc8c3ce1831ac55a90e85956d13d57975a56e8c3fe10dc27f48158bee3f3078be90e5d579f2420e9ae951e98596360acfbdc8198052e648eeab8b9ebaa57481be63f07bd1dd4919c82fdb4dedb985973d372dbedb70293e4299760f48e9d1aabad1b06ddb404a7d0942418227d6681a0598000000000000000000000000000000000000000000000000000000000000000085998a37b495700c11e0ca8b5dd849cdac821de8555affb64a506b71f58eedbe4048859ac3f04e2c1cf20ed888e9910caa2b4b58078c763b9d7a50c79ad41843f5fa545c859b72a9d7801aebbcf2826c2c628ba86fb8c49c9a51bd255d8517edc83046d04843859c5d2175c1a2959dcad8370a8cbfaf32dead1bab17a7357efb8a53634f4468eb48859d54c38686ec4a9976084739d51eb790e6fa09e33ba127f69f494d03d86dcdde3e859e96d764cd25672b847eecabb6cd335c52029f8286ffeb64ee248af1a95ce4d324059f000000000000000000000000000000000000000000000000000000000000000085a099a8fda106e982eb5bf0c0fb34dcd9bc3c13a459dcb18ab071c77264901e431285a18d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc485a2dc2a9d306de21a33d3d674714c181263e2633440c4aa8f944dc9514f474e629585a374bf6eefdcc46b2533057b76abd163b8602664c3f1572bd51bb9dc4d4c7dc82305a4000000000000000000000000000000000000000000000000000000000000000005a5000000000000000000000000000000000000000000000000000000000000000085a6f7ac1077a7da3f12eadfd4cd73837502000afe081b1c1023f2b60a4670d9876305a7000000000000000000000000000000000000000000000000000000000000000085a8e21660329543c5dcef03c1bb5d37503e602fb582eeb31fd22048b4dbd50eb62e85a93d372dbedb70293e4299760f48e9d1aabad1b06ddb404a7d0942418227d6681a85aa9410337ccfadd06b116f8b1c4860271fe57be34d7946214d9a6b174f6715318385abac131e938dfe23ae9c52c3c52aae2a8386ee7610fcd71d2ed9b5883ed4af6ec485ac3ff103204b17336288d2aa80a882dbbe997fa5453e1049658baf2f2ef94eb0d685ad8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc485ae58d91a318eeaa46de9be0c1535ef588016688418c335aa8d68b0b6ea22e1148185af8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc405b0000000000000000000000000000000000000000000000000000000000000000085b1446cf4cf33d93b306c441acac29849358fdaad9bb4ce8307d4851d8036f0bf6c85b23313cf2f48ab98117e2ff9262cf3cb6de0a42df04c5f5247eda10af65cb8882b05b3000000000000000000000000000000000000000000000000000000000000000085b4360acfbdc8198052e648eeab8b9ebaa57481be63f07bd1dd4919c82fdb4dedb985b54b45cd4b38ae81fbb92a63dd76b5fe48b81b0f8b762561c34e4b099d387deabb85b68925b616e64fd16b227b514bc9c00e70a82363caac2fdc0347e399ffb9632df085b732b90da7ca8fdba1c9697ae7e933061510dca4f56f166b3c86047d3d766764d685b88d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc405b9000000000000000000000000000000000000000000000000000000000000000085ba8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc485bb23353175abeec522f0bf4a654040152dc4e0aa20ff4b2d8a26129b21e2d557a085bc4b45cd4b38ae81fbb92a63dd76b5fe48b81b0f8b762561c34e4b099d387deabb85bd5183c25990b4c78d43b05078cdd04d10f4b44180bd921f2336e2e6d9d244337d85be72b37051d70567af8ae6ce151674d7cd89b0893e3bfbc247f8cd0acb9247e44385bf07eb476de388d8edafa764901cae812c6deb2ddb0466ae6b0a938edd5e33fd7185c0d30de54372133836617c6a11df002e4598547778b1a684c3d992713566da098f85c1e5c03dae88d6617d290194794cdeebcafc6e631a55d6c22410d485ce55ae2b8885c2280468ed12a3f4e8a09803908196885055c6148c0c98700cce8274b47fbf833e05c3000000000000000000000000000000000000000000000000000000000000000085c42f8bef04b3937e96047336f8a5672f92c5373c4bf2f2c1bc7122c42d49773eea85c596d764cd25672b847eecabb6cd335c52029f8286ffeb64ee248af1a95ce4d32485c6446cf4cf33d93b306c441acac29849358fdaad9bb4ce8307d4851d8036f0bf6c85c7fb51bd489157488bd2fe25b7bdf61f717bb8f8d3b0ee182b5f4632d775e3f2db85c88d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc485c98d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc485ca07eb476de388d8edafa764901cae812c6deb2ddb0466ae6b0a938edd5e33fd7185cb54c38686ec4a9976084739d51eb790e6fa09e33ba127f69f494d03d86dcdde3e05cc000000000000000000000000000000000000000000000000000000000000000085cdc267e4b27d68b73aed11fed5cf94b458877b4f042ef9fca74c0433f1fbf42b2505ce000000000000000000000000000000000000000000000000000000000000000085cf8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc485d0addcd9d5ca8819f697aaa95ec7bfd5fec93e61d463c6c332d6a1f54d25d6569885d1721f57c7d7fd2d33d6db121caac4abe6e7c4b439c9c5095fac904fcf742a683285d29229500d2ba2d22eb5d4156f1edd76f4664d96d2e2bb08971812412eb23fdcca05d3000000000000000000000000000000000000000000000000000000000000000085d4f77e8872baea205aad430d0c9d90b40ee701b56d50fe38109d65ef33b041f4a585d5b53c1a18f556f666e64a695479a94bdf46cc2ddc8f81b9d2e16f348f6836388485d68d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc485d78b72f81103c1547a99a5717e8148817b00330f15f3ef11d339f4d908e09e82f905d8000000000000000000000000000000000000000000000000000000000000000085d999a8fda106e982eb5bf0c0fb34dcd9bc3c13a459dcb18ab071c77264901e431285da59e931eddb57e9b0ae752116c3e8b8c0fdc26e2d034f87f1b94217a4dc44910285db77828229cb0cd24c2edebabc727eaec77c923730de5d5e77091545c3f81537e485dc9509669927db675f36c876383323d6930d518bd18bd80e37ae9672e0191415a085dd6d13d57975a56e8c3fe10dc27f48158bee3f3078be90e5d579f2420e9ae951e985ded1f0b648927234db7f353d14082d76cfc5a51904cd6bc4b2f5271555bec2a58605df000000000000000000000000000000000000000000000000000000000000000085e019ac486e3ccbcef035104c91436e9415cbe577f0fcb61f8e1c149f37ade8662985e15183c25990b4c78d43b05078cdd04d10f4b44180bd921f2336e2e6d9d244337d85e28d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc405e3000000000000000000000000000000000000000000000000000000000000000085e41d37a8e979a7eb2fbfc9cf986a12e4bbfd08922d5c35e34ba88b3f231fee768485e596d764cd25672b847eecabb6cd335c52029f8286ffeb64ee248af1a95ce4d32405e6000000000000000000000000000000000000000000000000000000000000000085e759ea88aa4c6eddc5398ce3048c42da1494107a925cc5e3024e61bbe0fffc69c105e8000000000000000000000000000000000000000000000000000000000000000085e9e5c03dae88d6617d290194794cdeebcafc6e631a55d6c22410d485ce55ae2b8885ea6d13d57975a56e8c3fe10dc27f48158bee3f3078be90e5d579f2420e9ae951e905eb000000000000000000000000000000000000000000000000000000000000000005ec000000000000000000000000000000000000000000000000000000000000000085ed8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc485eeffa17f364ecb5c8c4bc48ac14185973cc76ada8034dfd7fe275a2f7b0d3dd0a585ef8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc485f0857dea8906dc4f66fd82f5942ec7213aae30fdd7abc33f46ffd7ddefe3b6c36785f18d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc485f22b8eaf7b859d252fd2299e424605a73a5a7b9599813ae418ed01e53369c0044485f3ae411e6c0770d2c46808a9b29146b275afffe6b843d98a127c92d564d79483df05f4000000000000000000000000000000000000000000000000000000000000000005f5000000000000000000000000000000000000000000000000000000000000000085f602f386b42cc67ccb5a52e6bbc74bada8c1d19c81969df8a942f6e2d1d03672ff85f7539fd9de6ad6cbae88b8242b24ebcb39e0a4f261ebe84c0b7580746c846855f285f8f77e8872baea205aad430d0c9d90b40ee701b56d50fe38109d65ef33b041f4a585f9a184a838462c68accced2aca3e498182ef7a4798cdcd0385dda203c8eb5cc4b485fac785bf4daf6faa366816117bf9453807c866628f6d735f1f99908940aa0835a105fb000000000000000000000000000000000000000000000000000000000000000085fcc88fb3ae736e199b316a5d6343de70653a86d25dbfac44de5ddf101a432d10cb05fd000000000000000000000000000000000000000000000000000000000000000005fe000000000000000000000000000000000000000000000000000000000000000085ff3ff103204b17336288d2aa80a882dbbe997fa5453e1049658baf2f2ef94eb0d6a2ccd88d159db9f3b2c036c581e1e6f691e8cb886f8cabf87aa154a9009c24698d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4e117a6d339639435dc38c02d9393d0d990e4ead95ba1eca74e9906f08463be20c05f02b982bbb9d1a183917a7df92a894ed66b9d0348a9a3a85bbeec5cfaa4b0468a1c8be4a993dad59926b4561055827858ee4e5505db7854eeb08d0dfec0db446cf4cf33d93b306c441acac29849358fdaad9bb4ce8307d4851d8036f0bf6c59ea88aa4c6eddc5398ce3048c42da1494107a925cc5e3024e61bbe0fffc69c13d372dbedb70293e4299760f48e9d1aabad1b06ddb404a7d0942418227d6681a88b92f8a4df29457e2fed619b61bdb1e492e8ec47a136d32a68d2922141807be4d85b0b16ae3cc03c32e8fbb567fd2eb90c3ac661d6f641815c9387a01fb583c3ff103204b17336288d2aa80a882dbbe997fa5453e1049658baf2f2ef94eb0d624d8f6501ffbfb29927060a4daf343c8a61f61293f5a9c1e2c91a40a338cd9e507eb476de388d8edafa764901cae812c6deb2ddb0466ae6b0a938edd5e33fd718d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4277026acf47587a3adeb234ff278b7961ec21fac6bc6d4caac442f50c5441b8fc88fb3ae736e199b316a5d6343de70653a86d25dbfac44de5ddf101a432d10cbc9f652cf5020dcc7e42d7065a1e6c87c36785e9236e760665130a28de6a0c67f3dccf1aaad5042e3fe67575874f5e4dce1b32ff4239a90fde71203a3baa1b24e82d6d9dedbdcd876a548368654d587b00f67d5757cda17f80851c1a5427c4ad1539fd9de6ad6cbae88b8242b24ebcb39e0a4f261ebe84c0b7580746c846855f2c88fb3ae736e199b316a5d6343de70653a86d25dbfac44de5ddf101a432d10cbda891ada2ed8a7f1b3f3e24f23a87f6c6b9d4a26408ea1ef6b882b409924c0e31c1d9079101657ddf423569d703f97df99e6a71ded10c4dad4be1831c74ccab6ea669c1d46e07f43cd7ca2c24a1a820caa663774952c56d3477f2c858c8392ec60835134235958a6c2a19433515e7550ba904dead97afbc1947ee799cb7b2dc33d372dbedb70293e4299760f48e9d1aabad1b06ddb404a7d0942418227d6681a20459a413b1bb96ee64946fd3f9eed27bf65fc10c92f7cfc9266765220c07e962b8eaf7b859d252fd2299e424605a73a5a7b9599813ae418ed01e53369c0044496d764cd25672b847eecabb6cd335c52029f8286ffeb64ee248af1a95ce4d324d1fb080076a170b469b9ddb592f18260e0dc1533007d3472dd3a910cc89fe450f77e8872baea205aad430d0c9d90b40ee701b56d50fe38109d65ef33b041f4a596d764cd25672b847eecabb6cd335c52029f8286ffeb64ee248af1a95ce4d324e87596c450e9650e7ff154f7dd6230940b120ab5000332018e15c3126bf711d1446cf4cf33d93b306c441acac29849358fdaad9bb4ce8307d4851d8036f0bf6c9509669927db675f36c876383323d6930d518bd18bd80e37ae9672e0191415a0408c091424bcd7e2569675eca4ec70e2edfd65f83c73ac574269fb14b43242b29e89f977bd47dc735928681bb478874fefcd27c6e517dce3cd4fd2b3a651105e31e81cf04566a3844c2083b500f3f61d2f159e6fee2ff653557e1b0ab14bd8b1857dea8906dc4f66fd82f5942ec7213aae30fdd7abc33f46ffd7ddefe3b6c3678be7fa7846ae55fda1db6d915b69aeda9af570a6e53867836c74ba11de8888d47b79568ff4bcbf993a70f3142a4499e61ff92c81798c6ea17f25b9767691bc78cf05e8f72bc7ccf6f58f6ab1ceccb89c17fef8616919f105363ab7c7b3c8d757930911f23911b7d89bc5884d1ced8ffdbd4cf9aeaeac4af54021b5b16739a45d8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4f77e8872baea205aad430d0c9d90b40ee701b56d50fe38109d65ef33b041f4a52f3062ee82555dddb5a87c03dfccc8ac0b602d9a3a5224fc497de9f7d07cd6403ff103204b17336288d2aa80a882dbbe997fa5453e1049658baf2f2ef94eb0d6b6681d3fe94a1430f3c9753fdb8d73d3d3415f0c4beb2bfe02853594124f211096d764cd25672b847eecabb6cd335c52029f8286ffeb64ee248af1a95ce4d32405eacddbd1a8ea82615346690ea9666c1903484dfe0573a4d82b2b526b1e8804202a300e955c5c06274d2454723c283f7a9b61d8c58fcd52c21465cc8c903f9623874f7645e663e474bc4de2bc5a170e93899da3fa1c3cd11639cfeb7c3ee8d57b79568ff4bcbf993a70f3142a4499e61ff92c81798c6ea17f25b9767691bc783ff103204b17336288d2aa80a882dbbe997fa5453e1049658baf2f2ef94eb0d68d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc445ec65505ce0e6c2e05a7aeca61383584f05ac4a356d8334577eadce3c586990789055c154a49c8da3fcdb02a2627c46c4a8bf02f73889d64b1faf40b396c64a3ff103204b17336288d2aa80a882dbbe997fa5453e1049658baf2f2ef94eb0d6980e35079b74764ea492454ae414179451a5d4e21abee657334620f9a0d79c438d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc407eb476de388d8edafa764901cae812c6deb2ddb0466ae6b0a938edd5e33fd71addcd9d5ca8819f697aaa95ec7bfd5fec93e61d463c6c332d6a1f54d25d65698ef67b344be80481faf00f9dec31c5105e284a32b8430da0e257043245bac6f17360acfbdc8198052e648eeab8b9ebaa57481be63f07bd1dd4919c82fdb4dedb972a9d7801aebbcf2826c2c628ba86fb8c49c9a51bd255d8517edc83046d04843d8169f584bb9bbdfc025a09b8a12a3a04b3481f9f55b9acc089b24fd819af341946a039ab6c3074909797999043e545c65a86d06c0f785635683c24b050d07af9a8e5ed9ef2b6466d56d1bb7211a6020116e2b7b1d4fef91745b03f23c5f9d8ee5c03dae88d6617d290194794cdeebcafc6e631a55d6c22410d485ce55ae2b88d87d4a4da6396aa0a3cf1cfc24a7272f343e2657f26370091e7834958a3a1f9a24d8f6501ffbfb29927060a4daf343c8a61f61293f5a9c1e2c91a40a338cd9e588076cfde310e31e16c4f8aff7a7b4a10a0b5e45ad82bce9f5e8965b9b9c5cc4b6681d3fe94a1430f3c9753fdb8d73d3d3415f0c4beb2bfe02853594124f2110b6681d3fe94a1430f3c9753fdb8d73d3d3415f0c4beb2bfe02853594124f2110269fe13a0c3957d1df74c04cc39df1765a5c9727b8ae01855b1f6c182cd0eda2d15920784eb1d660ee41f8e24b1df77a1d746eb61662499858448fe6c7cb668a4ddfdf605f03cf7f3df86267117cf4371774bc1ed0c02ca762e852d829abe45acf05e8f72bc7ccf6f58f6ab1ceccb89c17fef8616919f105363ab7c7b3c8d757108496d8af2a1f437e91a715817d579e4aac0191745f9fd846ed5729c7921e61e3877eea23e9960b8878a79214e3fb2e09495194f55745cc6e5cfdefeda326037e5e931aa6757bc66224cd41c49b6eed86c5d161239e5516417cb8671150c70a4b45cd4b38ae81fbb92a63dd76b5fe48b81b0f8b762561c34e4b099d387deabb07eb476de388d8edafa764901cae812c6deb2ddb0466ae6b0a938edd5e33fd718d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc423353175abeec522f0bf4a654040152dc4e0aa20ff4b2d8a26129b21e2d557a0c6283730495c54d80cc87cef1908df925cd2696c688f7011f6138b8bdc6762b836fd31ac1a2857b21472bd767a8d8fcf16b5d29b22ecc1d43d6c4f79457e367c406465cb8953a5d810c82f094fa1bc2f324edea190670d893e687ccb59beffd89467b52a3e19a584f5a52d9ddbab0589d45543a0a12fd3726ff0cac9c3d36c275183c25990b4c78d43b05078cdd04d10f4b44180bd921f2336e2e6d9d244337db4c418d3a3ee176efa8c6098430f643d10e947cbd622674632ee38c18570df5b8dad609086685cc4e431f03148a146413b745ec359491b04e1029e846325d51578be3ea87602ed4453b66721bfe2756bc719023f2265e00bae8e17df88edde2397f3baca1df4fed2032584dcbc78a5a6885c43f9ab8b69a7cf3f57fefc042d0e8b72f81103c1547a99a5717e8148817b00330f15f3ef11d339f4d908e09e82f98d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc499a8fda106e982eb5bf0c0fb34dcd9bc3c13a459dcb18ab071c77264901e431250435d0bc48c3a71824424988827994bac2efe1f82527ef4949abf494debed468d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4dcbdf654654d591dd656c7d550a41310d781822ac709ee2ece5121febdc31f84cb16b297e48177270f6c8323a7bda2cee2948c14f825a752977022c5110c5ed37b79568ff4bcbf993a70f3142a4499e61ff92c81798c6ea17f25b9767691bc78e3936baa50e26259f5a42d0a1af339a0a982fd934060bf5fb898d086e7f927d2c88fb3ae736e199b316a5d6343de70653a86d25dbfac44de5ddf101a432d10cbfa18da0f8a00fd7c66caec0c8d4eb35609598e5b66914618a5f9a48c5d19ab576d13d57975a56e8c3fe10dc27f48158bee3f3078be90e5d579f2420e9ae951e9ea3db32546b194c18b9ccbd7db2d89090b3f0320c5faf007602a874f4bf8c5b17cda59d40d45197ec84eab58a157a517146c9402e64ad512371120c54293646435ea6e2b2efe1b97fe63de9d2e81e92e4c07a83530b4951d266f3dfe30d19a78320c78ed806fb913e0e84dc463da44616f68d36cfee1a0b208cdedb786effe11446cf4cf33d93b306c441acac29849358fdaad9bb4ce8307d4851d8036f0bf6cf77e8872baea205aad430d0c9d90b40ee701b56d50fe38109d65ef33b041f4a554c38686ec4a9976084739d51eb790e6fa09e33ba127f69f494d03d86dcdde3e07eb476de388d8edafa764901cae812c6deb2ddb0466ae6b0a938edd5e33fd710f12c34359ce72692ab276e4158edbfca4cdefa57d2fa0b9383846855ca305f34b45cd4b38ae81fbb92a63dd76b5fe48b81b0f8b762561c34e4b099d387deabb6d13d57975a56e8c3fe10dc27f48158bee3f3078be90e5d579f2420e9ae951e93d372dbedb70293e4299760f48e9d1aabad1b06ddb404a7d0942418227d6681a5c883bc8fc3e2baf51c6f32ea29ad6f33b0500b6db7324550d0afe1d3441bf5159ea88aa4c6eddc5398ce3048c42da1494107a925cc5e3024e61bbe0fffc69c16bbeceacf027e08fd491da8ba3e80ec37a8c6bfbe2faa984d852f5ab67dc345959ea88aa4c6eddc5398ce3048c42da1494107a925cc5e3024e61bbe0fffc69c15569bb6a945423c99e681a87188866eed7a4b22718707cc21e15416497df5a82580b42b6c3c01dca9c73a32c0aa2fa55e21c91c513740d859ba87ddd07de29c7cf05e8f72bc7ccf6f58f6ab1ceccb89c17fef8616919f105363ab7c7b3c8d757aba6ade26c6f6a22eff51f824bec731133193bdd730f8999d59b10bb25d6838039731ca31b499f95ab425f1c05922887d770a371d02701e5b96e3ade15aca0722a104c2bb6c5f0ab185ecd428a0a3e3e7371ee1b5966eda30f2b540961bec2e43cad8141df930cd91a1a73898dd1bb594f2ba26edddbb6b24a7fc7ee3d9862eb8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc48d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc407eb476de388d8edafa764901cae812c6deb2ddb0466ae6b0a938edd5e33fd71b6681d3fe94a1430f3c9753fdb8d73d3d3415f0c4beb2bfe02853594124f211036d2164cbe2e350bf23d565d8de00343c04bb26f66d037189c331702f4269b7bc2756adfd08e2fbb1faa40025b62531eb4a4445364e1e0924d9db710af76f1b0b11350d3643e811f9b3ffe87a7875035534ce32b3090b8de9aca51245e2a2d0c408c091424bcd7e2569675eca4ec70e2edfd65f83c73ac574269fb14b43242b2ea669c1d46e07f43cd7ca2c24a1a820caa663774952c56d3477f2c858c8392ec35ea6e2b2efe1b97fe63de9d2e81e92e4c07a83530b4951d266f3dfe30d19a78539fd9de6ad6cbae88b8242b24ebcb39e0a4f261ebe84c0b7580746c846855f2338714c3c754a785cd3ba71f077e7b47161e86eda8f45c9048ff4cc1c01b46e6a7da6152406d4190671b387928c1a93bbe8b4acadc6a63d3468d5b686611eea44b45cd4b38ae81fbb92a63dd76b5fe48b81b0f8b762561c34e4b099d387deabb4d85b0b16ae3cc03c32e8fbb567fd2eb90c3ac661d6f641815c9387a01fb583cf9d1e2a410550f34d0a20640f79e797ed4021212be78d7611e34125f6df042af71b17992828271d16a4f4f114315fbdfef48343982465daca862be78d147d6022fb648426438b63821cc605ec7354c3709a787fc518ed1e3907eb23f0649489113539a3393d23b41a8b687af66179d3b764453709956ce21ca3b2d71120b3aa0d021f11c5dc481620b195eb8179417aaf20287dac9a45fc8c3ce1831ac55a90e6d13d57975a56e8c3fe10dc27f48158bee3f3078be90e5d579f2420e9ae951e9360acfbdc8198052e648eeab8b9ebaa57481be63f07bd1dd4919c82fdb4dedb93d372dbedb70293e4299760f48e9d1aabad1b06ddb404a7d0942418227d6681aad3510306cc6e51b1a3a7940332d5fa657fcc8ecdbbe622e83388ec83ea5f3208a37b495700c11e0ca8b5dd849cdac821de8555affb64a506b71f58eedbe4048c3f04e2c1cf20ed888e9910caa2b4b58078c763b9d7a50c79ad41843f5fa545c72a9d7801aebbcf2826c2c628ba86fb8c49c9a51bd255d8517edc83046d048435d2175c1a2959dcad8370a8cbfaf32dead1bab17a7357efb8a53634f4468eb4854c38686ec4a9976084739d51eb790e6fa09e33ba127f69f494d03d86dcdde3e96d764cd25672b847eecabb6cd335c52029f8286ffeb64ee248af1a95ce4d32499a8fda106e982eb5bf0c0fb34dcd9bc3c13a459dcb18ab071c77264901e43128d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4dc2a9d306de21a33d3d674714c181263e2633440c4aa8f944dc9514f474e629574bf6eefdcc46b2533057b76abd163b8602664c3f1572bd51bb9dc4d4c7dc82301f4d857a6ee214544540e374a5575d37b2f0eaf177a1bcdabedd137a830bad5a1124b208ebe028ed650906ebf06869fcd042840854d3ceb4431797f9849aec0f7ac1077a7da3f12eadfd4cd73837502000afe081b1c1023f2b60a4670d98763701b3a267159337337323c73f0211349aa08e2a34cb638f4c870c52ffda2dfeee21660329543c5dcef03c1bb5d37503e602fb582eeb31fd22048b4dbd50eb62e3d372dbedb70293e4299760f48e9d1aabad1b06ddb404a7d0942418227d6681a9410337ccfadd06b116f8b1c4860271fe57be34d7946214d9a6b174f67153183ac131e938dfe23ae9c52c3c52aae2a8386ee7610fcd71d2ed9b5883ed4af6ec43ff103204b17336288d2aa80a882dbbe997fa5453e1049658baf2f2ef94eb0d68d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc458d91a318eeaa46de9be0c1535ef588016688418c335aa8d68b0b6ea22e114818d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4067e3f5847e4fa8af51aa99613399748f1c22464555f33aa5e43a7ef6a46211b446cf4cf33d93b306c441acac29849358fdaad9bb4ce8307d4851d8036f0bf6c3313cf2f48ab98117e2ff9262cf3cb6de0a42df04c5f5247eda10af65cb8882b17cda6768ff50f28c505826804efce0b4828548842b02bbd3ede2bc80e9d69e4360acfbdc8198052e648eeab8b9ebaa57481be63f07bd1dd4919c82fdb4dedb94b45cd4b38ae81fbb92a63dd76b5fe48b81b0f8b762561c34e4b099d387deabb8925b616e64fd16b227b514bc9c00e70a82363caac2fdc0347e399ffb9632df032b90da7ca8fdba1c9697ae7e933061510dca4f56f166b3c86047d3d766764d68d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4cbd7afb345c89c65e2a313d5445e1cfb89a077c72a07accd9f7242e729aaed688d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc423353175abeec522f0bf4a654040152dc4e0aa20ff4b2d8a26129b21e2d557a04b45cd4b38ae81fbb92a63dd76b5fe48b81b0f8b762561c34e4b099d387deabb5183c25990b4c78d43b05078cdd04d10f4b44180bd921f2336e2e6d9d244337d72b37051d70567af8ae6ce151674d7cd89b0893e3bfbc247f8cd0acb9247e44307eb476de388d8edafa764901cae812c6deb2ddb0466ae6b0a938edd5e33fd71d30de54372133836617c6a11df002e4598547778b1a684c3d992713566da098fe5c03dae88d6617d290194794cdeebcafc6e631a55d6c22410d485ce55ae2b88280468ed12a3f4e8a09803908196885055c6148c0c98700cce8274b47fbf833e1f1904c67629a2ccd915652492fba8a7b0b3466e801c9f9f68fa0f791deee5842f8bef04b3937e96047336f8a5672f92c5373c4bf2f2c1bc7122c42d49773eea96d764cd25672b847eecabb6cd335c52029f8286ffeb64ee248af1a95ce4d324446cf4cf33d93b306c441acac29849358fdaad9bb4ce8307d4851d8036f0bf6cfb51bd489157488bd2fe25b7bdf61f717bb8f8d3b0ee182b5f4632d775e3f2db8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc48d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc407eb476de388d8edafa764901cae812c6deb2ddb0466ae6b0a938edd5e33fd7154c38686ec4a9976084739d51eb790e6fa09e33ba127f69f494d03d86dcdde3ea11c99cd36dd47841164b712bd078a2b97909c0323bef7f3b67f52874bdaec97c267e4b27d68b73aed11fed5cf94b458877b4f042ef9fca74c0433f1fbf42b257ce692c744301de4234afa396153b8d274959c8dbbdcb03595c8ce159ff82f178d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4addcd9d5ca8819f697aaa95ec7bfd5fec93e61d463c6c332d6a1f54d25d65698721f57c7d7fd2d33d6db121caac4abe6e7c4b439c9c5095fac904fcf742a68329229500d2ba2d22eb5d4156f1edd76f4664d96d2e2bb08971812412eb23fdccabdedbffcd3d465f9e177832717cfb24887602e515c0b9ff6c324dbb07414c364f77e8872baea205aad430d0c9d90b40ee701b56d50fe38109d65ef33b041f4a5b53c1a18f556f666e64a695479a94bdf46cc2ddc8f81b9d2e16f348f683638848d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc48b72f81103c1547a99a5717e8148817b00330f15f3ef11d339f4d908e09e82f9d5fa0699eb1eb6d8354ab542fb17e0550a3401f68a618e12bb8fa83d4e00edd599a8fda106e982eb5bf0c0fb34dcd9bc3c13a459dcb18ab071c77264901e431259e931eddb57e9b0ae752116c3e8b8c0fdc26e2d034f87f1b94217a4dc44910277828229cb0cd24c2edebabc727eaec77c923730de5d5e77091545c3f81537e49509669927db675f36c876383323d6930d518bd18bd80e37ae9672e0191415a06d13d57975a56e8c3fe10dc27f48158bee3f3078be90e5d579f2420e9ae951e9d1f0b648927234db7f353d14082d76cfc5a51904cd6bc4b2f5271555bec2a586a18c43ca1e096e8231a6ebda580b9af18e15b8e5f14cfe91777893e63cae2a5319ac486e3ccbcef035104c91436e9415cbe577f0fcb61f8e1c149f37ade866295183c25990b4c78d43b05078cdd04d10f4b44180bd921f2336e2e6d9d244337d8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4681ba2430452fd00fc8346e3db84e6e4d40d0b136a9160f863f8b9c3de2acaad1d37a8e979a7eb2fbfc9cf986a12e4bbfd08922d5c35e34ba88b3f231fee768496d764cd25672b847eecabb6cd335c52029f8286ffeb64ee248af1a95ce4d324ddb47b06285abb7575e2576af748153f07f4f6a096c52856395ed5661010a87c59ea88aa4c6eddc5398ce3048c42da1494107a925cc5e3024e61bbe0fffc69c1fa8c53795e51bb0522bb7b947c64290dfc1440b8516092aed51cb2698ab39bebe5c03dae88d6617d290194794cdeebcafc6e631a55d6c22410d485ce55ae2b886d13d57975a56e8c3fe10dc27f48158bee3f3078be90e5d579f2420e9ae951e98fefd06730d13fbbd7c6b5aa5b3a56f7ccbbcfae0dc625257d98a98491baca3c85ea049f64d0e93775715f921f30ec02b8adb525c53418ced4a9d47ae61cb90e8d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4ffa17f364ecb5c8c4bc48ac14185973cc76ada8034dfd7fe275a2f7b0d3dd0a58d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc4857dea8906dc4f66fd82f5942ec7213aae30fdd7abc33f46ffd7ddefe3b6c3678d3e4d6debba1d52761f75ae5438dd5ad8be7e4668093e95ca96df68f84c7fc42b8eaf7b859d252fd2299e424605a73a5a7b9599813ae418ed01e53369c00444ae411e6c0770d2c46808a9b29146b275afffe6b843d98a127c92d564d79483df987c5e6f4812ff078e3a8c2a5b408da223c9786273e307c37eae3c0735c2ed7f1ff6c9f7a4fec8b343df7bffc3d29e626ee6c7292c40561f02efbe3c4ca817b602f386b42cc67ccb5a52e6bbc74bada8c1d19c81969df8a942f6e2d1d03672ff539fd9de6ad6cbae88b8242b24ebcb39e0a4f261ebe84c0b7580746c846855f2f77e8872baea205aad430d0c9d90b40ee701b56d50fe38109d65ef33b041f4a5a184a838462c68accced2aca3e498182ef7a4798cdcd0385dda203c8eb5cc4b4c785bf4daf6faa366816117bf9453807c866628f6d735f1f99908940aa0835a133ae7433291795b912c72a4cd9c0e07818be094a9953cec23e7402b04022edcac88fb3ae736e199b316a5d6343de70653a86d25dbfac44de5ddf101a432d10cb8f6f736485f556979422eb935b3d10a6471e68e60b23b1f98bb0b4726a55749f7a4702fa5aca065f7701bea64386d5e84c88e6e8bf89101225dccc6fccc32a6e3ff103204b17336288d2aa80a882dbbe997fa5453e1049658baf2f2ef94eb0d605000000000000000000000017d94908671f2542412cf496027a77cb86d4cebac31327d4894abc530fdbeeb7fb32c06e486de01dc71a1571d9005e6e6b5a136ac2b04200e6cb8c004a17513a576b6a8779b4448f3db44185ab8702a37c2f4a4552010848edd5140d103452cb53fe180923ca9fca7acb156429c9b33bf336902e4f6a0fd696f32ffc95cabc393c54275cddb4ba290abaa4b6a2e3e86a3b0e5a415816f60dfe6aa91606305cbc94d9908c228b61fe7e49a471deed125e20477a89b6b2c8bd83ae8ea352e5b259a6d9620c9294c0832117478ebd404726f2f22ffacec362ce146b96f93638a55e4e4c85910d4be55b00a711e452ffa84a99a6ae59ebf0e403283ac6a1f02f5ede60e257459bd2e99b601634094002a15dd02ebf60f230c92662825e38e1cd9210ca410da1933c0601f2711d38bcc2cf874d6dfba135d8f08b8bc1b5bfd6544969d33c68373eb23be4fa02814a43fe0dee09e18c8fb5ab59a14cedef1b19b68efaa9082995c6c76072f7ceb1d5782570feb56796059a260838f505b1a7a5a8f370fcec5a9399ab12de437e8bc725bca99652a705ec816f08a8e74a305c5ac81aae1569732463664c80741d98dc17ad50531a944662e8bd695152d15a2feff7770049d7453e1b708cafb787a6ef721159e69bc7560d9714f8e4e0d90fdbdbb6bc22082565314e2300da5402333bda5f4caefdb53930cb9c3fdeca2cf324a096af60f11ca8c9b058413f00c404a775a4baf0e6046d918df14f040a3e0ee3c7221aeb9c108d392f06f24e717a50e36452feb13c8ecc845f2676dee90d93513f85417e7b3c0f10334e4f02af274cf812fa40ef6795f16e06c9cdb6e37a350f8a651be09e9c291218a062a0e27aa1a0412778d799e6dfab3b780704efde9e86037384a195cecee2182406a790775c1c1f1b68f6a1f015646b9dd00339096b61c297c4e2f256aea70afa06f920005996b9324b2c8a22c2070268521d26db8d187e45007a79858848a96f55998c82469c13bc2ee7a68e8835f49d16ed0bcf8f115176dd9fd703050500000000000001008300e360c5eda640ec1376c947901db444319c3dd543e617cb3ee89e58a4bdb18a7f8101ae43aea35a4ed1b7630d072ef8bdefb03545639474ed61a49a7d0620701523428302e97886664c2ff7c27eacb4a7567df96c6496ff69f36ea192ebb5c3279ee896f5820352d40b440395aeb6e780a92e0cfbc62a60585fe25085ee4c6a305c279ed087398204bddd70b323294a658a4fe120960f0a390040190e445f2324f1902d0e3f8897b38205847e156226a8c287f488d52c119039530f989ecc066eb804b84fadaff08bd88f8206de2133e34296c7a3af9ad3da40ab3e1916eb328242706a3f0bba9a4b186beae98207a665ebacb7f0776acd5df1a0e93c9ad10f67fa16584b033e073a3fdf7c3d372581080b0c00daa83b1000982a3c90a2f28f47b25f8e815b593d6fb2358d012b00d0468209506a9658b7dd68ca82228ddd0ebd31225425837884e87ad5d54787b45450aa4e820a14497fc51865215d8f410025cd9363b8d3cda6242c977f6809127ae58bbb9115820b2f34456381bff4e44d51c17128a5463c57ab87288ddd6f300951ec0b14ace0a8830c21fff1939ec86a59ac68c9492b61f85f684be61c33c5d338e3d00b905a859116820d73961c32a92817cb58a8a4054e973a3e35c8207c424a2c572060fb52998ef88e820e34048db6ddc97841352df36a26c52af9e26aa8db202feece8d7f060b1ce20fad820ffa5d9ccfcecefa034288473c8ad585088cc6606bed9bace3ece9964781d129878310b9b639810304ea5f21e6d1c6743e8a05c86841203451d4f182a90d95693b73068311a3f0e74ca99efa8c0e19da94f699eee1cf1ba27201d973631fde944ff8514ee482123937f5b4b68fbc6c3e6077a943909dfd15dc3afac6b17f5831ffe5d13ccb44838213b2d912fdb328b427dcb47b0db39423ab36a3e5dfd749d64cb50cdd7ea99a829a82140cd56cd635e1601515f17c3f1fcd8c765f284294200d8793f00c919926b1989e8215a888cb33df904850718436af9cfd3aaf60e5d7ab121375fb6ea9456ef7313aaf821655dc24a99cb2477a6a5ae70350d073f6efc48d92533d40db5d5859c340acf8cc8217e8174330b7851b636081397c89c9b299b1cd53e24b3f3dd1b84b08fb4dfe58ed8218d63c7a659bed5a58acc29f491f7d9a5b8b1e7169e6f38b4100e9d17eb852a37383191c7809a180f42edced9875723b78ce1dac64e9df00b2a721ac92c7ed29910e81811ac0cfad385d6f0d7d5230565ebf80aa7dbef72df806a678fae8c723bc0e582317821b1326ca4ade974b376473babc70ab201b11e49b5c3f715063932af7ca3211b454811c842af21aff673d11d14f4e31ee3cee55ed85b8782f6bdc09cd8fe28df3425d8d821ded2be839d095c204c3727c113e66483043447e0186a12c2d3d5c3318889c9281821e121197fb108e9128555d825ad3a03c586e3834caab5e1ecc11cee1b49c599116811f4569ed7d8390092f0a1dfa8e344ad1c1f585bc19165c963f027324cfc57a08a783207fbe2f1deaed16edb3a56ef1da34155ef7267b6aaac5e4e5a7cea064df1ecc8b822183bca637daac4279922dbe87a539778fb0c95da473a04b75f08f4e8ff6194783822248055a8594bd4768a8490c5bfac8b04d4a17bfb4b0689e50716f4e70222307eb8123c27f2fc8420fc099be0396b14f51089f4858c0045d6f72788c57451ad4f0b39c00000000000000000000000000000000000000000000000000000000000000000000822554a4cf501533c4ee62e4a94e55ae9328932b367132c3c7ab9d16ba765c0be3bd8226aebdb77a8fe96b15fab789e0f4789b21f45f19db9468bc8327371651a6bd2e1a812754433d27eaf12efbc4c927cedf891ad0872841c92bdff7779d5880cf05b661f6812800bca5e848bf6b4398143f48d47de13538071f2b67dfdf05b3fcd7db439a22fa82295d836f03592dde1070915d3e5f469dff5daa9159f33c05ad56289a4ec4a44e94832a732f9ff93e248e5b121fc5d6f84afd7eaa89f64564b6584018d77deb625c0011822ba6dcfa388727eafd978bcd548897ae975084f6da3696db45ec5f5e398e927078812c2026d16684bc15b6f58800f110b28ccc9a8899775555c25a3f481f665fbf1ae0822d4f6a67cc193a541829c543377bbef68d5b2ee26150e1fc47106440bfefb7370700000000000000000000000000000000000000000000000000000000000000000000812f6aa197ba5dc3d4adf5a3017069afbbce6c609df407c4e44c4aee2f2c93d0700f833093110f13c2b0ce217cef70e6cd678c58a8acc0e8894c1bab710f70bfbe00813182317f0205f46f0ab80f7d48854960664e94171d5b265ee5f8914afdbc6963c9b3d982327a55937ddef0dc62d6700fbd61407fe388090253981c445ee765c4b45c1995af813333b1e83a321e3ff5bffcc4e37c3fac6aa8786fedcc2a4de7bee75b2f114f6ca7033400000000000000000000000000000000000000000000000000000000000000008235b8346f5814e19780d17385ecb30078282a7ee82c8c33b4d3c71caa102d8aab92823661d351048142565fdabc798f47d185d2f91b816903517e9bc97935d98315807081370f9676045d477fffb9055d77c4ca7ea65128c9812abdf459169371040ec83df48238611d1bf088891fd587cccdd43a0924af4039b7be70ecbce01e0a27420c0db49a8239fcf403f3e3104e57ffb090919f5a6123bf17513198ea7b64440a6d2557757b85823a2eb3f26a6bf88f265a6610cf5060bc59ec076e2b61a81431e7a171a30e85edfb813b9dec67e051ef9ad686bb322065b3b189d4db0de2e8a1e40bc35b72d24dc3fae9823cdd97ad78c001193a7da12df0864a634d7701f59a6f69ecb8d4dbe958a4ed0fed823decd4a78510500e3c061a549e9bc233984cd334e9ccff2cc9cd9170a5a0decd02823ee75fdc45d258c046f411da1503527528e4709dfc71fe9317efb562ebdbdca61c823f27cd3ec1aa76227a7f3dfaef2915edc0ecdf3408d7ff70c4de8e188d39dd48ab82403a23710511c6ff27216d9b55cb58df887e8cd187efcbaad65db08aea2067a0c98241b1084a869872a650229e4b2aa922c601e991d4a203b419e08c24b8f2a35cd25582421f2a0d96f7027c6122675b1760e9b1aecfa5932581de038a86075df47ecb623981432724331b3cd37465b561fbf10df82122fa248114a364da5b238ba9fc142434358144c20b0245bd1a29b0c0e326c9f0564e351d611e94bf6280ed3cc8a086535e110d824598a39da2468e2de2c799da55a93812630aee04c8596d3d5e04888b7f3425381b8246898d07ff0aabf102c0a5a5f56083bfab9d9c6ad3d0975e3efd523a40ee91f20d8347786f3a17e63a7a6479178c6170d0adb53007dc45f53d832d636dadc57cd1f36681489be6279e448744ffec1b45d9f18c790974ec84bdb8eb529ee47b01d822d75faf83497e74167cc08d17a1eb7d517dc8bec62329eedac9bbf39399c3ae67580317ac08824aa8ad5c3a4f6df4da468cd233941f8e4d4e643882f1f9f95f7c71ecde3376e966824b299d1f7b8049885d0818119b75c31e214f9e209147cb876575cedd397a2ad65f00000000000000000000000000000000000000000000000000000000000000000000824d46f275c2a629c24ac2e8aa3ffa1c7b44e50b4d7f3f6826339c3e472424ed0310814ea8e7634ee92b77833debb3a8ef6818d6bf324aa40025ba510ae3d9542b83b480824f4b70d1f4e9538a41eea9d3a23aae7e778d49b7cd2d3e09ab8fe5c02a3667a31d82502b56a96f97c1a308d174743e90a9ecd51bace3843f118280de6d98567ccbef338351d9ab69299c8032921e632cb2ac723893b7b50d6cc859fe1b9f41238db64f404e00000000000000000000000000000000000000000000000000000000000000000000835304a1db88de37aaa85c8e0d99b0dbf94fd80df1a3c5b733b0f1e93d53228d34ea000000000000000000000000000000000000000000000000000000000000000000008255e49d2a31fdadfd2050e5cc3288e389471af99084c5216ea1ec05f2a07b8ae03282562542596e5564b99a8f8124ee160eb2557da67e99785a8e237b17ae700caaf75d825739f99521b3c0bcc60797a02c013cb415c876cd1dace343208ecc99f04769995b8258b2307921c750151565738141d0fb75170561350ff372c2bdbb48b82add6ab838825959b9eb6f90737841eb819b8ca368f42717d53a7b3d6bf311e9411db168c36208825a13e02ad8420a371cbc09e17a323853f2e7d7a205693ed736d9d4a389b802ff12825b6dc0330c0ff92c756274da588c7b194e23ef0b388c823f6fb74dcff24635ca3f835c20aef4fccf151060fc65b3f9a2a9790cda6daba9cadcf88564dffbc931bcdd11825de73677f87e5654473ca35ca8fc7a9d86ce00d72957d0857ae8f84d51d2b0fd98825eb813c06953be360759798dda03c965f3fe7d9681bcac564122ea746f3b6b471b815f1f7ce9f6efd16fec677173b31f34a07cdaa9b4426f265b0d96c79c32ee3a003682609ad73cf0a9761ec06b565cbcecfefb7088c91ff22985ce39838e3b5df9340ff18261628cd32725222e356423cea34f3875f28ed7eb20414380eac417155fad9f2ce7826252d349f722c7f2f43af1a43f1a7aa3e85a75ec4efaa3500143632875e3a7b95f82636d11abedaddc417c101c10746464333909f5dca4258aee0cac8a7b3982bace708264db7119eb983810714143199dc3d9a9b37b97af2261ce74ddee6dbaed70b05ed08265338c81c314cacc6568feba800cffc13d4d2296fc3be753d3a3e74392532d20038266d1ef192e028ab6dd9e690a33e03d5d418ae14781bf5aeec7e7258147d9a2d09d8267045c231d19f98c0976822434763111145f3a02bc6f9217e069bc0c848c2b5109826840fc233be77036e4dee43d830be82357dfc878c3a362840448149f6818e4fda2826973287c4dbcf8103e8a7158b6f4a493336bd08217f4ad57b902b93efd5caa9bc4826a8758f9655164d0a075cd4efb8677079f3377e1f9c415d9556af1c9e75c72fd5300000000000000000000000000000000000000000000000000000000000000000000816cc3ad042ac9892fae31c11db40283ae8865b75276aa5d984937eb6a5093a0bca2836d69cfacab64781e312c275cd5492bf79b93fd0f6ce61218efdea856d7a8dcd873826e51370bbd347eb2f4f1166278a4037810a10e5a0f7a9bea2e5b48ff8b5cad92b70000000000000000000000000000000000000000000000000000000000000000000082709be7297742d4cbd68f480c848f6a9185a2fe351be857e4838effb099aacb7fdd8271e19931dd22a08d366c4343d53f66671154e546e38c0e0404098b9d6c4c1dfd4a8272d87cf40a9b27d3865f0a4329d814a2591e2aeb9165119df4ec877bbe5459ba2a8273fe465bd65887a6089f706359381f3daadf262b5b3dab938ce7727d9a11d939c78274d95828957a306c8c88143867ee153952668fbb2f47c873936cd456794f0dbb278275d76bb3bb9000d3d90548368f903e33cd850f94508ce7a5db1ae1a7b4a139ba44000000000000000000000000000000000000000000000000000000000000000000008177741b8b3be89de71bb8e71b38a411ad18201885c3a561ecaf430d74d4af5a1de8837847bbad14da47bbab9966c4679b4e1f2fb4d8d262fb0c8e6d82239709c8d8499582792a700ac4996b57998f5c1f3b0a38518a054882e0bec107606a1f99b60323c6a200000000000000000000000000000000000000000000000000000000000000000000827b54c3894cf4bf6aad2c0171d094584359ac1b5f23f280cf9373917f9d7bb8d440837cb75dab7a049fd96171c430754fb3b52d59ae8ed74a0997be314604dfc7344e67827d7da55bef961a388c22fd4afc4545ff03ff0fd10dec99b08c8732707ef5917f37827e597c88262c15e391bab8f008ac099c08d664125f40118a0bac9709d7dffc40e5827f8927f3830f2023fedbab09d4c0b0628cf7a6d3493834fdf88e05a3c691d94903818027ced4f5c6fdcaf5c398d08b5ab1c73be50d4aa5a12e31805601b58b90daa9908381c9b5494607488027b7c72f851058fc590500c02644183c01670cfad26d4a5b3f818223b26e3fcec1a3394a8be6f424d32488bbaceb774c4460f367f47ea11cfd062c82837eae98114eeababb4a0311f8ecfddcc558f97747da316623b4ad90c107508f19828423ec82b32a81ff05d9af3f9796f5569cd47c51d4d2e376cca2d5d19e166eebc98285f8203a512a7a0e1e81520c2ba481fe62cec1d74c2a018a0510ab2fb32089e2248286f3cc216a7920d60694b0f98a35f3c09c00ac24b35ccac2c172cd9ee9d31f532a81872b6682fcb5544217c3326efc67affb32e4dbdc63f9e866f1ad585e431c680f7a83889595b190f9cd018aee417ba1bd2517107f36903081cb52d51180be75b0adfbdb8289e9048a2a9249b254c7632f983812147c6d289db0406d8a03a7031c4fa6d73ede828ae6ce8e66ff7474048f2b6fff693f84d2f0a345b7fb312e9f97c0c8c3a7b93344828bbe1ab9e390a5492628e0580a4b496346bf287de7a09295c8407b20e988338bd8838c33b46ee777e990973c54048897b1835b230231571366077a23a233878275be43828d6193e41155a32f0c82876c849188ccc11b047a477c875a8cfa56b07fd2bafd98828e08309b1fdb86dfdea7bb24413c44096e9472a899c010b2af0e79ae9ad78b2a96838fb881b18bc22a3aff30cca3dfee5c81d0428d91ce03a0df17459f24728765783c8290c97765c00ff92c102df01a6d4bbdc01bd41c7841a844a5f1bb4938f71366466282911b3a42dd4cf6cf57ff4bd7f7c0516c6d2e2ddadc9ef228557438068c77916a9481928ef1fd0524b0a8de8f4a10a9609dba207ff69fc60d6bf61b87be346d4274717c819382631f8423f33b42e5b1ba038da8cb59b5fa5b1e651cf8b4d7341a985869194881947fb9a0db23c9928de4230dca5557a73a8cbfcd46fc3bb6d8a3bfaf2f54d780898195b7da1ebc738e46a91ee17c010a87ec3d930d244fc0f43e6406e0e9172daa88cd82961ac793339a02311e52a575618226a4a63d84b2db754d8a4e7c714f063f9207e88297f6fb11e49d7e4fe7039b95d7ac438c08a33cd5405db4db0a2860ea6c67da64bc829803342381f90eb335fcc4d599db9e572cd40e7aea16f86224cbc6408aa990c0d68199c674983f6952d885a50bfd3def6b6d432fa2f3de7f209d13486a84279aa982c2829aa6a5a99cb95bdfab7ce6597dfa082120e3268e9669c8ac301475c0bd09d41cdc819b8ccab8b6af82a008d5522bae0f5f7260072187b139b1482f278ecb4a61f1962100000000000000000000000000000000000000000000000000000000000000000000829d0f30e7051956b92cace43e2649b81c53427572a29f013e947d75c197b0fbd23e829eebbbaff55c248250a61909e418f94da0295caafc269c836548cad8e7d4d884b6829f59be5a8c58706985c245539a5b74eaaeed68e751736816c7940601a6450a040a82a0693a1b62a45898495307a3eb7d3c771a844c5bce065f1abdf5f6b4a0d9b0016a82a15eb74c8ecc1f3d64177f5f602e05f6a76e14dd9b28a0266e7bfa7c8bc5bb705e82a281829d87d334959608302b21c615fa0c85e896d6461f72b6275f78af7be924580000000000000000000000000000000000000000000000000000000000000000000082a48fa76673ee9ef0046b973f1b15fffca73eaeb0a88b61f0a25bffb7afa208d35f82a5fba7e6fae874ee3b20f1183ed1c069b1f01e4770a9dc8e586002072f4d2d95650000000000000000000000000000000000000000000000000000000000000000000082a766b7442ef7ce2ff4d2719a63bb6952a75084ce0e5c2fb0f0a45cba5d88d6abb783a8ae572d2831ec3081e19883de8701d27a593bdba2560e5f3bb0d7f5b04d8af1e482a9eb1523a60e3bce9f79ba2163fd884c9b5b8f0b8a3f8835062eed13880fda274082aae524fdfb378f3c900c4be33758790bf05b5adf0d1aa0156bd37c89f7b982685a83abd504f0d64469e745fc2126290f91bd729f0e0953b58c2fcee330f91a8ba5034583ac7eca89e6c78e742e57b57c5e89075f4a1a1926841337e2d3f049a63e38a0b28b83ad49b76bf085cbf8ea5c75851df24fe410ccce0bd1decfc7afce56a1b0a12d7d7082aef7fc19675796cf797c5af56e7771a45403e9dab32396b46f520245b7b2d9ff5f81af9782a1fa11c4569a346f0a3cfe15e1ef65459b39178c7601e0248a8eaeceab3082b0e3923ef2951b302ebea48b2d69fc92c6f6cbc8a647af9d2594146b7b990c389a82b15c1e6aadd76ec88d588b7a42a97ebbe5738d761efe978af91a1cd99df37667c982b250fb99c444d8a5dc39a8f5e43de5ebc932f08d133904a8ede61424e1908a78ee83b3ffa4dae3092fe454491660b3ec48ca42f9642155a3dc0287e5973e9e8ee657ff83b436751dbba6f8a4de70a3f21c09ce280a06f89896f41f1d0f7a641dd51670883381b52f6a6c563b44c6cd880b15819c34ae08453b7c3af1f87c31fe1a74e37808884681b61983e961ff778f4ed1846679b7565128bb1b3022d81437fc3cef2ba3116fe47582b72a5f1d36b6aca4d91ce88d8a4a23122af24e957e488896aebdddb6d8f348fd3382b86a237be62604fc4b9b7747ad64dc97c3702d8b3d98860b4188de94c3172035a682b9baad86ce2ddc429a446b34550a1a6a70a0dfd8d107864db6a8263b158aa45de482ba466e7e72f07e90b786b18b575c07a8dbe28d6268211fc160f20d3ee530fd3d8982bb374a464a2af28e860547f3d095981ba29c16b1c83b48a0d9b89a68c0b50798f082bc7ec011006c127125f60178c906fce4d4b2662078c8d4e1f9e13ead3a4f1d69f382bdcda9d403142ca34556cf811205b79d7dcd719c708a121919e55e2e5f310920d083beadfb24480d6811ea70841ff4989dc1354dee49c7386d172aee3e8887c276678d0000000000000000000000000000000000000000000000000000000000000000000083c0d98208242051df4283689942c748bc89d6fd03826c68980199cd1dc5f101652783c18b4b42a7cbcf6e9c596a3eb4ffa577e46c06841dcfd8b4d0a7ae4cb4bb201ff581c291af16abec54f5d217c214ffda0c1c3c97e220f4c246903152bf69d564bb9a2e83c3d597a4ba8117ffb4c61f2d14c18849c8a41e32349250d9ab0c9003c592eb675483c47fe29a5ba94523d8d065904ac32d5db81cfa2c104dfff0ec8396469646d0bb7582c563816b7e385a6db7b5d1b055ab43a71fd1b90f801089923ffa562d000e9ed54c82c6291b04f21b393574725b2789d6ed686d4dcb314ae20011c0a9f1f66d6162290a82c737749fd158680cd296ea5199e48eac87886d66e9a5f2ab789b622cea23741fa482c84a7bf9f7862170069df0fe3f23ee3eecbd3656f6f1df400379b547bd339b323282c9fdfecf3b6533742ba8da493ffe7988e9e5d4557b5833ea1fada8fed77e9cb0c282ca12d9d22265a127f66c532e669b13fa7c86cd70109106e6ff16dff804d5b1670f82cb6bcf08d46f9d82e240acdadf03fdc31c865a35c68aea5f12e7128b8518ccff2f0000000000000000000000000000000000000000000000000000000000000000000082cdb2256af1799a013f9db5ad7248aed4b39a286eb0302e50259f70be9f90959b9d83ce23ee8f2bd69ac8f2b521939ecc72923f613f6f3861eb3b13e30745d318ac8ba782cf9d03aa995c4bc716b79633b2c440bf64a098eb27368fd1f3b579eb2516be5b6283d0e91c97f4f380eb4bd46b3cb99546193e97c3076fbe5e25a2efa12918701a991982d10c2e881c6e7911fa0d69ac4489a6040db311827059c2ed66b0ad4c9b4a633eab82d2ca16b2fd7415ab9bdabfd6b7bfd1817802a6a96861d5e4cf10ce08678a73a9f282d3c03ac93819790ea982d54a5514a738d001197a2c20c712d56e7fe628129904ad82d4f307073b6a07fd9722afc4e40d8882930d84726ae4ef0230aa457e930387f8ec82d547ae23795deccd0f8eb7b5fa129e8a1f94d5b9f5f05e03dcc0a4cbb3da557a1e82d61c4aaf11d7469d6be9d8c63623226d7378c868490093a22c7590546a58d8902d0000000000000000000000000000000000000000000000000000000000000000000082d8fd55bffdb9066e9865d15c89c547b7cd42f9c6018cfcfac7d9a3a3cc8b3cd1b481d9f7a4db6d4bd1133180b1435372703cf78824a607581bebe2c168d189ce75080a82dac058cba7384f176b11619a98c7a500a48e984ff5a06f4adc2e061296a876896982db33350e1c1c6acb77c3b981434b5f427b145ddb9eba9f9bd795c505a2b36b53d083dcf63aec6805414b972a846836ae43dcc147c4b7d3048a33a4a94b965736d5139d82dd7e8fc9479418215f69e06048c1a0e843ae47ecbe3df8a8826ef770a7bc5b54d483de7f8135a8b75aa0ba44e71537b6e1b510197b1c9b1786604667fb935bc5f475ad81df951532690d137afbf2111938d86d4be3f23d9c9de73c28dd5642cbd99558c38581e095c0ca716d805e77bb8e3bfe07d81d8eae6bfac23d7e6f0917ab6cf43b917e0282e1ee2e17cd40f17ea8f2ff149c840bf7c968880a6f3c98b5f5473763114a26c52582e23cbc13f11595dbf50104c8e870c90e91f2cd06f2cf97e91b544dd9447be126a582e3dade21b8927cf8626f47cbfce85fc006f857bb94f6a744e3ae73ea3d2396827182e4ad303bb9ae47b29b715bda7f18a38f7ee67f376296d315fe4b6ff31618fb656582e57ada34de4b6d1c81cb4474f18ec9f5ed65a11ca9ab889bde05384e5ab797995082e66dfc2bf81c4387669b33708c0001f1a68d6c1f21b62ee5dad31d74f7a324a4d481e7d47f2b0a73f1425b10ea81afac049e7f6839963ecb7b0d82fcebb639494198600000000000000000000000000000000000000000000000000000000000000000000082e97085463debd5ad56336c4afebe4609b993ff7adf523b65f966c6e6a999da9a0681eab6f9a18802418f9d37eaa5cd550f72ce43c393ba41d3fccaaf0fe37f1577eceb81eb2716d49b3189e538b044e288aa372132af902a06e87258fe12cf55ea93f22e4782ec8b098e16e563dcb213d899e2793c3882c2861e6a2deda038f19f4f59b113c12382edebc7f5dcc8cb2e6976b5338f30e094c1641ee01ceff494edb098948da679e16a82eee8fa4b72642a4497c2b2003faf8e494596e151c4f2aa48ec17eb16de299161c983ef5395c9e41cf972bfce2a33edef66b4498ad355a3e5277b455a5d020470ad430582f0922c1d6d641a14c4e54318a3bbee54696a9653cec11589153df621607cfdd10d82f1f4c4ae314d61cf1c6027bc95249c3ce89e446105a5ca83f82be036604b0cd55082f2bfae2a98cd08cfe2b68567caf2b7052f126f09e6e94ffad6c8b7e7a9c587b12d83f35f3a8616dbe59d04c90681221cd53485880521d9c49a6ae8cb67938fe3ad983181f4a02b680550c0db1cf92793431b408de15a78bdd96a2f699899c4c21921e150e583f57b2288c2c8e30fa0154a437b7918ddb6db030ed50379cb3e6627614f2786186c82f6d553b51fd4c77ce924c3b621d998b54e6e5f231d3d9d0a9c41ab54d3fd57e00c82f7b86334673aad0e35b946fd1c5347fbc963cbe6622d6a9340bf488939e5e5e53b82f8876b40316a42247f706dc34c939dfe721dc24e45e15782d36af3448656a31b5a83f9ee0ad282dcde2be78c988c87a31d5a477b552ff3155312bbe16a91e7f8d4a30882fa24bc4664ea3ac3fecfd67f6e848c36bd90c3c2b7130ab137cb73033bbb2f6f6d82fb515939f63006f7358547b65bfb303670225588c2161189d2ad2019e11d1471300000000000000000000000000000000000000000000000000000000000000000000083fdb0c95f23ec167ac8045dfe741b93c1153ad125b923791682edcd30d826d14eb10000000000000000000000000000000000000000000000000000000000000000000082ffc91765b380eb035469c3309eec45050d44cd0e6e336e3a825b9b6e7142a52b32e360c5eda640ec1376c947901db444319c3dd543e617cb3ee89e58a4bdb18a7fae43aea35a4ed1b7630d072ef8bdefb03545639474ed61a49a7d062070152342e97886664c2ff7c27eacb4a7567df96c6496ff69f36ea192ebb5c3279ee896f552d40b440395aeb6e780a92e0cfbc62a60585fe25085ee4c6a305c279ed08739bddd70b323294a658a4fe120960f0a390040190e445f2324f1902d0e3f8897b3de2133e34296c7a3af9ad3da40ab3e1916eb328242706a3f0bba9a4b186beae9a665ebacb7f0776acd5df1a0e93c9ad10f67fa16584b033e073a3fdf7c3d37250b0c00daa83b1000982a3c90a2f28f47b25f8e815b593d6fb2358d012b00d046506a9658b7dd68ca82228ddd0ebd31225425837884e87ad5d54787b45450aa4e14497fc51865215d8f410025cd9363b8d3cda6242c977f6809127ae58bbb91152f34456381bff4e44d51c17128a5463c57ab87288ddd6f300951ec0b14ace0a821fff1939ec86a59ac68c9492b61f85f684be61c33c5d338e3d00b905a85911673961c32a92817cb58a8a4054e973a3e35c8207c424a2c572060fb52998ef88e34048db6ddc97841352df36a26c52af9e26aa8db202feece8d7f060b1ce20fadfa5d9ccfcecefa034288473c8ad585088cc6606bed9bace3ece9964781d12987b9b639810304ea5f21e6d1c6743e8a05c86841203451d4f182a90d95693b7306a3f0e74ca99efa8c0e19da94f699eee1cf1ba27201d973631fde944ff8514ee43937f5b4b68fbc6c3e6077a943909dfd15dc3afac6b17f5831ffe5d13ccb4483b2d912fdb328b427dcb47b0db39423ab36a3e5dfd749d64cb50cdd7ea99a829a0cd56cd635e1601515f17c3f1fcd8c765f284294200d8793f00c919926b1989ea888cb33df904850718436af9cfd3aaf60e5d7ab121375fb6ea9456ef7313aaf55dc24a99cb2477a6a5ae70350d073f6efc48d92533d40db5d5859c340acf8cce8174330b7851b636081397c89c9b299b1cd53e24b3f3dd1b84b08fb4dfe58edd63c7a659bed5a58acc29f491f7d9a5b8b1e7169e6f38b4100e9d17eb852a3731c7809a180f42edced9875723b78ce1dac64e9df00b2a721ac92c7ed29910e81c0cfad385d6f0d7d5230565ebf80aa7dbef72df806a678fae8c723bc0e5823171326ca4ade974b376473babc70ab201b11e49b5c3f715063932af7ca3211b454842af21aff673d11d14f4e31ee3cee55ed85b8782f6bdc09cd8fe28df3425d8ded2be839d095c204c3727c113e66483043447e0186a12c2d3d5c3318889c9281121197fb108e9128555d825ad3a03c586e3834caab5e1ecc11cee1b49c5991164569ed7d8390092f0a1dfa8e344ad1c1f585bc19165c963f027324cfc57a08a77fbe2f1deaed16edb3a56ef1da34155ef7267b6aaac5e4e5a7cea064df1ecc8b83bca637daac4279922dbe87a539778fb0c95da473a04b75f08f4e8ff619478348055a8594bd4768a8490c5bfac8b04d4a17bfb4b0689e50716f4e70222307ebc27f2fc8420fc099be0396b14f51089f4858c0045d6f72788c57451ad4f0b39cc672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a54a4cf501533c4ee62e4a94e55ae9328932b367132c3c7ab9d16ba765c0be3bdaebdb77a8fe96b15fab789e0f4789b21f45f19db9468bc8327371651a6bd2e1a54433d27eaf12efbc4c927cedf891ad0872841c92bdff7779d5880cf05b661f600bca5e848bf6b4398143f48d47de13538071f2b67dfdf05b3fcd7db439a22fa5d836f03592dde1070915d3e5f469dff5daa9159f33c05ad56289a4ec4a44e94732f9ff93e248e5b121fc5d6f84afd7eaa89f64564b6584018d77deb625c0011a6dcfa388727eafd978bcd548897ae975084f6da3696db45ec5f5e398e9270782026d16684bc15b6f58800f110b28ccc9a8899775555c25a3f481f665fbf1ae04f6a67cc193a541829c543377bbef68d5b2ee26150e1fc47106440bfefb73707c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a6aa197ba5dc3d4adf5a3017069afbbce6c609df407c4e44c4aee2f2c93d0700f93110f13c2b0ce217cef70e6cd678c58a8acc0e8894c1bab710f70bfbe0081317f0205f46f0ab80f7d48854960664e94171d5b265ee5f8914afdbc6963c9b3d97a55937ddef0dc62d6700fbd61407fe388090253981c445ee765c4b45c1995af33b1e83a321e3ff5bffcc4e37c3fac6aa8786fedcc2a4de7bee75b2f114f6ca75af51437941950e986382f95e2b28a7b4a92db313014e032f6dd7da18a90e8d3b8346f5814e19780d17385ecb30078282a7ee82c8c33b4d3c71caa102d8aab9261d351048142565fdabc798f47d185d2f91b816903517e9bc97935d9831580700f9676045d477fffb9055d77c4ca7ea65128c9812abdf459169371040ec83df4611d1bf088891fd587cccdd43a0924af4039b7be70ecbce01e0a27420c0db49afcf403f3e3104e57ffb090919f5a6123bf17513198ea7b64440a6d2557757b852eb3f26a6bf88f265a6610cf5060bc59ec076e2b61a81431e7a171a30e85edfb9dec67e051ef9ad686bb322065b3b189d4db0de2e8a1e40bc35b72d24dc3fae9dd97ad78c001193a7da12df0864a634d7701f59a6f69ecb8d4dbe958a4ed0fedecd4a78510500e3c061a549e9bc233984cd334e9ccff2cc9cd9170a5a0decd02e75fdc45d258c046f411da1503527528e4709dfc71fe9317efb562ebdbdca61c27cd3ec1aa76227a7f3dfaef2915edc0ecdf3408d7ff70c4de8e188d39dd48ab3a23710511c6ff27216d9b55cb58df887e8cd187efcbaad65db08aea2067a0c9b1084a869872a650229e4b2aa922c601e991d4a203b419e08c24b8f2a35cd2551f2a0d96f7027c6122675b1760e9b1aecfa5932581de038a86075df47ecb62392724331b3cd37465b561fbf10df82122fa248114a364da5b238ba9fc14243435c20b0245bd1a29b0c0e326c9f0564e351d611e94bf6280ed3cc8a086535e110d98a39da2468e2de2c799da55a93812630aee04c8596d3d5e04888b7f3425381b898d07ff0aabf102c0a5a5f56083bfab9d9c6ad3d0975e3efd523a40ee91f20d786f3a17e63a7a6479178c6170d0adb53007dc45f53d832d636dadc57cd1f3669be6279e448744ffec1b45d9f18c790974ec84bdb8eb529ee47b01d822d75faf7e74167cc08d17a1eb7d517dc8bec62329eedac9bbf39399c3ae67580317ac08a8ad5c3a4f6df4da468cd233941f8e4d4e643882f1f9f95f7c71ecde3376e966299d1f7b8049885d0818119b75c31e214f9e209147cb876575cedd397a2ad65fc672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a46f275c2a629c24ac2e8aa3ffa1c7b44e50b4d7f3f6826339c3e472424ed0310a8e7634ee92b77833debb3a8ef6818d6bf324aa40025ba510ae3d9542b83b4804b70d1f4e9538a41eea9d3a23aae7e778d49b7cd2d3e09ab8fe5c02a3667a31d2b56a96f97c1a308d174743e90a9ecd51bace3843f118280de6d98567ccbef33d9ab69299c8032921e632cb2ac723893b7b50d6cc859fe1b9f41238db64f404ec672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a04a1db88de37aaa85c8e0d99b0dbf94fd80df1a3c5b733b0f1e93d53228d34eac672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ae49d2a31fdadfd2050e5cc3288e389471af99084c5216ea1ec05f2a07b8ae0322542596e5564b99a8f8124ee160eb2557da67e99785a8e237b17ae700caaf75d39f99521b3c0bcc60797a02c013cb415c876cd1dace343208ecc99f04769995bb2307921c750151565738141d0fb75170561350ff372c2bdbb48b82add6ab83859b9eb6f90737841eb819b8ca368f42717d53a7b3d6bf311e9411db168c3620813e02ad8420a371cbc09e17a323853f2e7d7a205693ed736d9d4a389b802ff126dc0330c0ff92c756274da588c7b194e23ef0b388c823f6fb74dcff24635ca3f20aef4fccf151060fc65b3f9a2a9790cda6daba9cadcf88564dffbc931bcdd11e73677f87e5654473ca35ca8fc7a9d86ce00d72957d0857ae8f84d51d2b0fd98b813c06953be360759798dda03c965f3fe7d9681bcac564122ea746f3b6b471b1f7ce9f6efd16fec677173b31f34a07cdaa9b4426f265b0d96c79c32ee3a00369ad73cf0a9761ec06b565cbcecfefb7088c91ff22985ce39838e3b5df9340ff1628cd32725222e356423cea34f3875f28ed7eb20414380eac417155fad9f2ce752d349f722c7f2f43af1a43f1a7aa3e85a75ec4efaa3500143632875e3a7b95f6d11abedaddc417c101c10746464333909f5dca4258aee0cac8a7b3982bace70db7119eb983810714143199dc3d9a9b37b97af2261ce74ddee6dbaed70b05ed0338c81c314cacc6568feba800cffc13d4d2296fc3be753d3a3e74392532d2003d1ef192e028ab6dd9e690a33e03d5d418ae14781bf5aeec7e7258147d9a2d09d045c231d19f98c0976822434763111145f3a02bc6f9217e069bc0c848c2b510940fc233be77036e4dee43d830be82357dfc878c3a362840448149f6818e4fda273287c4dbcf8103e8a7158b6f4a493336bd08217f4ad57b902b93efd5caa9bc48758f9655164d0a075cd4efb8677079f3377e1f9c415d9556af1c9e75c72fd53c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ac3ad042ac9892fae31c11db40283ae8865b75276aa5d984937eb6a5093a0bca269cfacab64781e312c275cd5492bf79b93fd0f6ce61218efdea856d7a8dcd87351370bbd347eb2f4f1166278a4037810a10e5a0f7a9bea2e5b48ff8b5cad92b7c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a9be7297742d4cbd68f480c848f6a9185a2fe351be857e4838effb099aacb7fdde19931dd22a08d366c4343d53f66671154e546e38c0e0404098b9d6c4c1dfd4ad87cf40a9b27d3865f0a4329d814a2591e2aeb9165119df4ec877bbe5459ba2afe465bd65887a6089f706359381f3daadf262b5b3dab938ce7727d9a11d939c7d95828957a306c8c88143867ee153952668fbb2f47c873936cd456794f0dbb27d76bb3bb9000d3d90548368f903e33cd850f94508ce7a5db1ae1a7b4a139ba44c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a741b8b3be89de71bb8e71b38a411ad18201885c3a561ecaf430d74d4af5a1de847bbad14da47bbab9966c4679b4e1f2fb4d8d262fb0c8e6d82239709c8d849952a700ac4996b57998f5c1f3b0a38518a054882e0bec107606a1f99b60323c6a2c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a54c3894cf4bf6aad2c0171d094584359ac1b5f23f280cf9373917f9d7bb8d440b75dab7a049fd96171c430754fb3b52d59ae8ed74a0997be314604dfc7344e677da55bef961a388c22fd4afc4545ff03ff0fd10dec99b08c8732707ef5917f37597c88262c15e391bab8f008ac099c08d664125f40118a0bac9709d7dffc40e58927f3830f2023fedbab09d4c0b0628cf7a6d3493834fdf88e05a3c691d9490327ced4f5c6fdcaf5c398d08b5ab1c73be50d4aa5a12e31805601b58b90daa990c9b5494607488027b7c72f851058fc590500c02644183c01670cfad26d4a5b3f23b26e3fcec1a3394a8be6f424d32488bbaceb774c4460f367f47ea11cfd062c7eae98114eeababb4a0311f8ecfddcc558f97747da316623b4ad90c107508f1923ec82b32a81ff05d9af3f9796f5569cd47c51d4d2e376cca2d5d19e166eebc9f8203a512a7a0e1e81520c2ba481fe62cec1d74c2a018a0510ab2fb32089e224f3cc216a7920d60694b0f98a35f3c09c00ac24b35ccac2c172cd9ee9d31f532a2b6682fcb5544217c3326efc67affb32e4dbdc63f9e866f1ad585e431c680f7a9595b190f9cd018aee417ba1bd2517107f36903081cb52d51180be75b0adfbdbe9048a2a9249b254c7632f983812147c6d289db0406d8a03a7031c4fa6d73edee6ce8e66ff7474048f2b6fff693f84d2f0a345b7fb312e9f97c0c8c3a7b93344be1ab9e390a5492628e0580a4b496346bf287de7a09295c8407b20e988338bd833b46ee777e990973c54048897b1835b230231571366077a23a233878275be436193e41155a32f0c82876c849188ccc11b047a477c875a8cfa56b07fd2bafd9808309b1fdb86dfdea7bb24413c44096e9472a899c010b2af0e79ae9ad78b2a96b881b18bc22a3aff30cca3dfee5c81d0428d91ce03a0df17459f24728765783cc97765c00ff92c102df01a6d4bbdc01bd41c7841a844a5f1bb4938f7136646621b3a42dd4cf6cf57ff4bd7f7c0516c6d2e2ddadc9ef228557438068c77916a948ef1fd0524b0a8de8f4a10a9609dba207ff69fc60d6bf61b87be346d4274717c82631f8423f33b42e5b1ba038da8cb59b5fa5b1e651cf8b4d7341a98586919487fb9a0db23c9928de4230dca5557a73a8cbfcd46fc3bb6d8a3bfaf2f54d78089b7da1ebc738e46a91ee17c010a87ec3d930d244fc0f43e6406e0e9172daa88cd1ac793339a02311e52a575618226a4a63d84b2db754d8a4e7c714f063f9207e8f6fb11e49d7e4fe7039b95d7ac438c08a33cd5405db4db0a2860ea6c67da64bc03342381f90eb335fcc4d599db9e572cd40e7aea16f86224cbc6408aa990c0d6c674983f6952d885a50bfd3def6b6d432fa2f3de7f209d13486a84279aa982c2a6a5a99cb95bdfab7ce6597dfa082120e3268e9669c8ac301475c0bd09d41cdc8ccab8b6af82a008d5522bae0f5f7260072187b139b1482f278ecb4a61f19621c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a0f30e7051956b92cace43e2649b81c53427572a29f013e947d75c197b0fbd23eebbbaff55c248250a61909e418f94da0295caafc269c836548cad8e7d4d884b659be5a8c58706985c245539a5b74eaaeed68e751736816c7940601a6450a040a693a1b62a45898495307a3eb7d3c771a844c5bce065f1abdf5f6b4a0d9b0016a5eb74c8ecc1f3d64177f5f602e05f6a76e14dd9b28a0266e7bfa7c8bc5bb705e81829d87d334959608302b21c615fa0c85e896d6461f72b6275f78af7be92458c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a8fa76673ee9ef0046b973f1b15fffca73eaeb0a88b61f0a25bffb7afa208d35ffba7e6fae874ee3b20f1183ed1c069b1f01e4770a9dc8e586002072f4d2d9565c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a66b7442ef7ce2ff4d2719a63bb6952a75084ce0e5c2fb0f0a45cba5d88d6abb7ae572d2831ec3081e19883de8701d27a593bdba2560e5f3bb0d7f5b04d8af1e4eb1523a60e3bce9f79ba2163fd884c9b5b8f0b8a3f8835062eed13880fda2740e524fdfb378f3c900c4be33758790bf05b5adf0d1aa0156bd37c89f7b982685ad504f0d64469e745fc2126290f91bd729f0e0953b58c2fcee330f91a8ba503457eca89e6c78e742e57b57c5e89075f4a1a1926841337e2d3f049a63e38a0b28b49b76bf085cbf8ea5c75851df24fe410ccce0bd1decfc7afce56a1b0a12d7d70f7fc19675796cf797c5af56e7771a45403e9dab32396b46f520245b7b2d9ff5f9782a1fa11c4569a346f0a3cfe15e1ef65459b39178c7601e0248a8eaeceab30e3923ef2951b302ebea48b2d69fc92c6f6cbc8a647af9d2594146b7b990c389a5c1e6aadd76ec88d588b7a42a97ebbe5738d761efe978af91a1cd99df37667c950fb99c444d8a5dc39a8f5e43de5ebc932f08d133904a8ede61424e1908a78eeffa4dae3092fe454491660b3ec48ca42f9642155a3dc0287e5973e9e8ee657ff36751dbba6f8a4de70a3f21c09ce280a06f89896f41f1d0f7a641dd5167088332f6a6c563b44c6cd880b15819c34ae08453b7c3af1f87c31fe1a74e3780888461983e961ff778f4ed1846679b7565128bb1b3022d81437fc3cef2ba3116fe4752a5f1d36b6aca4d91ce88d8a4a23122af24e957e488896aebdddb6d8f348fd336a237be62604fc4b9b7747ad64dc97c3702d8b3d98860b4188de94c3172035a6baad86ce2ddc429a446b34550a1a6a70a0dfd8d107864db6a8263b158aa45de4466e7e72f07e90b786b18b575c07a8dbe28d6268211fc160f20d3ee530fd3d89374a464a2af28e860547f3d095981ba29c16b1c83b48a0d9b89a68c0b50798f07ec011006c127125f60178c906fce4d4b2662078c8d4e1f9e13ead3a4f1d69f3cda9d403142ca34556cf811205b79d7dcd719c708a121919e55e2e5f310920d0adfb24480d6811ea70841ff4989dc1354dee49c7386d172aee3e8887c276678dc672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ad98208242051df4283689942c748bc89d6fd03826c68980199cd1dc5f10165278b4b42a7cbcf6e9c596a3eb4ffa577e46c06841dcfd8b4d0a7ae4cb4bb201ff591af16abec54f5d217c214ffda0c1c3c97e220f4c246903152bf69d564bb9a2ed597a4ba8117ffb4c61f2d14c18849c8a41e32349250d9ab0c9003c592eb67547fe29a5ba94523d8d065904ac32d5db81cfa2c104dfff0ec8396469646d0bb7563816b7e385a6db7b5d1b055ab43a71fd1b90f801089923ffa562d000e9ed54c291b04f21b393574725b2789d6ed686d4dcb314ae20011c0a9f1f66d6162290a37749fd158680cd296ea5199e48eac87886d66e9a5f2ab789b622cea23741fa44a7bf9f7862170069df0fe3f23ee3eecbd3656f6f1df400379b547bd339b3232fdfecf3b6533742ba8da493ffe7988e9e5d4557b5833ea1fada8fed77e9cb0c212d9d22265a127f66c532e669b13fa7c86cd70109106e6ff16dff804d5b1670f6bcf08d46f9d82e240acdadf03fdc31c865a35c68aea5f12e7128b8518ccff2fc672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ab2256af1799a013f9db5ad7248aed4b39a286eb0302e50259f70be9f90959b9d23ee8f2bd69ac8f2b521939ecc72923f613f6f3861eb3b13e30745d318ac8ba79d03aa995c4bc716b79633b2c440bf64a098eb27368fd1f3b579eb2516be5b62e91c97f4f380eb4bd46b3cb99546193e97c3076fbe5e25a2efa12918701a99190c2e881c6e7911fa0d69ac4489a6040db311827059c2ed66b0ad4c9b4a633eabca16b2fd7415ab9bdabfd6b7bfd1817802a6a96861d5e4cf10ce08678a73a9f2c03ac93819790ea982d54a5514a738d001197a2c20c712d56e7fe628129904adf307073b6a07fd9722afc4e40d8882930d84726ae4ef0230aa457e930387f8ec47ae23795deccd0f8eb7b5fa129e8a1f94d5b9f5f05e03dcc0a4cbb3da557a1e1c4aaf11d7469d6be9d8c63623226d7378c868490093a22c7590546a58d8902dc672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967afd55bffdb9066e9865d15c89c547b7cd42f9c6018cfcfac7d9a3a3cc8b3cd1b4f7a4db6d4bd1133180b1435372703cf78824a607581bebe2c168d189ce75080ac058cba7384f176b11619a98c7a500a48e984ff5a06f4adc2e061296a876896933350e1c1c6acb77c3b981434b5f427b145ddb9eba9f9bd795c505a2b36b53d0f63aec6805414b972a846836ae43dcc147c4b7d3048a33a4a94b965736d5139d7e8fc9479418215f69e06048c1a0e843ae47ecbe3df8a8826ef770a7bc5b54d47f8135a8b75aa0ba44e71537b6e1b510197b1c9b1786604667fb935bc5f475ad951532690d137afbf2111938d86d4be3f23d9c9de73c28dd5642cbd99558c38595c0ca716d805e77bb8e3bfe07d81d8eae6bfac23d7e6f0917ab6cf43b917e02ee2e17cd40f17ea8f2ff149c840bf7c968880a6f3c98b5f5473763114a26c5253cbc13f11595dbf50104c8e870c90e91f2cd06f2cf97e91b544dd9447be126a5dade21b8927cf8626f47cbfce85fc006f857bb94f6a744e3ae73ea3d23968271ad303bb9ae47b29b715bda7f18a38f7ee67f376296d315fe4b6ff31618fb65657ada34de4b6d1c81cb4474f18ec9f5ed65a11ca9ab889bde05384e5ab79799506dfc2bf81c4387669b33708c0001f1a68d6c1f21b62ee5dad31d74f7a324a4d4d47f2b0a73f1425b10ea81afac049e7f6839963ecb7b0d82fcebb63949419860c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a7085463debd5ad56336c4afebe4609b993ff7adf523b65f966c6e6a999da9a06b6f9a18802418f9d37eaa5cd550f72ce43c393ba41d3fccaaf0fe37f1577eceb2716d49b3189e538b044e288aa372132af902a06e87258fe12cf55ea93f22e478b098e16e563dcb213d899e2793c3882c2861e6a2deda038f19f4f59b113c123ebc7f5dcc8cb2e6976b5338f30e094c1641ee01ceff494edb098948da679e16ae8fa4b72642a4497c2b2003faf8e494596e151c4f2aa48ec17eb16de299161c95395c9e41cf972bfce2a33edef66b4498ad355a3e5277b455a5d020470ad4305922c1d6d641a14c4e54318a3bbee54696a9653cec11589153df621607cfdd10df4c4ae314d61cf1c6027bc95249c3ce89e446105a5ca83f82be036604b0cd550bfae2a98cd08cfe2b68567caf2b7052f126f09e6e94ffad6c8b7e7a9c587b12d5f3a8616dbe59d04c90681221cd53485880521d9c49a6ae8cb67938fe3ad9831a02b680550c0db1cf92793431b408de15a78bdd96a2f699899c4c21921e150e57b2288c2c8e30fa0154a437b7918ddb6db030ed50379cb3e6627614f2786186cd553b51fd4c77ce924c3b621d998b54e6e5f231d3d9d0a9c41ab54d3fd57e00cb86334673aad0e35b946fd1c5347fbc963cbe6622d6a9340bf488939e5e5e53b876b40316a42247f706dc34c939dfe721dc24e45e15782d36af3448656a31b5aee0ad282dcde2be78c988c87a31d5a477b552ff3155312bbe16a91e7f8d4a30824bc4664ea3ac3fecfd67f6e848c36bd90c3c2b7130ab137cb73033bbb2f6f6d515939f63006f7358547b65bfb303670225588c2161189d2ad2019e11d147130c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ab0c95f23ec167ac8045dfe741b93c1153ad125b923791682edcd30d826d14eb1c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967ac91765b380eb035469c3309eec45050d44cd0e6e336e3a825b9b6e7142a52b3203db0500000000000001008500edd35f6d031b33f24a9f6d7c799daa8207d7d13259587ad046cc4160dd1109b28501e264128e53c7f2acde2e784fd34ab71f5ebba01db506dfcf44c00781f553fd568502f1fd48907b5c34d36d9dd3cc31f3924f81c4f1ad16aa967eff3028e73b4d7c0d85038f313fa3dbb40818cdf1f0c1eabc9b4b43cf4ed53b1384525bab81a2ad82727885046c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c506747050500000000000000000000000000000000000000000000000000000000000000008506f22852f6f2b92c2478dacc64e1718a41b01899c244b171ea7e8664bf008df7308507ed98b8ccbf5e6500677f4e946fcaee27bf1e2970ff1a6513cfbcb16d9504a5ba85082c501b81f0dec5d27e6b45e0a6759f0ba3444882b8d8ea8424670a9ccc2228b18509859200f507ca3c4b4429cb4bb9366be3e4c3109adc30e8fb830c5c817d8d84f9850a77c26b9b0b178d6b150c21b2ecf18c66b7dc00a6f8b3535c08e265003d432d5b850b56eeafccfb4bcf935b75e517fba77090c039a30d4374442306b874b7948444ab850cdf0159959d34ae459d1ec46bc8cc91271cd2ebee21c969f1f84a4b1c5147e649850d0710ace46468a2c3ffac563ec5679d8a04d47f1014bddcc204b7a349dba2598e850eb0a6aed2e8c285a8b7fb6c2d466ddb1cc3dd8b8d3d4d603f875e55792e42ec70850f1e6c870326b17e0c855e5a86bccf9605aa884b24cdc91397283f1b9c8d0caad98510b7944528159081e6697498cd2720aebe47ccf8decd551b8e87cd997906ac1fa685119581b4409eef9563fff83fb2c6e14dd0baf76927e384f34ade32b76d5b347aee85124589c7288a2728b8672291fe37692c91a92bffec24c288a150d6aa5ecb29a85e8513c0e22bf7a1c701a483b1663b60b31a192b078f2151f9ea839b0e0e44b61d86ce851416f7a8e840e17c3939a95d2e2aa5b85c2b0e2c6583707bf0f9d1b8e5be1a84ae8515d90fca7012228d10c85b01b54c8ce01c00752e26008b93c0c12933e992eda2fa8516e984d62484d2ff277f10af43a09fe58d388272c1c4076633295e47bd4ee9425885174daecd2380b9621f14420e1d14a11f211049ab057e44f342c1681284a943099085189a8c34b3e6bb67bf7327f59f7133f3a878ee00a979761991ff3be72f0d909ae78519bbd9fb9af68e646f7a078ad5dcd166e78b4eccfec920bfb815d038150c86c37d851ae264128e53c7f2acde2e784fd34ab71f5ebba01db506dfcf44c00781f553fd56851b33e48417b07ece78ae98f84be5c9a6d04856eaac22270d55a72b90ceb8d65090851c4225db457feee81b183bae056e457e85fda2a2c1265fd35b453e5aeccbde5b7a851d8ca18da2c10922fc5c651a70c7556242125780a477bf908c6deac4df8d2ac23e851ecaad69c968e70b2108560fd668c23a11d1382e85c32f969136c15af2c7657d94851fbff7633832726fb8e1934db99d96864860aff63bfcb92204e9f889a6b611716c85207af656bc55475f58b5ce453cb8b49cd3fd86922aeb27af3c4eb7a5413ab2465985210615b07807e1b1433e4697a08af1e4cd454fbf563e5c5fd8b778bfbdfb243aab8522c328ad930c6c713b6df4be00b0b6835b32404194e584cc3b6ded0f4eef8d1d728523ee12d0f8b220348a0f85d77a5feb6a362fa19ed036cf1d898cdf13eb91b5ab6c85249bafc27ec88574545fc9cbe1614af69816ba230b39952e2e81f4d5aea8014c7d8525ab9aabddc3809e2e6cf42d8ec1236bf1d3ec221b51d2ebb7a2c163fa075b5dd685267911066d10607253b822dcece7991fa675bf1870c613fb90f8134525068bf7ab8527385b7b0be692ded634082fd1d0b6027d74aa60599ed0885d363bc355c4a6bc6a8528b20a23dad22f30203830ed5a867766f7a15c2ec5c08977174c52f487f268f5b28529ad462a141dec988e2bd7b646df19e0ab393918404870ffa29c8c1d9c3f6b5e76852a1a66b0f7bebe3417d8b413e74074c96b68a7458bc0fba2c4dd08f14846d5c4cb852bf01a205f97d43dd47f4bab67ea91db2cf79d288bdc5eb7b7625f05470ba87829852ce264128e53c7f2acde2e784fd34ab71f5ebba01db506dfcf44c00781f553fd56852d3eff4a5e9d509000474ecce2af61a21b6db328ee557eb8f8160422acd75e6218852ef31f425ce757dbe6c795bc2289eda0219b6e3d67e68f6970ddd7907b389aabcf852fa38878e55bdc6c5885a5bcab5eda61c8218cf3d6d1de0d168d71016a77ecb8948530782d2d2d9fc3cf8dff674d6a4c9e2d8eef819c6e43b5ffd42cf47d5882271d3b8531824a03e1cf9bdcf661fb482e26e3c24e4fde44f4248b38411ab3f9d867fe7319853288f4f61e2ce9d0b7c5592dd70ec48a2094628b863b481a482079fa6e3109bf9d85331de26f85d946bc68af5d2fe0b1a7c80a841bae547dd2aa5c6501a7cbb9a087a18534dc826d992bfcb83c91ba28ea9fcf7a640337d9f04e079283cc28d1eeb832dc8f8535410bb023b71fd9e30984eba40a2367558179a6d415d50a0907ef6e6ba1463e26853649f6c550e2a0b7b267ebe06d32a8655ad65f81ae63f67ff41079e167c27387a485372f603fc10f9a76faa2a6601055a2d4ebbf189a0e860fd6d5251a51fba034731f85389fb2d7568410d5bc3a8bcd10b4d79c4211482b30dfcb1b6766d04196d38d99d6853985b8d8fbcfa5ae5651bfab3cdcd547516e309bd43080ccd7e16986eb4d3afec6853af1f1271457b882de841d95634cb07a1efda4749cb45de5ffa457072bc67cd7e2853b48bccc4fb348378d367555850b4a9821c9207b487fae8d51bd3eb39af5f83134853c1fdf8c468e0e8dc44644eed2ee163a3257bd10994aed1a4a93ddb35e68af649c853d33f2de3768e443b3e812115710c4a0f0f904c06760976f1c4157d12c212defca853e6c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c506747853f4a53878e51ee7b6525c3a3d7e98486c37cd26379e653c84206ac4b31fd3cbc9f85404ee1800167265b68c8f8cdca1bf465170e5fc2a79a045543c5791b75cedb542c85415f5e30d660f80ebe4130c8bf3c695847ffabe06625a0cf36320bf4e9f4d1540385424daecd2380b9621f14420e1d14a11f211049ab057e44f342c1681284a9430990854332634b8307607d7269ce14afb5011e4c7d8d3a41119cfbd7f9b234e712628aa585444a98d455c961261ece6e5c6957e74d7ef698478ff7d418794b382b5cdc7933e58545ba5dac566bd23304df13b1d3466fdad310d5d05a4bac0eecc1ce1c874c6cc405854678428e396dfb67aaaaf28841b690a21ef9071eca5a6478b4772c65787a9db7738547ea2f320fa0db051ba309c735180be48d4cb9928488975b3afb7b63b309a3b48c85485339b7cdc2c40fd35891680cba144e9493bc0e24d8cc4a9b60d04a6eaa87cecc8549465edb6ac05a63a94f5c454a0ace0d46ba800c23a1c5e0523a27426de4180014854ab310313649f3c8af4ae01c2580e2c522043baffd12f5e408c5c6c30711acf8fb854b3b4467550b8fedb0dd71628ea2190c071f91a796e4c5ed48e4f28785e99e6c02854cd00297c92cffa7af562f38a8113680f87fe21ab71b2fc62fa54258592a4592c4854d215e072c8449d8846ed81880f8b4d67d200fb12422e0f589f35b4293f130334e854ee7388bef767e4b0f9254986f84fb2bbd594ab50653837505a8b77819e0592fab854f3ce8880f64f58302b64670a1cffb04a8cd812029e79e42b88f77dfaf96688bd285502ee3b71b815e04ae2d31b480c1e5576aa008554d82b0ff65e230b4dd551e0a988551f246cd985be63712f5578950ed39dcf1e01ab03ea1a5a4d507f8f264236d795b85522c4d85d71f46b2c0f1e8c879c20d867f5caa4e3d8a9314284838065068bd3371855322814b68b6aeb8a53a4fb78a37a68cfef5bd558acd1a9072009593957707f84085542203880c81cec10b933791b31c6f49dcb9f5bd8d4910379fdb4f51d4188817918555cf93a32f7aad03029f09b6f85233e07978db20b756904ab33288fde304498cb685561655d3c683a73aeda08f26b6876b59d639379e46b9591c2fd6f7a61d9a295a1e855702b5fe3a5a976ed783b210c74a23eeda5cd347e8cf692796873f40190dc96cb6855864d86b29e588a07404bba504716d687769376162b6bf0b631112f545d852c59e8559fe884326ce0eca702f778a5a37f9008c8d9147bc6d730fbe9657da0b32c4a4f6855a9aa13df0cf63e7c00ecff7055e5a44fdaf84e82ab8d0518bac4cb347a7420827855bee369b28d2e75a1e41e4a0e0af33a809477e4313ccb18505fe123a73c4f556ec855cc87be65c1b034c5d55fe9af06e20bbc2bfc3018fd7427d82832b8a8a2ee49243855da025109dcbef7aedb4634c73d7491b8dc17b5532407320c1eadcd31a7f82020b855e80a865c7bdd7bb1085541f0a9d9b1a2efcb505f3a60e26ba06cc94ac6c25c89a855ffa2d920a9aad81d6d097d4df3bb607c09acb5a713be8236207dc5f47ab1760c98560bca007f1836e43594f986a497b64ca68b78004fdc984789ae55a91b08037692385612b9ea281250647ec3ff260b6275ac2373426a151f4bb0e7e617a85a089f49af58562c90d491a2730e7cacc0a8df5682940cb24f512bc3835aa7de608ac8462cda85c85637911066d10607253b822dcece7991fa675bf1870c613fb90f8134525068bf7ab8564d5125f7fc10487be5d168f24ecd345469f5c5430f18f9d2cbe655146349033f48565edd35f6d031b33f24a9f6d7c799daa8207d7d13259587ad046cc4160dd1109b285666c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c5067478567787f59a0cb3645f332e3a73a60e0c6a1ca9b4d85ac756e1d59d94743fbc9df688568459e493819be31f4f7fb7b5df44c340cf39644f177df0f7bb390c8be0d0d0ea5856994a402673d9ce183714e2f78f726334f0530c0c881d9cf8f963043e91c84c46b856a32634b8307607d7269ce14afb5011e4c7d8d3a41119cfbd7f9b234e712628aa5856b0ec3af8a1c9522b58aa0738ba0b1a2dedcbc8f136f4b401a946fb2671740cf44856cef31a28c9feb8d09afbec4b412b446c576c88d8289f296c5df002124d94dd5f7856d2f4f10187818e2b1b840580f82c5affe63d84a565caf9ab256ba0d24d47d3fc0856e612bb3370fc5ddde70f77c21f20ef248ea936daeffc995fdd1a0a88376c41e3f856f2b9ea281250647ec3ff260b6275ac2373426a151f4bb0e7e617a85a089f49af58570589a1cccbd8cca4aea7bcaced5771a645c621e2ba29a3b33bd364ae3724d6ed2857119af57ad2203b107c8a01303e450045b45e1faaf5541e35d4c5d19791e1977a58572af23b06a67f459a9529f0f54e60046915a737ddb62e8976485ca71f44b8cb7c185739a3185a47298590a69506ab48e1c16ca8e1b495603dc7f54e01656bf29188e068574fc09480467f7c85057e1bb9b843f95b7a3f610c9f2159cd33e8847ec9495dec18575b70ed0364a7d6c7f84d98a304ed4bd799e6e36bd271a69ffa351abb7d7575f5485766c4b8fe006672affac98357e6ab0cb09221389b35f67b9c75336b08bcb3a64c08577c04cd7dff5c2cbe3f4ede3f68849f301507072aadea4341c8be05551fb94b29385782ebc3da34ad9ad9ed1fe959597b4affb245d2aec66dd99350386a18dafad07c285799479516dced503ed50e545c23821b1d254d34f93f5aaff4cef97bdc4a3de681d857afc1b28823688076885c6dc1e60a0c595b7da12cba617ebe4ed36831855c654d9857b183f64b4c434a6b3bffbebb63a07e1aa807378ed7fb4dd8ca9ae36005efe9c87857c2fe7b85f375f7c10910636c84e0aef5cfa9786a727f5a6831ed9a18d12bb7b6a857d98a1d5ce6c285043518c21a57d59dc78e6b88cb17cd41176d0d4b8a3f78599f5857e1fdf8c468e0e8dc44644eed2ee163a3257bd10994aed1a4a93ddb35e68af649c857f154561b2c4a14354511fcbe893ff72104bbda2a944c8fd0883b27573e49868f9858073e578d0a2554174ebacb028b1dbbd78ac5e997c7879edb1f6ddf94ec8fcfb108581ad963dcc37e5ae7cb8972c17159860ce861228dcce1890900cf4bccde822a6f78582b0cb6d027afb3b5bd2120ba02ad336aa56aee042e5d51d3aa72cb0615038456c05830000000000000000000000000000000000000000000000000000000000000000858469fb87940202dce96550fc765e6f1ae39d2b171354f42cb161d622e77f7cbb02858502c1358a5ea39ac6d2b774fdea3c94ed0300f83dda3cfc1d4930facf41046d5c858682d75f99ce509e0f788971f4ff20c94d5510b053f87baf263801333954d719da8587426d7eae95240072bd55ad3d0fdd50a5a118b28dfb12e258575044ff850c5cfe8588bca007f1836e43594f986a497b64ca68b78004fdc984789ae55a91b08037692385894c76fab204aa845f392378da8233952f34d7ef466930b097835f7640e0d66d04858af691779b63a96ca03233e941af1f09a026c61ee1bf26329037b8f355f771aee9858b66cdc717c89590f02a6823d32a878853e910776c32e343d36087fa23ce9ea0c6858c694700791ff53691a0ed15803a300994d0dea2e682d769d2f05c993a14cf3733858dee30e4799418ceaaa94842ff80558c58a09ad925d5da4ae5502fda3c2af30f04858ea8dd13da295f2845b8f2e67d582a2628a615ac8c7b1c4d4da66a699d8e75064a858f2017e05306dc87c0314f8191da5e6dafe2163e3262ec8416fdb1790ea1f4c7578590693f1aaca84e48ba3d005b8e120a2f09bd3bb53aa91a09ab481573caa9cbde338591b7944528159081e6697498cd2720aebe47ccf8decd551b8e87cd997906ac1fa685920d11003043f4b5c07f419b7a181a4aeb0d33fcd586c8ef059c9ee64acf91678d8593d5cd9df3dfd56b995f8669a678c3b2d00dca516a4a4f418771380b9e5111c2cd8594f266acfea240153d768b9f6290c89435ffe6edd3efecb91a2c00686c3fb2de438595cc036dbd9c9f8a634f5db0d6b1e362acd4a412fb77c980b30129fabdbe06c0eb85965bcc0d3e7af061a919ea4c2a449913bdd55da458173816b3dfe55de65c4f42a38597541220186044dd3eb526d80db59e96dd6f0c8ff4018b886728e19fdb838a484185987a66e34b514a30892350e2e42178a4391602ae5bede6d63f754875054b3e0bb68599ac20dd4182090d168560c5113545c6ca47606c24d1d0953a5ae2383cbd2f2796859a782d2d2d9fc3cf8dff674d6a4c9e2d8eef819c6e43b5ffd42cf47d5882271d3b859b4d5b1322030d922872ce6a7e8e34afb9e97d8c876013ab5e70a0d4ba9a5314d3859c825de777cf31bd5cb57c88a39aca7cf9c320a361f3585e79793b8e8177fa04c0859de55e8212f009e00d0c513d24b4d0f010c6d317bc2e3bb6afbe797f11558620d6859ee10c3c06a6f6f8ced90eae68e139c89835dfd441554b54ab00afce5dca5e8f86859fae8b37e6602394a9c87bec09d0fe7809ef937749efcf49bfa4de7e6394009c4f85a0206d79e8503f8b9982115d209832eaebe9ed123f9f12d24be0c260e483a37c2585a193c534bdf4dba7d9b99dbbc8dcab94a926b7877ecddace2beac36099fb904a0785a2782d2d2d9fc3cf8dff674d6a4c9e2d8eef819c6e43b5ffd42cf47d5882271d3b85a39b42b93defb6d08c310b601d35bd266710f72ac088dd7e723bce2a100ad5ad0a85a461b83129d11adb20d7a5e2746d9527b2e1bf438e8c9c5c54541537448b5235fc85a5e35e7913110775f0c197903672697191ed109d5a0df3e9cc45d4147f29df51fe85a66971d8222db3b9185656cc9eb3d585707f0ccb55fc6a8432d49afe7533a513c085a76c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c50674785a851dc515cd9444b7a85dcdce9f06bdfa9d9d99396c2a596c89d7ca49973be290685a94daecd2380b9621f14420e1d14a11f211049ab057e44f342c1681284a943099085aafd1013469ac56b16737f9953f6f4f650414f1f0933632da86e5bd9a81a5ecedb85abc0f13d57be07ff21aaae961d07c583c0f18e5632131fc48445151b66658aa43485aca7f9dddefb9444886e18f25ec00ab23e724ad639ff5fd6096300f19f91edb1c585adf31f425ce757dbe6c795bc2289eda0219b6e3d67e68f6970ddd7907b389aabcf85aed5125f7fc10487be5d168f24ecd345469f5c5430f18f9d2cbe655146349033f485af32634b8307607d7269ce14afb5011e4c7d8d3a41119cfbd7f9b234e712628aa585b0fd4e79180ce32eeee22015440de92a15d6790b3c909c639eb14be37400a0458485b1418f27efdf794f1cd484077e36b1eef5d7b7a6008b4de62c078a48bc061dc6ea85b2caad69c968e70b2108560fd668c23a11d1382e85c32f969136c15af2c7657d9485b3e88cd98edfca8214724d64199b3dc7bf84c5a2157a70ea4193c9fc70b706a51a85b425547179f8e0d349a06f7da7d6dd864faa97a24dea1f416540ca17ffe33dafd985b52f59e6b7da609de971dc412b23a92f3ee9fa929b2ed53f78b49f582434965a9385b653f2d5b247690fc9f71f4308612e1360b09502fe2f93111eb27d0eca75e218ef85b764799e33751bf85799664d823ad2832090acf69e44252a268ab342dca9e24cc985b819e252a71953ca26081b13a371962dbec1df1e434a07c65a366c1da28371757485b9ecabd6b3c7f7e2b83d9add32f5a991b00e4f88a71f0ddd7a8df7822881deb22385bad6ee9d67ee49005ddc374ebb6105e7469e792082726b28e323e734e9152a329085bb75620facc3d31c753445bbe7bd11354584405846f05115f4a736869cd8ad225685bc30d55b71b2fc7a8847ccfcdc0e7cece22004548c391c6de157bb7bd5ed02421485bd7fa03c09f1f04487c8c79159741adb88fb2210e8e7be106f0ddac603de28e91b85bebabf3d258bd984ec6cde874b0cf40ceb7338edeeb7ea7a909a2b4bbbd7fc2b2985bf895d472c095daf9c4ea206c0af74f8e94d678b205c41567be102bfdbac2add2a85c07626872d4473be905e85a1a5fbf54561c9519bad5993f4b3282c63a4aec9b6a385c1016cfc8312ce30b02a6d170cc3765783a44f433f479d47311c07a2a7d5c7bb9a85c203f7bab7c8abe014be59fb0d497445eea071a1007deda447a40a6eeacc10d26385c39e5b9784ca9fdbf07caf0341f53eb5a83239916cb53ac8ff4d714568ff97dc1885c42b9ea281250647ec3ff260b6275ac2373426a151f4bb0e7e617a85a089f49af585c53c9bf95f3fc4d669cce2f238ee27201b696d789acdd9e358718b20daf8bd50f385c67a78e8093d0cd3be4c22231c1753438f80f3ecfce9b6073b367e8d7cc98d303785c7d8d9d267354c2ab5e5d45b029eceda2b2566233d1395b33345bbb9e41d15c9ed85c86bfb723d80dde7bbcab061647b6fa3397d92fede9bb47895af8f66dfa7fb3dfd85c9aa269101fe40f79dd041f01d70b8caab9179381ba6ba4f47eb2fe5ae2468eda385cacb0d68160b1129d80ba62712a3ee0332522dbc2ab58f1f398eec494da63553a085cb229f1ed361b1bfe50a7597741952f7f9d5d1f7a7f24ae4423f120dc2ecf5863985cc57e07953570402d032fc45239bd4e214ddd965e4158f444c8e5760406d2b2b9f85cd27ca11c50baf3d2f7f7dfdac51ebea13352a24715551f803f2eff2979bdfc5d785ced4ea6863ff67ab75b696902c7e0bf75f74acec8d2c33459a6a64a8918d936f3085cf55b743b724318812dd56af4e761da959499d93b92c516bdbe7a000c1c10d62dd85d0e984d62484d2ff277f10af43a09fe58d388272c1c4076633295e47bd4ee9425885d17faf45b1bc121e205f50f1cf6f10dafd5f32dccd3aa15dffe4405ef14176907c85d222f428137cd0ffcff28f284232f7dbb651106948044b2c055c6729c87aa67dda85d31db018a243617040c7b4c9034906a8e0f19832c28fe9168e95e6c8c2740968da85d4b48fec2b235387865f23b3c8b30b908e9fbdd7d49917e908c1b500c32a0ff1ab85d569fb87940202dce96550fc765e6f1ae39d2b171354f42cb161d622e77f7cbb0285d64c65246164240f560bc9c6b6b9c3eab89f08652bfe8629f6a596c92ec0878f4085d7e6eba87336e2cdd534b33188fe6e050eb6586150edf5aef0c2551cc609673dac85d829fb9651e1b78d1ab6997cdeffb835ae2d290c19810bcf6b03c040b8ee77154885d96c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c50674785dac87be65c1b034c5d55fe9af06e20bbc2bfc3018fd7427d82832b8a8a2ee4924305db000000000000000000000000000000000000000000000000000000000000000085dc51dc515cd9444b7a85dcdce9f06bdfa9d9d99396c2a596c89d7ca49973be290685dd9c84695dd8d7c0e78101d904a71d938666a963c6808a9dd49137a57a1f4094d285de244b133925068e8d825e62a94d3d31cbca63e39964b434e8a6a9e9e175d472f785dfac39460dcec79b13ebd8cba3317610c6010f5365a8e313b3611a99f03b2ce6ee85e0413561ec9f56b468deed56cf7bfbd0d532090e5fae960ceb82b121569442cc3685e12caa9e6ccd8da6212d3b8d18258246ade75f632f469df101f7ffef27085f0b5c85e22649e98cfe445249efb0aaa192c014436034539bd1898958a391ed6c6396601585e34263f1ee17d5435e234c97ad9a5c5ddde1a010302d25f136135d711b0e4a2cde85e4c9292fcf8d8dbb3ecdd8ce4c6a736560e2138dd31bad43316f0b33dd816228ea85e503f7bab7c8abe014be59fb0d497445eea071a1007deda447a40a6eeacc10d26385e6d4769fc21bb601d5b62c1f9dffa7afd30420432bd4700b67cddf3d418a7ac49285e7ee35f8b95e0ab5015d128eea232c3a2357db11a9dc324314382054ebf5abae9c85e809625f1f903e9cc0363ffd85694694f928299e2b6cf75c0391c9237c8e2ac82185e96eebe31c02cc8c6a85099964311a25a9084416ad2f810148b4cb9e6511c232d685ea4a98d455c961261ece6e5c6957e74d7ef698478ff7d418794b382b5cdc7933e585eb6c4b8fe006672affac98357e6ab0cb09221389b35f67b9c75336b08bcb3a64c085ecb404acd2296d31a73324e7cbd73402ab481c86e24d14c78aa09333fa89bff6b485ed20f44ef4461b6f354e69c280920ba8bf0908c25d315bc12e72431c8ef17ef1ab85eebe47fffe6d0d5802cc3245b4da4c92c3aa0844e7168a8e4b4cd4b7aed5d170b085ef8f7b8b77f6bea128707106c95433bb665caeb2740eeac04bc13f10ab0784b3d085f051dc515cd9444b7a85dcdce9f06bdfa9d9d99396c2a596c89d7ca49973be290685f1a5bc9de1cafb3059b005b105bdb8ffe3d6873e296a72951ce59eff11571f318485f2164a3b83ec2976ae350d230b1d1f4a95a886e25386807baf92163556d5d895b985f34225db457feee81b183bae056e457e85fda2a2c1265fd35b453e5aeccbde5b7a85f4fad913ba77a191fbdc18db14c666c32d1bdfcb6342be2c5fe709a493e58c6be985f5782d2d2d9fc3cf8dff674d6a4c9e2d8eef819c6e43b5ffd42cf47d5882271d3b85f66c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c50674785f725547179f8e0d349a06f7da7d6dd864faa97a24dea1f416540ca17ffe33dafd985f842b3ad53ded6b7a0b9f5d59c2fff7fd1362547ebba7110ebae95cce83a96b0a185f932634b8307607d7269ce14afb5011e4c7d8d3a41119cfbd7f9b234e712628aa585fa55b743b724318812dd56af4e761da959499d93b92c516bdbe7a000c1c10d62dd85fb53d98c309cc69c403058143226337835d60e3f880c16cf70877259e0cbb97aea85fcb0828d25ab551d749778eac4b9f145dddd6024c62f86ea23d4a52e03a9c5aaef85fd6c4b8fe006672affac98357e6ab0cb09221389b35f67b9c75336b08bcb3a64c085fecaad69c968e70b2108560fd668c23a11d1382e85c32f969136c15af2c7657d9485ff29a52dc68a9520ac92d8ff57c8e6f6e2117ce4774a514fa6b015180addb0cc79edd35f6d031b33f24a9f6d7c799daa8207d7d13259587ad046cc4160dd1109b2e264128e53c7f2acde2e784fd34ab71f5ebba01db506dfcf44c00781f553fd56f1fd48907b5c34d36d9dd3cc31f3924f81c4f1ad16aa967eff3028e73b4d7c0d8f313fa3dbb40818cdf1f0c1eabc9b4b43cf4ed53b1384525bab81a2ad8272786c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c50674767340b8a84eda210f899265d017c7f02e7e8cf6d3c1a6b628b6a18d99f0de8a9f22852f6f2b92c2478dacc64e1718a41b01899c244b171ea7e8664bf008df730ed98b8ccbf5e6500677f4e946fcaee27bf1e2970ff1a6513cfbcb16d9504a5ba2c501b81f0dec5d27e6b45e0a6759f0ba3444882b8d8ea8424670a9ccc2228b1859200f507ca3c4b4429cb4bb9366be3e4c3109adc30e8fb830c5c817d8d84f977c26b9b0b178d6b150c21b2ecf18c66b7dc00a6f8b3535c08e265003d432d5b56eeafccfb4bcf935b75e517fba77090c039a30d4374442306b874b7948444abdf0159959d34ae459d1ec46bc8cc91271cd2ebee21c969f1f84a4b1c5147e6490710ace46468a2c3ffac563ec5679d8a04d47f1014bddcc204b7a349dba2598eb0a6aed2e8c285a8b7fb6c2d466ddb1cc3dd8b8d3d4d603f875e55792e42ec701e6c870326b17e0c855e5a86bccf9605aa884b24cdc91397283f1b9c8d0caad9b7944528159081e6697498cd2720aebe47ccf8decd551b8e87cd997906ac1fa69581b4409eef9563fff83fb2c6e14dd0baf76927e384f34ade32b76d5b347aee4589c7288a2728b8672291fe37692c91a92bffec24c288a150d6aa5ecb29a85ec0e22bf7a1c701a483b1663b60b31a192b078f2151f9ea839b0e0e44b61d86ce16f7a8e840e17c3939a95d2e2aa5b85c2b0e2c6583707bf0f9d1b8e5be1a84aed90fca7012228d10c85b01b54c8ce01c00752e26008b93c0c12933e992eda2fae984d62484d2ff277f10af43a09fe58d388272c1c4076633295e47bd4ee942584daecd2380b9621f14420e1d14a11f211049ab057e44f342c1681284a94309909a8c34b3e6bb67bf7327f59f7133f3a878ee00a979761991ff3be72f0d909ae7bbd9fb9af68e646f7a078ad5dcd166e78b4eccfec920bfb815d038150c86c37de264128e53c7f2acde2e784fd34ab71f5ebba01db506dfcf44c00781f553fd5633e48417b07ece78ae98f84be5c9a6d04856eaac22270d55a72b90ceb8d650904225db457feee81b183bae056e457e85fda2a2c1265fd35b453e5aeccbde5b7a8ca18da2c10922fc5c651a70c7556242125780a477bf908c6deac4df8d2ac23ecaad69c968e70b2108560fd668c23a11d1382e85c32f969136c15af2c7657d94bff7633832726fb8e1934db99d96864860aff63bfcb92204e9f889a6b611716c7af656bc55475f58b5ce453cb8b49cd3fd86922aeb27af3c4eb7a5413ab246590615b07807e1b1433e4697a08af1e4cd454fbf563e5c5fd8b778bfbdfb243aabc328ad930c6c713b6df4be00b0b6835b32404194e584cc3b6ded0f4eef8d1d72ee12d0f8b220348a0f85d77a5feb6a362fa19ed036cf1d898cdf13eb91b5ab6c9bafc27ec88574545fc9cbe1614af69816ba230b39952e2e81f4d5aea8014c7dab9aabddc3809e2e6cf42d8ec1236bf1d3ec221b51d2ebb7a2c163fa075b5dd67911066d10607253b822dcece7991fa675bf1870c613fb90f8134525068bf7ab385b7b0be692ded634082fd1d0b6027d74aa60599ed0885d363bc355c4a6bc6ab20a23dad22f30203830ed5a867766f7a15c2ec5c08977174c52f487f268f5b2ad462a141dec988e2bd7b646df19e0ab393918404870ffa29c8c1d9c3f6b5e761a66b0f7bebe3417d8b413e74074c96b68a7458bc0fba2c4dd08f14846d5c4cbf01a205f97d43dd47f4bab67ea91db2cf79d288bdc5eb7b7625f05470ba87829e264128e53c7f2acde2e784fd34ab71f5ebba01db506dfcf44c00781f553fd563eff4a5e9d509000474ecce2af61a21b6db328ee557eb8f8160422acd75e6218f31f425ce757dbe6c795bc2289eda0219b6e3d67e68f6970ddd7907b389aabcfa38878e55bdc6c5885a5bcab5eda61c8218cf3d6d1de0d168d71016a77ecb894782d2d2d9fc3cf8dff674d6a4c9e2d8eef819c6e43b5ffd42cf47d5882271d3b824a03e1cf9bdcf661fb482e26e3c24e4fde44f4248b38411ab3f9d867fe731988f4f61e2ce9d0b7c5592dd70ec48a2094628b863b481a482079fa6e3109bf9d1de26f85d946bc68af5d2fe0b1a7c80a841bae547dd2aa5c6501a7cbb9a087a1dc826d992bfcb83c91ba28ea9fcf7a640337d9f04e079283cc28d1eeb832dc8f410bb023b71fd9e30984eba40a2367558179a6d415d50a0907ef6e6ba1463e2649f6c550e2a0b7b267ebe06d32a8655ad65f81ae63f67ff41079e167c27387a42f603fc10f9a76faa2a6601055a2d4ebbf189a0e860fd6d5251a51fba034731f9fb2d7568410d5bc3a8bcd10b4d79c4211482b30dfcb1b6766d04196d38d99d685b8d8fbcfa5ae5651bfab3cdcd547516e309bd43080ccd7e16986eb4d3afec6f1f1271457b882de841d95634cb07a1efda4749cb45de5ffa457072bc67cd7e248bccc4fb348378d367555850b4a9821c9207b487fae8d51bd3eb39af5f831341fdf8c468e0e8dc44644eed2ee163a3257bd10994aed1a4a93ddb35e68af649c33f2de3768e443b3e812115710c4a0f0f904c06760976f1c4157d12c212defca6c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c5067474a53878e51ee7b6525c3a3d7e98486c37cd26379e653c84206ac4b31fd3cbc9f4ee1800167265b68c8f8cdca1bf465170e5fc2a79a045543c5791b75cedb542c5f5e30d660f80ebe4130c8bf3c695847ffabe06625a0cf36320bf4e9f4d154034daecd2380b9621f14420e1d14a11f211049ab057e44f342c1681284a943099032634b8307607d7269ce14afb5011e4c7d8d3a41119cfbd7f9b234e712628aa54a98d455c961261ece6e5c6957e74d7ef698478ff7d418794b382b5cdc7933e5ba5dac566bd23304df13b1d3466fdad310d5d05a4bac0eecc1ce1c874c6cc40578428e396dfb67aaaaf28841b690a21ef9071eca5a6478b4772c65787a9db773ea2f320fa0db051ba309c735180be48d4cb9928488975b3afb7b63b309a3b48c5339b7cdc2c40fd35891680cba144e9493bc0e24d8cc4a9b60d04a6eaa87cecc465edb6ac05a63a94f5c454a0ace0d46ba800c23a1c5e0523a27426de4180014b310313649f3c8af4ae01c2580e2c522043baffd12f5e408c5c6c30711acf8fb3b4467550b8fedb0dd71628ea2190c071f91a796e4c5ed48e4f28785e99e6c02d00297c92cffa7af562f38a8113680f87fe21ab71b2fc62fa54258592a4592c4215e072c8449d8846ed81880f8b4d67d200fb12422e0f589f35b4293f130334ee7388bef767e4b0f9254986f84fb2bbd594ab50653837505a8b77819e0592fab3ce8880f64f58302b64670a1cffb04a8cd812029e79e42b88f77dfaf96688bd22ee3b71b815e04ae2d31b480c1e5576aa008554d82b0ff65e230b4dd551e0a98f246cd985be63712f5578950ed39dcf1e01ab03ea1a5a4d507f8f264236d795b2c4d85d71f46b2c0f1e8c879c20d867f5caa4e3d8a9314284838065068bd337122814b68b6aeb8a53a4fb78a37a68cfef5bd558acd1a9072009593957707f8402203880c81cec10b933791b31c6f49dcb9f5bd8d4910379fdb4f51d418881791cf93a32f7aad03029f09b6f85233e07978db20b756904ab33288fde304498cb61655d3c683a73aeda08f26b6876b59d639379e46b9591c2fd6f7a61d9a295a1e02b5fe3a5a976ed783b210c74a23eeda5cd347e8cf692796873f40190dc96cb664d86b29e588a07404bba504716d687769376162b6bf0b631112f545d852c59efe884326ce0eca702f778a5a37f9008c8d9147bc6d730fbe9657da0b32c4a4f69aa13df0cf63e7c00ecff7055e5a44fdaf84e82ab8d0518bac4cb347a7420827ee369b28d2e75a1e41e4a0e0af33a809477e4313ccb18505fe123a73c4f556ecc87be65c1b034c5d55fe9af06e20bbc2bfc3018fd7427d82832b8a8a2ee49243a025109dcbef7aedb4634c73d7491b8dc17b5532407320c1eadcd31a7f82020b80a865c7bdd7bb1085541f0a9d9b1a2efcb505f3a60e26ba06cc94ac6c25c89afa2d920a9aad81d6d097d4df3bb607c09acb5a713be8236207dc5f47ab1760c9bca007f1836e43594f986a497b64ca68b78004fdc984789ae55a91b0803769232b9ea281250647ec3ff260b6275ac2373426a151f4bb0e7e617a85a089f49af5c90d491a2730e7cacc0a8df5682940cb24f512bc3835aa7de608ac8462cda85c7911066d10607253b822dcece7991fa675bf1870c613fb90f8134525068bf7abd5125f7fc10487be5d168f24ecd345469f5c5430f18f9d2cbe655146349033f4edd35f6d031b33f24a9f6d7c799daa8207d7d13259587ad046cc4160dd1109b26c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c506747787f59a0cb3645f332e3a73a60e0c6a1ca9b4d85ac756e1d59d94743fbc9df68459e493819be31f4f7fb7b5df44c340cf39644f177df0f7bb390c8be0d0d0ea594a402673d9ce183714e2f78f726334f0530c0c881d9cf8f963043e91c84c46b32634b8307607d7269ce14afb5011e4c7d8d3a41119cfbd7f9b234e712628aa50ec3af8a1c9522b58aa0738ba0b1a2dedcbc8f136f4b401a946fb2671740cf44ef31a28c9feb8d09afbec4b412b446c576c88d8289f296c5df002124d94dd5f72f4f10187818e2b1b840580f82c5affe63d84a565caf9ab256ba0d24d47d3fc0612bb3370fc5ddde70f77c21f20ef248ea936daeffc995fdd1a0a88376c41e3f2b9ea281250647ec3ff260b6275ac2373426a151f4bb0e7e617a85a089f49af5589a1cccbd8cca4aea7bcaced5771a645c621e2ba29a3b33bd364ae3724d6ed219af57ad2203b107c8a01303e450045b45e1faaf5541e35d4c5d19791e1977a5af23b06a67f459a9529f0f54e60046915a737ddb62e8976485ca71f44b8cb7c19a3185a47298590a69506ab48e1c16ca8e1b495603dc7f54e01656bf29188e06fc09480467f7c85057e1bb9b843f95b7a3f610c9f2159cd33e8847ec9495dec1b70ed0364a7d6c7f84d98a304ed4bd799e6e36bd271a69ffa351abb7d7575f546c4b8fe006672affac98357e6ab0cb09221389b35f67b9c75336b08bcb3a64c0c04cd7dff5c2cbe3f4ede3f68849f301507072aadea4341c8be05551fb94b2932ebc3da34ad9ad9ed1fe959597b4affb245d2aec66dd99350386a18dafad07c29479516dced503ed50e545c23821b1d254d34f93f5aaff4cef97bdc4a3de681dfc1b28823688076885c6dc1e60a0c595b7da12cba617ebe4ed36831855c654d9183f64b4c434a6b3bffbebb63a07e1aa807378ed7fb4dd8ca9ae36005efe9c872fe7b85f375f7c10910636c84e0aef5cfa9786a727f5a6831ed9a18d12bb7b6a98a1d5ce6c285043518c21a57d59dc78e6b88cb17cd41176d0d4b8a3f78599f51fdf8c468e0e8dc44644eed2ee163a3257bd10994aed1a4a93ddb35e68af649c154561b2c4a14354511fcbe893ff72104bbda2a944c8fd0883b27573e49868f973e578d0a2554174ebacb028b1dbbd78ac5e997c7879edb1f6ddf94ec8fcfb10ad963dcc37e5ae7cb8972c17159860ce861228dcce1890900cf4bccde822a6f7b0cb6d027afb3b5bd2120ba02ad336aa56aee042e5d51d3aa72cb0615038456cdaa9b33d0093ad52ff74e5d48db5adb49ce6cfd1e73ad44e26d7f1585de7408069fb87940202dce96550fc765e6f1ae39d2b171354f42cb161d622e77f7cbb0202c1358a5ea39ac6d2b774fdea3c94ed0300f83dda3cfc1d4930facf41046d5c82d75f99ce509e0f788971f4ff20c94d5510b053f87baf263801333954d719da426d7eae95240072bd55ad3d0fdd50a5a118b28dfb12e258575044ff850c5cfebca007f1836e43594f986a497b64ca68b78004fdc984789ae55a91b0803769234c76fab204aa845f392378da8233952f34d7ef466930b097835f7640e0d66d04f691779b63a96ca03233e941af1f09a026c61ee1bf26329037b8f355f771aee966cdc717c89590f02a6823d32a878853e910776c32e343d36087fa23ce9ea0c6694700791ff53691a0ed15803a300994d0dea2e682d769d2f05c993a14cf3733ee30e4799418ceaaa94842ff80558c58a09ad925d5da4ae5502fda3c2af30f04a8dd13da295f2845b8f2e67d582a2628a615ac8c7b1c4d4da66a699d8e75064a2017e05306dc87c0314f8191da5e6dafe2163e3262ec8416fdb1790ea1f4c757693f1aaca84e48ba3d005b8e120a2f09bd3bb53aa91a09ab481573caa9cbde33b7944528159081e6697498cd2720aebe47ccf8decd551b8e87cd997906ac1fa60d11003043f4b5c07f419b7a181a4aeb0d33fcd586c8ef059c9ee64acf91678dd5cd9df3dfd56b995f8669a678c3b2d00dca516a4a4f418771380b9e5111c2cdf266acfea240153d768b9f6290c89435ffe6edd3efecb91a2c00686c3fb2de43cc036dbd9c9f8a634f5db0d6b1e362acd4a412fb77c980b30129fabdbe06c0eb5bcc0d3e7af061a919ea4c2a449913bdd55da458173816b3dfe55de65c4f42a3541220186044dd3eb526d80db59e96dd6f0c8ff4018b886728e19fdb838a48417a66e34b514a30892350e2e42178a4391602ae5bede6d63f754875054b3e0bb6ac20dd4182090d168560c5113545c6ca47606c24d1d0953a5ae2383cbd2f2796782d2d2d9fc3cf8dff674d6a4c9e2d8eef819c6e43b5ffd42cf47d5882271d3b4d5b1322030d922872ce6a7e8e34afb9e97d8c876013ab5e70a0d4ba9a5314d3825de777cf31bd5cb57c88a39aca7cf9c320a361f3585e79793b8e8177fa04c0e55e8212f009e00d0c513d24b4d0f010c6d317bc2e3bb6afbe797f11558620d6e10c3c06a6f6f8ced90eae68e139c89835dfd441554b54ab00afce5dca5e8f86ae8b37e6602394a9c87bec09d0fe7809ef937749efcf49bfa4de7e6394009c4f206d79e8503f8b9982115d209832eaebe9ed123f9f12d24be0c260e483a37c2593c534bdf4dba7d9b99dbbc8dcab94a926b7877ecddace2beac36099fb904a07782d2d2d9fc3cf8dff674d6a4c9e2d8eef819c6e43b5ffd42cf47d5882271d3b9b42b93defb6d08c310b601d35bd266710f72ac088dd7e723bce2a100ad5ad0a61b83129d11adb20d7a5e2746d9527b2e1bf438e8c9c5c54541537448b5235fce35e7913110775f0c197903672697191ed109d5a0df3e9cc45d4147f29df51fe6971d8222db3b9185656cc9eb3d585707f0ccb55fc6a8432d49afe7533a513c06c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c50674751dc515cd9444b7a85dcdce9f06bdfa9d9d99396c2a596c89d7ca49973be29064daecd2380b9621f14420e1d14a11f211049ab057e44f342c1681284a9430990fd1013469ac56b16737f9953f6f4f650414f1f0933632da86e5bd9a81a5ecedbc0f13d57be07ff21aaae961d07c583c0f18e5632131fc48445151b66658aa434a7f9dddefb9444886e18f25ec00ab23e724ad639ff5fd6096300f19f91edb1c5f31f425ce757dbe6c795bc2289eda0219b6e3d67e68f6970ddd7907b389aabcfd5125f7fc10487be5d168f24ecd345469f5c5430f18f9d2cbe655146349033f432634b8307607d7269ce14afb5011e4c7d8d3a41119cfbd7f9b234e712628aa5fd4e79180ce32eeee22015440de92a15d6790b3c909c639eb14be37400a04584418f27efdf794f1cd484077e36b1eef5d7b7a6008b4de62c078a48bc061dc6eacaad69c968e70b2108560fd668c23a11d1382e85c32f969136c15af2c7657d94e88cd98edfca8214724d64199b3dc7bf84c5a2157a70ea4193c9fc70b706a51a25547179f8e0d349a06f7da7d6dd864faa97a24dea1f416540ca17ffe33dafd92f59e6b7da609de971dc412b23a92f3ee9fa929b2ed53f78b49f582434965a9353f2d5b247690fc9f71f4308612e1360b09502fe2f93111eb27d0eca75e218ef64799e33751bf85799664d823ad2832090acf69e44252a268ab342dca9e24cc919e252a71953ca26081b13a371962dbec1df1e434a07c65a366c1da283717574ecabd6b3c7f7e2b83d9add32f5a991b00e4f88a71f0ddd7a8df7822881deb223d6ee9d67ee49005ddc374ebb6105e7469e792082726b28e323e734e9152a329075620facc3d31c753445bbe7bd11354584405846f05115f4a736869cd8ad225630d55b71b2fc7a8847ccfcdc0e7cece22004548c391c6de157bb7bd5ed0242147fa03c09f1f04487c8c79159741adb88fb2210e8e7be106f0ddac603de28e91bbabf3d258bd984ec6cde874b0cf40ceb7338edeeb7ea7a909a2b4bbbd7fc2b29895d472c095daf9c4ea206c0af74f8e94d678b205c41567be102bfdbac2add2a7626872d4473be905e85a1a5fbf54561c9519bad5993f4b3282c63a4aec9b6a3016cfc8312ce30b02a6d170cc3765783a44f433f479d47311c07a2a7d5c7bb9a03f7bab7c8abe014be59fb0d497445eea071a1007deda447a40a6eeacc10d2639e5b9784ca9fdbf07caf0341f53eb5a83239916cb53ac8ff4d714568ff97dc182b9ea281250647ec3ff260b6275ac2373426a151f4bb0e7e617a85a089f49af53c9bf95f3fc4d669cce2f238ee27201b696d789acdd9e358718b20daf8bd50f37a78e8093d0cd3be4c22231c1753438f80f3ecfce9b6073b367e8d7cc98d3037d8d9d267354c2ab5e5d45b029eceda2b2566233d1395b33345bbb9e41d15c9ed6bfb723d80dde7bbcab061647b6fa3397d92fede9bb47895af8f66dfa7fb3dfdaa269101fe40f79dd041f01d70b8caab9179381ba6ba4f47eb2fe5ae2468eda3cb0d68160b1129d80ba62712a3ee0332522dbc2ab58f1f398eec494da63553a0229f1ed361b1bfe50a7597741952f7f9d5d1f7a7f24ae4423f120dc2ecf5863957e07953570402d032fc45239bd4e214ddd965e4158f444c8e5760406d2b2b9f27ca11c50baf3d2f7f7dfdac51ebea13352a24715551f803f2eff2979bdfc5d7d4ea6863ff67ab75b696902c7e0bf75f74acec8d2c33459a6a64a8918d936f3055b743b724318812dd56af4e761da959499d93b92c516bdbe7a000c1c10d62dde984d62484d2ff277f10af43a09fe58d388272c1c4076633295e47bd4ee942587faf45b1bc121e205f50f1cf6f10dafd5f32dccd3aa15dffe4405ef14176907c22f428137cd0ffcff28f284232f7dbb651106948044b2c055c6729c87aa67dda1db018a243617040c7b4c9034906a8e0f19832c28fe9168e95e6c8c2740968dab48fec2b235387865f23b3c8b30b908e9fbdd7d49917e908c1b500c32a0ff1ab69fb87940202dce96550fc765e6f1ae39d2b171354f42cb161d622e77f7cbb024c65246164240f560bc9c6b6b9c3eab89f08652bfe8629f6a596c92ec0878f40e6eba87336e2cdd534b33188fe6e050eb6586150edf5aef0c2551cc609673dac29fb9651e1b78d1ab6997cdeffb835ae2d290c19810bcf6b03c040b8ee7715486c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c506747c87be65c1b034c5d55fe9af06e20bbc2bfc3018fd7427d82832b8a8a2ee4924351dc515cd9444b7a85dcdce9f06bdfa9d9d99396c2a596c89d7ca49973be29069c84695dd8d7c0e78101d904a71d938666a963c6808a9dd49137a57a1f4094d2244b133925068e8d825e62a94d3d31cbca63e39964b434e8a6a9e9e175d472f7ac39460dcec79b13ebd8cba3317610c6010f5365a8e313b3611a99f03b2ce6ee413561ec9f56b468deed56cf7bfbd0d532090e5fae960ceb82b121569442cc362caa9e6ccd8da6212d3b8d18258246ade75f632f469df101f7ffef27085f0b5c2649e98cfe445249efb0aaa192c014436034539bd1898958a391ed6c639660154263f1ee17d5435e234c97ad9a5c5ddde1a010302d25f136135d711b0e4a2cdec9292fcf8d8dbb3ecdd8ce4c6a736560e2138dd31bad43316f0b33dd816228ea03f7bab7c8abe014be59fb0d497445eea071a1007deda447a40a6eeacc10d263d4769fc21bb601d5b62c1f9dffa7afd30420432bd4700b67cddf3d418a7ac492ee35f8b95e0ab5015d128eea232c3a2357db11a9dc324314382054ebf5abae9c09625f1f903e9cc0363ffd85694694f928299e2b6cf75c0391c9237c8e2ac8216eebe31c02cc8c6a85099964311a25a9084416ad2f810148b4cb9e6511c232d64a98d455c961261ece6e5c6957e74d7ef698478ff7d418794b382b5cdc7933e56c4b8fe006672affac98357e6ab0cb09221389b35f67b9c75336b08bcb3a64c0b404acd2296d31a73324e7cbd73402ab481c86e24d14c78aa09333fa89bff6b420f44ef4461b6f354e69c280920ba8bf0908c25d315bc12e72431c8ef17ef1abbe47fffe6d0d5802cc3245b4da4c92c3aa0844e7168a8e4b4cd4b7aed5d170b08f7b8b77f6bea128707106c95433bb665caeb2740eeac04bc13f10ab0784b3d051dc515cd9444b7a85dcdce9f06bdfa9d9d99396c2a596c89d7ca49973be2906a5bc9de1cafb3059b005b105bdb8ffe3d6873e296a72951ce59eff11571f3184164a3b83ec2976ae350d230b1d1f4a95a886e25386807baf92163556d5d895b94225db457feee81b183bae056e457e85fda2a2c1265fd35b453e5aeccbde5b7afad913ba77a191fbdc18db14c666c32d1bdfcb6342be2c5fe709a493e58c6be9782d2d2d9fc3cf8dff674d6a4c9e2d8eef819c6e43b5ffd42cf47d5882271d3b6c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c50674725547179f8e0d349a06f7da7d6dd864faa97a24dea1f416540ca17ffe33dafd942b3ad53ded6b7a0b9f5d59c2fff7fd1362547ebba7110ebae95cce83a96b0a132634b8307607d7269ce14afb5011e4c7d8d3a41119cfbd7f9b234e712628aa555b743b724318812dd56af4e761da959499d93b92c516bdbe7a000c1c10d62dd53d98c309cc69c403058143226337835d60e3f880c16cf70877259e0cbb97aeab0828d25ab551d749778eac4b9f145dddd6024c62f86ea23d4a52e03a9c5aaef6c4b8fe006672affac98357e6ab0cb09221389b35f67b9c75336b08bcb3a64c0caad69c968e70b2108560fd668c23a11d1382e85c32f969136c15af2c7657d9429a52dc68a9520ac92d8ff57c8e6f6e2117ce4774a514fa6b015180addb0cc79039f05000000000000010005000000000000000000000000000000000000000000000000000000000000000000050100000000000000000000000000000000000000000000000000000000000000000502000000000000000000000000000000000000000000000000000000000000000005030000000000000000000000000000000000000000000000000000000000000000050400000000000000000000000000000000000000000000000000000000000000000505000000000000000000000000000000000000000000000000000000000000000005060000000000000000000000000000000000000000000000000000000000000000050700000000000000000000000000000000000000000000000000000000000000000508000000000000000000000000000000000000000000000000000000000000000005090000000000000000000000000000000000000000000000000000000000000000050a0000000000000000000000000000000000000000000000000000000000000000050b0000000000000000000000000000000000000000000000000000000000000000050c0000000000000000000000000000000000000000000000000000000000000000050d0000000000000000000000000000000000000000000000000000000000000000050e0000000000000000000000000000000000000000000000000000000000000000050f00000000000000000000000000000000000000000000000000000000000000000510000000000000000000000000000000000000000000000000000000000000000005110000000000000000000000000000000000000000000000000000000000000000051200000000000000000000000000000000000000000000000000000000000000000513000000000000000000000000000000000000000000000000000000000000000005140000000000000000000000000000000000000000000000000000000000000000051500000000000000000000000000000000000000000000000000000000000000008516782d2d2d9fc3cf8dff674d6a4c9e2d8eef819c6e43b5ffd42cf47d5882271d3b051700000000000000000000000000000000000000000000000000000000000000000518000000000000000000000000000000000000000000000000000000000000000005190000000000000000000000000000000000000000000000000000000000000000051a0000000000000000000000000000000000000000000000000000000000000000051b0000000000000000000000000000000000000000000000000000000000000000051c0000000000000000000000000000000000000000000000000000000000000000051d0000000000000000000000000000000000000000000000000000000000000000051e0000000000000000000000000000000000000000000000000000000000000000051f000000000000000000000000000000000000000000000000000000000000000005200000000000000000000000000000000000000000000000000000000000000000052100000000000000000000000000000000000000000000000000000000000000000522000000000000000000000000000000000000000000000000000000000000000005230000000000000000000000000000000000000000000000000000000000000000052400000000000000000000000000000000000000000000000000000000000000000525000000000000000000000000000000000000000000000000000000000000000005260000000000000000000000000000000000000000000000000000000000000000052700000000000000000000000000000000000000000000000000000000000000000528000000000000000000000000000000000000000000000000000000000000000005290000000000000000000000000000000000000000000000000000000000000000052a0000000000000000000000000000000000000000000000000000000000000000052b0000000000000000000000000000000000000000000000000000000000000000052c0000000000000000000000000000000000000000000000000000000000000000052d0000000000000000000000000000000000000000000000000000000000000000052e0000000000000000000000000000000000000000000000000000000000000000052f000000000000000000000000000000000000000000000000000000000000000005300000000000000000000000000000000000000000000000000000000000000000053100000000000000000000000000000000000000000000000000000000000000000532000000000000000000000000000000000000000000000000000000000000000085332bd698b1e7345ed8d781ebb2830f848d89a88d9187a9609f723405802713af7c053400000000000000000000000000000000000000000000000000000000000000000535000000000000000000000000000000000000000000000000000000000000000005360000000000000000000000000000000000000000000000000000000000000000053700000000000000000000000000000000000000000000000000000000000000008538adf64bc3f290fda577393d20397a0a8b633252599acf4b47f654b40b3e277ae005390000000000000000000000000000000000000000000000000000000000000000053a0000000000000000000000000000000000000000000000000000000000000000053b0000000000000000000000000000000000000000000000000000000000000000053c0000000000000000000000000000000000000000000000000000000000000000053d0000000000000000000000000000000000000000000000000000000000000000053e0000000000000000000000000000000000000000000000000000000000000000053f000000000000000000000000000000000000000000000000000000000000000005400000000000000000000000000000000000000000000000000000000000000000054100000000000000000000000000000000000000000000000000000000000000000542000000000000000000000000000000000000000000000000000000000000000005430000000000000000000000000000000000000000000000000000000000000000054400000000000000000000000000000000000000000000000000000000000000000545000000000000000000000000000000000000000000000000000000000000000005460000000000000000000000000000000000000000000000000000000000000000054700000000000000000000000000000000000000000000000000000000000000000548000000000000000000000000000000000000000000000000000000000000000005490000000000000000000000000000000000000000000000000000000000000000054a0000000000000000000000000000000000000000000000000000000000000000054b0000000000000000000000000000000000000000000000000000000000000000054c0000000000000000000000000000000000000000000000000000000000000000054d0000000000000000000000000000000000000000000000000000000000000000054e0000000000000000000000000000000000000000000000000000000000000000054f000000000000000000000000000000000000000000000000000000000000000005500000000000000000000000000000000000000000000000000000000000000000055100000000000000000000000000000000000000000000000000000000000000000552000000000000000000000000000000000000000000000000000000000000000005530000000000000000000000000000000000000000000000000000000000000000055400000000000000000000000000000000000000000000000000000000000000000555000000000000000000000000000000000000000000000000000000000000000005560000000000000000000000000000000000000000000000000000000000000000055700000000000000000000000000000000000000000000000000000000000000000558000000000000000000000000000000000000000000000000000000000000000005590000000000000000000000000000000000000000000000000000000000000000055a0000000000000000000000000000000000000000000000000000000000000000055b0000000000000000000000000000000000000000000000000000000000000000055c0000000000000000000000000000000000000000000000000000000000000000055d0000000000000000000000000000000000000000000000000000000000000000055e0000000000000000000000000000000000000000000000000000000000000000055f000000000000000000000000000000000000000000000000000000000000000005600000000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000000000000000000000562000000000000000000000000000000000000000000000000000000000000000005630000000000000000000000000000000000000000000000000000000000000000056400000000000000000000000000000000000000000000000000000000000000000565000000000000000000000000000000000000000000000000000000000000000005660000000000000000000000000000000000000000000000000000000000000000056700000000000000000000000000000000000000000000000000000000000000000568000000000000000000000000000000000000000000000000000000000000000005690000000000000000000000000000000000000000000000000000000000000000056a0000000000000000000000000000000000000000000000000000000000000000056b0000000000000000000000000000000000000000000000000000000000000000056c0000000000000000000000000000000000000000000000000000000000000000056d0000000000000000000000000000000000000000000000000000000000000000056e0000000000000000000000000000000000000000000000000000000000000000056f000000000000000000000000000000000000000000000000000000000000000005700000000000000000000000000000000000000000000000000000000000000000057100000000000000000000000000000000000000000000000000000000000000000572000000000000000000000000000000000000000000000000000000000000000005730000000000000000000000000000000000000000000000000000000000000000057400000000000000000000000000000000000000000000000000000000000000000575000000000000000000000000000000000000000000000000000000000000000005760000000000000000000000000000000000000000000000000000000000000000057700000000000000000000000000000000000000000000000000000000000000000578000000000000000000000000000000000000000000000000000000000000000005790000000000000000000000000000000000000000000000000000000000000000057a0000000000000000000000000000000000000000000000000000000000000000057b0000000000000000000000000000000000000000000000000000000000000000057c0000000000000000000000000000000000000000000000000000000000000000057d0000000000000000000000000000000000000000000000000000000000000000057e0000000000000000000000000000000000000000000000000000000000000000057f0000000000000000000000000000000000000000000000000000000000000000058000000000000000000000000000000000000000000000000000000000000000000581000000000000000000000000000000000000000000000000000000000000000085822bd698b1e7345ed8d781ebb2830f848d89a88d9187a9609f723405802713af7c058300000000000000000000000000000000000000000000000000000000000000000584000000000000000000000000000000000000000000000000000000000000000005850000000000000000000000000000000000000000000000000000000000000000058600000000000000000000000000000000000000000000000000000000000000000587000000000000000000000000000000000000000000000000000000000000000085882bd698b1e7345ed8d781ebb2830f848d89a88d9187a9609f723405802713af7c05890000000000000000000000000000000000000000000000000000000000000000058a0000000000000000000000000000000000000000000000000000000000000000058b0000000000000000000000000000000000000000000000000000000000000000058c0000000000000000000000000000000000000000000000000000000000000000058d0000000000000000000000000000000000000000000000000000000000000000058e0000000000000000000000000000000000000000000000000000000000000000058f000000000000000000000000000000000000000000000000000000000000000005900000000000000000000000000000000000000000000000000000000000000000059100000000000000000000000000000000000000000000000000000000000000000592000000000000000000000000000000000000000000000000000000000000000005930000000000000000000000000000000000000000000000000000000000000000059400000000000000000000000000000000000000000000000000000000000000000595000000000000000000000000000000000000000000000000000000000000000005960000000000000000000000000000000000000000000000000000000000000000059700000000000000000000000000000000000000000000000000000000000000000598000000000000000000000000000000000000000000000000000000000000000005990000000000000000000000000000000000000000000000000000000000000000059a0000000000000000000000000000000000000000000000000000000000000000059b0000000000000000000000000000000000000000000000000000000000000000059c0000000000000000000000000000000000000000000000000000000000000000059d0000000000000000000000000000000000000000000000000000000000000000059e0000000000000000000000000000000000000000000000000000000000000000059f000000000000000000000000000000000000000000000000000000000000000005a0000000000000000000000000000000000000000000000000000000000000000005a1000000000000000000000000000000000000000000000000000000000000000005a2000000000000000000000000000000000000000000000000000000000000000005a3000000000000000000000000000000000000000000000000000000000000000005a4000000000000000000000000000000000000000000000000000000000000000005a5000000000000000000000000000000000000000000000000000000000000000005a6000000000000000000000000000000000000000000000000000000000000000005a7000000000000000000000000000000000000000000000000000000000000000005a8000000000000000000000000000000000000000000000000000000000000000005a9000000000000000000000000000000000000000000000000000000000000000005aa000000000000000000000000000000000000000000000000000000000000000005ab000000000000000000000000000000000000000000000000000000000000000005ac000000000000000000000000000000000000000000000000000000000000000005ad000000000000000000000000000000000000000000000000000000000000000005ae000000000000000000000000000000000000000000000000000000000000000005af000000000000000000000000000000000000000000000000000000000000000005b0000000000000000000000000000000000000000000000000000000000000000005b1000000000000000000000000000000000000000000000000000000000000000005b2000000000000000000000000000000000000000000000000000000000000000005b3000000000000000000000000000000000000000000000000000000000000000005b4000000000000000000000000000000000000000000000000000000000000000005b5000000000000000000000000000000000000000000000000000000000000000005b6000000000000000000000000000000000000000000000000000000000000000005b7000000000000000000000000000000000000000000000000000000000000000005b8000000000000000000000000000000000000000000000000000000000000000005b9000000000000000000000000000000000000000000000000000000000000000005ba000000000000000000000000000000000000000000000000000000000000000005bb000000000000000000000000000000000000000000000000000000000000000005bc000000000000000000000000000000000000000000000000000000000000000005bd000000000000000000000000000000000000000000000000000000000000000005be000000000000000000000000000000000000000000000000000000000000000005bf000000000000000000000000000000000000000000000000000000000000000005c0000000000000000000000000000000000000000000000000000000000000000005c1000000000000000000000000000000000000000000000000000000000000000005c2000000000000000000000000000000000000000000000000000000000000000005c3000000000000000000000000000000000000000000000000000000000000000005c4000000000000000000000000000000000000000000000000000000000000000005c5000000000000000000000000000000000000000000000000000000000000000005c6000000000000000000000000000000000000000000000000000000000000000005c7000000000000000000000000000000000000000000000000000000000000000005c8000000000000000000000000000000000000000000000000000000000000000005c9000000000000000000000000000000000000000000000000000000000000000005ca000000000000000000000000000000000000000000000000000000000000000005cb000000000000000000000000000000000000000000000000000000000000000005cc000000000000000000000000000000000000000000000000000000000000000005cd000000000000000000000000000000000000000000000000000000000000000005ce000000000000000000000000000000000000000000000000000000000000000005cf000000000000000000000000000000000000000000000000000000000000000005d0000000000000000000000000000000000000000000000000000000000000000005d1000000000000000000000000000000000000000000000000000000000000000005d2000000000000000000000000000000000000000000000000000000000000000005d3000000000000000000000000000000000000000000000000000000000000000005d4000000000000000000000000000000000000000000000000000000000000000005d5000000000000000000000000000000000000000000000000000000000000000005d6000000000000000000000000000000000000000000000000000000000000000005d7000000000000000000000000000000000000000000000000000000000000000005d8000000000000000000000000000000000000000000000000000000000000000005d9000000000000000000000000000000000000000000000000000000000000000005da000000000000000000000000000000000000000000000000000000000000000005db000000000000000000000000000000000000000000000000000000000000000005dc000000000000000000000000000000000000000000000000000000000000000005dd000000000000000000000000000000000000000000000000000000000000000005de000000000000000000000000000000000000000000000000000000000000000005df000000000000000000000000000000000000000000000000000000000000000005e0000000000000000000000000000000000000000000000000000000000000000005e1000000000000000000000000000000000000000000000000000000000000000005e2000000000000000000000000000000000000000000000000000000000000000005e3000000000000000000000000000000000000000000000000000000000000000005e4000000000000000000000000000000000000000000000000000000000000000005e5000000000000000000000000000000000000000000000000000000000000000005e6000000000000000000000000000000000000000000000000000000000000000005e7000000000000000000000000000000000000000000000000000000000000000005e8000000000000000000000000000000000000000000000000000000000000000005e9000000000000000000000000000000000000000000000000000000000000000005ea000000000000000000000000000000000000000000000000000000000000000005eb000000000000000000000000000000000000000000000000000000000000000005ec000000000000000000000000000000000000000000000000000000000000000005ed000000000000000000000000000000000000000000000000000000000000000005ee000000000000000000000000000000000000000000000000000000000000000005ef000000000000000000000000000000000000000000000000000000000000000005f0000000000000000000000000000000000000000000000000000000000000000005f1000000000000000000000000000000000000000000000000000000000000000005f2000000000000000000000000000000000000000000000000000000000000000005f3000000000000000000000000000000000000000000000000000000000000000005f4000000000000000000000000000000000000000000000000000000000000000005f5000000000000000000000000000000000000000000000000000000000000000005f6000000000000000000000000000000000000000000000000000000000000000005f7000000000000000000000000000000000000000000000000000000000000000005f8000000000000000000000000000000000000000000000000000000000000000005f9000000000000000000000000000000000000000000000000000000000000000005fa000000000000000000000000000000000000000000000000000000000000000005fb000000000000000000000000000000000000000000000000000000000000000005fc000000000000000000000000000000000000000000000000000000000000000005fd000000000000000000000000000000000000000000000000000000000000000005fe000000000000000000000000000000000000000000000000000000000000000005ff0000000000000000000000000000000000000000000000000000000000000000a13b6058f9e0132e49bde2e64950afb0aa7484e4493683ee8ef299d180639218308e34da03f9452d8dd9ef049cc740f25361d8e47ca64508c9d640667eefd95b795e13441900495352072a94a0717d942bd58f525b5314b94c026cb1a7eead21b9132dc2e7443e05cbf83260b4caaa0c2f593a7e37636cb2aa4ddf78e87c1fb015a614e104f9b969a66f63529c57daf2e0d3e6e0e13a62babff27b73b9ec538aadc71f8f535f2b6cc532fe0b447252e48ff05e7d1cd3114d39fa4397cd1f871b962b3e3e3a1fd5f760424c948da5f9c4bf4f545b7789eeeacd172899f07d02fa45978343573bb4e66389de993ebefe658275918164b7544845ea3553cc5f4f37f5ca64202974adcc2eafad7b5b965c0890b073a727cd341238c7618846ac54405b681c92bc55f95b6952376d68885241da82761628e75b265d7ee5e10e8b2be76714578e0359ab7de210ac33271a78dcd2179998baa8e07af6f17cce583cfac65c710c7895546576eb4f68509b57dc6bce7e9ad38dbeac48da320d8370195eda658e66d87176d72fbfb551bf9e160db938ca2deb83b13ab6eb5842d982e94f7c5006d9214cc3c09724ff52e8b4220302e6930f425079c27596c8b25d7c1daf708acd39bc0b2d223050894a5850d0ed13e23f1895e37efebc85beb09db85f0a7774c4a083f4134a37486d33daa044a965cec106085a66a40a38c1c8eeec0528d67e188a820f135de7279e4319c0edc147705c0cf7e4462f1c506ef98079e4c7846fe47b98d83cda2f8865dc0cd117d51b3e0d6b3437c49b99c778b829030a00fb33d13f97cbfd59e524db72523b673a0efb43f4106158b7c70b337e85e1c1d916d68bad04c867a3835a6418fc5487a1812b76a1c7c23f897f5d69a0fc68f0732e4880c8666ac1e69a576c6302202e6fa23191f78b2cfed6e92502db7bf731163ce1b51d3cb735eca527214b01b9fefb5247f0219a56e05d1974c9d7cae01da878782d2d2d9fc3cf8dff674d6a4c9e2d8eef819c6e43b5ffd42cf47d5882271d3b2352c2e8d439da78abecfcd49a2ab245108b53908980f7f599f578b4a845f2e2fa637ae38e3b4e09dff4954a69a51d8ab20087cdbdf62d7de5442b0ec2d83f79de9ff0ae86abd7841155c6446e7984d6b17eb1e53eee0e5547acddf88d9e5d674d69431ae0482486c7cfb4a523c3295c454a6fcb7f3b46f5e01763f0798ebc87208569f45295512992cffcaed43ef6c8c357478c6ac4ba102d7adec73c4c9f2737397c79deb0f4dc3da537132bde46882029d6659fc7f64c3e0b9717d2b389bf686a8ce7806d447cf7b60b320cd9c16c0b728f53c4afaa9d5f609bb4177b7e70f93ce09a9e4089eaca6e763d3797373874c80dbea7640309a783dc5ddb75118ffbbbe410f0a961ec04b3915284fa13da577bae602eff5d5227356daca3dd83e46525031ea4f434544927694604e6a78f97612c176430d1eb7964b60d7574b778b25bd72c8e587150b14de96999e119f189eaa51855865dd5d663a2ed768db07824a4d0ac343862d824671d9e75fcd85d26fcc365df462793e3e3266471051cb502554456cb2e5fe7f1ae161371b0afe5c8864cdba570170bcd06ec3ba4cfe0cdd778f1d73948291c9891a4e3bd8d19beed4a8a2171694111c903426ad383f29ccf200ad7e0d001bbe4da278390a8cd03df7e8787267c5f7bc776c45471c6742cd08d9c81c4965eb2ca9d0a5593a43e08ef73e9f62ac08e1465dcf7d5746439b5099c9775bdc5f2ee0d46fba41fd7d4805bc595f016105e846a9ae25aefcd4f966c97f5ea719e5d07587691cb78fbd01cdddd3e349bd34078c29779189b723a59fa2de9c39da43e9195ee4d7a6ce62a7fb211a66c24b02f30df6f497ee1cfae0aa4e1733b3e224b55e2d6e8f965b9ee3ddb4f80a3587c785e948a99d187db3a8e3dde2ee7c194c7aa21749cd9785b712db8820cdb52a456027b6d341147e1bdc5f4170189da2a656a6b24cfced968948dbeb4502850572d3036845f6ccd15b73904170642db36371bf0120058a50160876819f0167d7b0eee18bdf5112fdf314d26d73cf7ad6d84ac2afd1f67601c3c6948e4bca4d251b2adf0e022e9fe88977736d3353175853814f369f81e777e4ce5bab529064a17ed3a6bcaea55b42da56bc711456cbf642308df913c04fd321d68eb861461f2c9fc14d4e3c8523cc2a36c4627cc4c860a380e13d83da3982a527ed618add97860c6150ce12f7020d8f38fbebdaa19505429e092a2322276ac79ba8be021ecd6ee25d97d248e235ccbae902bd698b1e7345ed8d781ebb2830f848d89a88d9187a9609f723405802713af7cdc48bdb3451c6fa166e4762bebd3f3966e41c25e2220d966ef8dc2c44a6d88eafb40b1bfb6e4e4a258f54c0a98ee3dd0da32302fa7ee415df9e6a596414df43bcc0da7237d7c2d09af1b465a6495de5e4189d7c198e4b5f52707c7012e1b00ca3959bf8c9edefe638c1ec5b146d57d2ac563e9d07adc33c1b310f1ad4e8d1f3dadf64bc3f290fda577393d20397a0a8b633252599acf4b47f654b40b3e277ae02505b9a8c4ac21c05b6f51a028037bef7190b5b264533a58b8babe624c8281c82d14919d1b16e5ccbdabe8782f5dc24eb4502255915d0f13a4a2d90e1be691a227657e5a374a488faaf5302aa0bbc7959695e9bc1d44a2af2eaf34fd6d3a93f8f3507da6b7befdabc34e94194db0aac7c3699636507724193d2780225ec55af2c4a219677aebf7a23cda81ec06a300a80b63ea7bf902234d86afb84e36fc6541d3a64c93bec01a1cb360bb1aef5bb67378e205001d90b866ee48d1e87844abffb6276a73fa19ec414b50b38ac6f5232fb22dd0eb960785e9f71f812f6a6e0fcaddc95ae98f3918fca3216b6378523647be4e38d59ca268aa3c1a9c3ce070cbf6b39fe987a35ffcf1a92e65c9efa8f4e8c0767de14ad272350f9061c4be065a9a75efe0190e8ea18f13ab608dec45593ce2b7c0525880e56eb4e404dcc11ba86099660cac1dd714e377123c1d18769055a69ebbda1fd65ad858832b24cca7b4bc929742d581c95ce21e6a4a0d740728e9f36fa80fa15d00198b4b6a69d93c2854358fe773216ffb8ffeb923aaa45333aa52f58b8c0068258acaed10791c0ffefd0c9c2a1af861636f89f16a471423cfcd5890fe908a3c80536e949f8044680d3e9ab097eaaa1b3ff9066dd802815440465c5d513adde08498706133dd1e9901947ae5d24965681d4fb784524756439338f251869eea50a470c5a87bf405e2278f37646052abe0dd4ee2759f07a1f5b5c55e72ef17cb16ed67fdc2d83fa10d84091ceb7379751f681bbf6fc09cfe110ab1ff0743b052ec3a372aa8c5e36d8295845d6981ab0dc0855e0356e4602ff5f52e952a0782c778f2018d213af544a8fc785312172c7d146aa5d4f1d5600958129594dd98874d823a14d635c498c027964fd4a4aeabd74fa7f272e60801e203d5dace7825ca520dc549a4135517c083e38ddd2346db134bbccee5f7e18567c42df7fa2be9c371d17877b23654812324e31639d0ba36ebabe680ceba597830b3b56d2528ae4d303c43e20ee487ff4aa057e61c7a2737085077652bcd273aea8f2ecd858b76843e4fedd7f97d6c2a52d2b3bbe00f62016e789f5baf46b7789d0707afa5182838d294143d99a9ad0a9b8df098678c9a4ac81af99f5fd324dfca9614c1d446100845803237eeeb6fbd2c22f0396a608a2d9b2c1a4b62331a41f2a5cdbbf8b387189dc096d00775637813b1d96f679ef532f3bf54fcf3dfdb64613768df5031cc07f59e5cde8070840a9496794fd355886977b052e1fb78810b42e98b52a2c8a72a46817d015a71da1a8108baba5b4c747770b6f8ea6829bfcad673eb1d444aa6a96b463401e145881707738780acfd8bc46770664d4330f58efbead0ad86fc06bb4dfcb3280d37ff539d5d68b5fbf6cd7a371b1615254d17cfb7c373e39d7896ce0f722137a834f5eead4ead460370675f9a1e156aa801457ef5d1335f61d0c2fc9cb2f6b294bb24bff0fece739af3512304317dda10c477f1e96b21d927d971b6900da8dc155544be04c4f1ca553fbaccb1c98857b8b9ae2d8565bfdf60a8e370a0c0d1a03e48e4b5dc2d69d6ccbbae206a9938001022482b4d3fa74643546f5499fd1ea901b6a4badfbf87f9ecf3e46d7cb89f8f431959362eb72bc6efe2c92847b7e77f076d75deab751d3d26d3a351eadef6d7708b02082242c2428cd86f7b62187ec22121bcb32be23e402153da8811b4f245060c0670e9c9ab9215fe05ec8803b3c6fa55ea5642048513779ae452d4226ebf571e60a2e940b38ed34487a0954a66e2d6302a0af1bd9a711ee169646d6e58fff5e1c4827da401e967e0845a2eb08fd74f1ef3cc3602ba9261651b65a32b3a607f00fad58b8a3567f1f13b8ba299d4c36ad1ab39232853ce857af1da7cc5e530dbec616cfec87dbe26c52568e6fa041de669b8bb04b85ba2c8b09e6484ac8eedd05c92e43b73c2dfc19dda5eb1ea825432cf4230550ba732b88b7d44f3e85935ea1df4ac5b01695a70947cd076b9671f74e3c79b1b70d93c8cddda20259163aee611a5eeff8507dce602a957d0ecbcc7b5ef8d79f63f0616c14d53cff03c9009082ce4f60d9c1688620e76d7adb0c015d7a2e97d4cba60aedca36cc968e2d1ddc16152c68edab2facd990477e813ca56cfd7e7cc5ad9546f344e9edc2cd763059f29278062e034f1d84de869f656109efdf5c77b260b5d742867352387ee7cf0d722f15edc3e692a3cd6916ef783779039962d29edd045162a82e5aeffd0557ce9bc766aff4096f5901d2b2e96aaa647dabeb8dabbbbfc4dbbb0c3be5cf33e1ca95359370b7c2cefc19ecc8277b737e3fb503bd35106efc21892240d2bbed0337834bdc7643a6a02bb0970f10e5e7bd2f7e80462dd0a9204cecc7ccab9a6d242b97fe29df96b0d4beab874fafa70ac1faadf3601a7bcd71bbfaa738b96376266bed7c99f939ff44b52f232a6cd627b1a06a0c1ead66afeb207219e28e4241b5da1718e20ce391af998fecc23581a93b9c6fca686f5110fac98124e076bf53881a7d058a4d9345ba8e23b10fdfdcd4cd3ce57c3bb04bb519a805ac3cd704efa82e16cf8403ddd13683d0c882caf77db27763784fdc3a47fff455137d961f6bcd7de06cdd1b18c86eb985e55868776188dec3929ee658812fc187f848f8594e5b8d097f5636f34cbcd7e607d7faa3ee914bfff7ba5656bd2713545b41266c1299efe58c77361b132d427a9a3cda23caea6d8fd2094d94023523964a80a84df0b7ef708c60cfe1b8f5de7217dad2011c8f2abcef9ed1d06281b0e730e37b06519ce6dd924bf981cc6d8b0f36c586649cdfa396b50f99d8796f2efc1899f4c35daa55f18c663d7e763ccf2f0ec4c28387e174db34eddc93db17ff9895cb0cd199fd8708a225e73c3324ce3d7436c1cd961d24f36eba41a743283bb3cc220507b767151a3b9d6781cdfd390563b5aa7dcd2d76f909dd802163d9b315b0efbc884c073769539cc149a89ce60258f02de2df1f573e46335b86d80385c65f90cdde21453332d22cd242a5553e5355e0bbef3effcd3a42c89116823c93eea6fa35e891d7b7dace9d0784ff9d5bf98c190a747a05d2d10340cef0398d4757d60c6b03e3ff00ec2072a746bee850b1141b28de7f74852d55110062248b05f54db102b5f0e712a202892025fa0ba8b0b14520dfca83b36d0dc6ca8c680d352e083a59e4daa84ade51a6643d92bee25dc587b969d181f4455b82a0d39c156db98ea6fd8fed69f7333b885bacad591607f81696b0bde4789e14b4d5d329a152bd698b1e7345ed8d781ebb2830f848d89a88d9187a9609f723405802713af7cf67357895bab421e15be5763458d878bd06db8fa5a8f456f3db7c862ece05397de057fc14bb0e445a3217d7c630ca5a2ff785fe3b1ab42aa1dcbf4ceab0545dd34b84e5aadcdbe20818cd127d415ab86147f92f11c11abebf8415fe1e4aeb1886c561b0a472b5ab4c009d3a94cdee68709c170332b02365fa4e9a6a94a982ca539d6998454f0b10d76c62771635afc16f539bbcb40b29141d53f6ff5b80b35a12bd698b1e7345ed8d781ebb2830f848d89a88d9187a9609f723405802713af7c5d2b1f4c7483386675314732e44be2fa113f07b934cd1d0d7de9ea54ed632cdaafe89c859c3ab8673aca601cd41f7379230c388518846537e949db7de84f819b80993c00b151f4680410fd3e7e6a1ecd8e62d9a652b2ff5e3b34e359b6ae6e330e242df258deb182d3eaf44a55f63cec79f1fe32a16095775f2cf485c1f8007800fe21e2bd749e197cb709238ccac991452f18bf7820159abe13fcd8fc4343b2ba6d38c84ca8d6d919b7657c8c86ab2f3db7689af5d8b039ed2c6d6c64eeefa64a8bbbfec2a8de9ab48d682cb967624d06f60f39cbb3a6fe65640ceeee2d7c105b43ece571b3cff74681adcd60b891981a3e6289efe304d9162ebee536ec2544bd2a600e30fd68a18df474a2d9e05695ee390a32fd26655c7109506425ae5fbd833c327e30e0a3e8759a59c4e0d6c2cabe86af3aee2e90ca4b961fb984605c978fd6d9cd70ab7fa217a598b0881143ec585f1e688c96b4ac738a7a0e7431a5aab286689ee62d07d4ed2f21d0ba582abfb8e6ec78662fc2bec6d29b0b71ccf8443eafceaa441e8d01a64a751921cca1c6b8f71be48ab00adda1766be3cd042458f2f89fd0f4c30ccd38ad0746f46e2d9b1b8c4fad7e5e59aca22b9655bf1c80ab6c299d0bc4785a464b6d35b7fb8d83f97e8e4e079a34abbb62e007b9c79a12211f0cf8d0e57f4cd28cf7a81e78cb6382abf933f98f68d7199f9cb7484b01edc42438fe829453798b6710c2d02ca0f2c45151e87a3cd8c62e3fe20af5d3578a60fa97f2690cd37ff46cd195700f6dfbb7ed060b8d6502ef78e4af347fc307ae4d2cf3a9ac47cd88bbbea45a9bb1126c7ef03a1c880d0ce43458ed16712241b3831a9bc4d156045b6e2ce224e63e3792977f4c780c0053be893f975d6c5cbc517d4ab3aaf09dceed8a9706cb5beac5ede280c30f7c622c249f4442a993c3cfbed5ab336acf0b3242a95736113b305b3ed5584a928b3ba49a7d028dfbe302d880943fb7faf068e28d1210777cbe75bf38d28aa65f947ea038601c10e55817da3381597543a1a5a60cdfee870e005a13cd40c2839be974e130c81662c73bf8e34ef4a37c40b536d888b4cc38e3bad03b76ec7b01c7a94066d6e8829defbdbfaea87c7123bd3ac7b06420db9f581000ada7ec3f9358e5a2bd79f5200d0fadc610e4efc0fafe9592b8a70df4211e511e1929ada0e82780f9c9b8c5bda83386a94f2ac1d23bed4e2e5e804ec9ed33ecb7d95957e83f8daf8c4179bbd75851510ccb613f588f54e1d69fa14ddaf0a23933545a4405ea4f7368ae4c618ce25f0934da414b31232093eb39700cb2a0b650ed6f1534b8e1fd3a34792a002a5ab07da770d1516f129c19856cfb7474e5d0bd0ce4ebad57963b68b25026d4d91ce4d8524765a5f78735c2984022ceea8a8a98a525198c63f4c1cae19087d3cb50becdec9bc41cb97837ff4b1cde1fc936d08a242b844e1f104278ffd96efe44baa844fdc5c8b66024d8ddd2072bc318029588e028b7ecf3e2be104f50aa1546704b6da77d6a88eff432d86c6e0838dcf461dd5e535d99dc7fd7871481615ca2883de5d9ae0303ef6645743d686aaee32301175f767142460c9a649f66a909274eaeee98743f7756f71b64df8a92b3ecf12eae8c9f0390526b4867d11cc75fe8e8bd65302a002006cc8c5ade126520cf9cf8caf9d2ad5bc3b663a56ae016c02dd6780327879475129822631a0dbe6d0c98cf72b37c6e45d0137636caac5921929e4e02dab9a237304d8f87499977440f3cf699bf14a945b39f54fe023f8b2a1452416277d16d0de51f245536e9d1e2e5d902d3c11d4125d236bcebcf0147bdf24c8e6e00155ce19f98fd8f6bddcdad6897981f4cca4bac8092f8f87b4e8c688cfd0d62c35b44200797c1e665d7b76fa0c0fadebaea584ffef4e0da09ca6561f7df3e48a0c6133598a90381d2aefa0131760ca6b548e96dfc9f9ec695531dfd3d6ce7a853eb00118c69dc380d067cbef426b783b2c74402637bdb89020b5511415f91f6f9349f8eba9c4f3c2bc05f74b0831c182ebfa8490c7c067e7eed1fb698961b1c7823ab8ab6c1aa15972d1434adc30e8f3c85f079b8607c56a846bbff6451dbec4450710a23ee91cc488bfe265a8a0e4d4334a2bc722a4f90b2739865bd918460bd373a477598803ea3c549ce1de93a5b9677e8431ad77bac1c82cdf9b4dc25351ecf2ae4456909ff5e1168d41ff8208e2ef0c24a42bfa1051267ea7bbab534a481c8bd1f4aa46d3571f7bf5341b13004cd6ce3303462f9e1ab9dedf77d32a9b73ff8bc8b16e58cf9eb73671980f7b3504f7f604e83011f011e96db5e1952314963d628af96fb269388c9b2faf5084c447dbf789e63a537dfb5e85fbf66066e4e592eb3cc015160c3e76f67136383806fb57a2b3dbb75ea544b5725040135aa3c6fe3bb49d0f1c71e1bcc8561142af783c5d33ac9fe7a3cef1b620cf8b0b9701ccf5db08c35b2af538da0b22d091d56d32590e435882df560b4c6b9f59a9f637c1bd2d1387b28fcfa96afec4073fd99a522433a23c7b1c6418daa1da068dd6b650f65b728c94afaca693823e1799c70eb328ee5c56147f03c9a76a9048f43237cb9984bdf1551970acfbf91e42c1c581619fcbda3adfcd60779efd40f780a449750e892812fced988d0958d4ad1c7406f5336ba122d1358aefd45084a646a8b0f3ece379696195b92dca9bffca4f13903c95e73d0441a6447b44d51d1c22cd08877e2e0c6fc061633d52ae212749a7da0ff53a5ae1bb866f47c931926a44f3f2613ebd73510eefaa25a3130159c276e2b9ecf704f0a723b9ebc22eccc3eec9f3cc5e1051fba79f5512bdefe627fa4a77f015051c09938a2280c510a145384402165a4787fd35a023f74dd2783192b3864313252974f28319f742054d626b2f7bf91a24b426391aff959eb88a48dddccbf70239a18d472b904e5198bf0449ff6649b6dfedb798e4ca70a3631ccf0683eac3cb032014122f7b362ee0b3c13f04eff4cebd2d51e0c21ccd0b6f093c03be9ef8af55ca22a4c23c14a679bf04a0a54f2d0b042866080a2f0711f216645510e13406fb23ea7334bf9acf84a81fe3b0f54380090027af1dee6f7211387f875c1c75aa677dc9f8f46d3e98a99141576bbbb3e6a84079ee9b5cdc535034efb06b80840ef2d087bda8bab888cc02221bcccaa393a4638020853a40dc5b99f62cea027ff5c3ad18ddaea13b46daaa473ea417ba9af0d4635e2c54fd22b515088eebee73e5a67181394e34b287b9eec56612077060ac55f9892c73bcdfffc436e840b7c7272df1f438775514bddc4e93d4f7b06efc2217be003adfffcd3eab04de442c075c4d7b577d82f51f5a8bd15dcd28439884b1a28362b3d844ac3e18f2141faf17b7aeb38fb06219b153d8ae93d7f7ac900c14237a0439f57ef4a018c52bcbf474ab0bbdf6b728ce51b7fdb332f8bac8955913e9a2537841704400cec5b9a0327ddc97c73d5086ca4c265ad6f3081a21876d312f29e640d14c126eaebf75d15961ef7588e872f78cb4503051638a4dd8a7c2c05b81a6d9996c2f4eafafe2586ea424f5a72ad671e5408c097a8c91873e3f2050d34fdfe5bd6b1be5a817232650b2060153c061ba48e69a9c35ec6c020b0a3860c8f0b4ae5a3938b74836f1d1c34e2f8e9145f9d95cb605e51ba0012b23f462eaf9cb7cb00699a074d0f5565aa4b5b6d5326dafc36114ff6d8b80e7023e2ee3841ce8d29aeb69515631a3d14bf04691cc7bb0a8c67aca047f67a41c6b8782af04c3feaaf100b1c18165d02d1460405bac687e0ea3ac9df7f571ef20bff621fb7ffc9b4afa4097273416844f63d93be207ab69127a7158c3beab96d5c78a00af3acf84a8429f80c08ab1144494d78399f946b649397c3c8fbbb0c1371e8d79f194c002053960ea5cd80585d03f32275582f557b56662901422ec44fb975b48d9483bcabb7a629bd73fbb6e596581fc3d726f9ad047676d81bc81d61df6ee421bf01cd81a61ba4cbeb5d5415b26131f3b79f959528ab1b1df9e5df6824ca0b3a99538ebb514524a36c94b5911bf64026ef48e00d840d55810a194967c14475046a9362f08ddda6aa9b8dd26465e8c40338e83841d01a334385708dffbcca718fd73284274bddd244f8122b537fc0a454cc29de9526cceb969bd96a09a2eba767f191cf7a18dcc384239f0df93b23b4355e4907e1c281fcf0683f1230572e9b74c199b03c7c2ea5d200d581a5eeb06da77e4842c25364efb81b6114792aff3825f23be7f00355be30507d7049c723f225b1ade92e0cc4b22b91570c24f0bc7aa91c6d431714b061a73cdd573fe82bf1183abead77759958d6c063577138aa195a81420d3222cdf55ba401d020247c3af9cef0953fd5bf72007890de9230a3492242d572eb1b0fa55aff51dda50ef1abe1a296d9791ca3ba249de7a9f8e0b948fb2d41acd3c1834b91daa25202ec9f7c2f7bd104d44e870cb4dc0903c17847b70af21851fcf58033f0d0de5c675b84a2977d77345bd3dce7a53c9b86d089b58604938e44c10333033768c273d8e4eb6ad9dbb701ede2fb53d3cdf6c61db6f4c5f87897fa7b87974aca79ce05999710619db5c71ea5baba770895abcba4adedc7cb080585798a0a01f1c2419e8dd61c7a83622785603d7fd255a6d191f199996e8152b784335502b77dd7a8479854d10fce7395c7fe1a0d2dd34688cc19b699cf092e9e9386a1511c84db847769bef26c9d8d00d8e646596f8bb9cb27d905ebf8ebbd54a3421c28484acc3af36c7edfc26215e7d423f01e042bf8b86bc95c02b40f6a447079a58a9b740c21087cc58d9e372dbbc3fb0a1df628d92a173eb346abb94e4eea2d453d6ce4ebe0b0e73ef3e730f6956b870ce9591c44d60857b8de3d2f99ef4257cbca0b725ee491f32e4d6ce0313c72f4bb2a14ee70a12168f429cbd25e1d7d84020897d3c2868aebbb708e35ed1cfac5d4e28591d424415982b6a8debf89c072b5c48121dd9dca9f51c153dcbe6f40382c6953574d0e9cc01160b83de426dedc3cd1c4efd6836a932234c55ca7341eda701571b006e890912890637d4ebeeae2cb7989b55cec028a9aa5803b1b2cbda0b3c8c5206319ec456c5b1e4acbbd7f87b13ebe45ea34b03ca36eb1ea37cf26ffb8e29b03e8e7f547c0f3fec92f9363c04599db578c4b772daa1d22c93a1eb507c0c59573f5e35410b3aa60e178354f1f6850cf4f02880744bd6c3bd21336002f32986ad29b9ae87d48ab91ebda748a0ecee25f903d90457264893e83c0756084ab7a1a8976fe35ee19026d267471dd05000000000000000200000017a85f773b1c1708740811c2310b2ad834c8756255da6fcc072176b4adfee80f2ad94908671f2542412cf496027a77cb86d4cebac31327d4894abc530fdbeeb7fb3b31426c48c78218293259fc4edbc5dd3ea916c623ea25613b130b953050f873bf59eee2de387e1d6b4b2f9d0dcd5ac18de5e53c342aed14a52ab4d942b94d2e4d1540f3fe0bddb7f9fb83d7adc58f228d22d29a2b824d64c020621dbad6ef983ebb3aa713f0110280ff5cdcfac1f44f8bcfc5801153c04cba2f274caa7622ca06119fa6bf6bdd2517d81ec8fcce2052dd5ab551903e952e5e2c0fc80ee6b501b709da115fa06141fda12b4e1cd9e2b212aff84dd792f7d55affe4293dc7bad979bd3125a796532a875db566598f0fd0db22f82db895823e676e799439078d766c917185c445f516c7f42d8559d56bc555a8efac897a4e958efb7525c32303cbf7c1b6b1fc1e3a136ec69149876bc5ad762b613b70ec998a96415a1c7c369584422b6bca1d953a775719ed7b5d9e34ee7b08229b1d9a30e409f8019efc740c32634ce8434819dc152c16dfa201cac267d5da54c1f8808b0d980d9eb9b8c8196eececc1ac03f1a8e4136def5a3edf3f13ee5fcb0315b5280c62f6b334fd233180ca9d36243935530113302818f09f31926490b5dad856c2f412c2862b34bab0ebbf322da02db1d02d84c4a2ab1c874307bf36c769e7b15d2c64da49e06bb1c5e81061cea617d3636b1ecba387a92eaadc577343fedca4a7112e31168f4732ad4dafbbe94e9dd55eee91584281a3acdf7e1bae4dddb323072e0ee4acdd6ab6c2b166b4b2a3813602deb0ea14a8986f3bb56bb85d0f2a9944a7f97789c1ea4812488a81642efb6c643e705b49415a8b733131bf3f448d0462de44aa76c7ee8030ce76d9302c6ad2968fb5cd9e72619402923bda0f2bf225a6d2f663555732dac042b52f74f61a272801e9136ed25121dec62a48f0846f2195a6817fc3f2b221ca1c72ac9457d26cff97db621e8675ba5cc9de4897130646e2ac6926dfffae66b55705000000000000000600000017eb174bdc344481ce794629f76500eed4a83b22161ccd8ceda49921c4f4d28d558007de2cdcedac13f5d52335431f699f7230bb0de78265ef537da557f58b26c0643f3f9dbaee26f0e16bb94fe1a2ba7b849f73a59482869778430aa2e0ebcedb46a29303eec308ccb1783f1ed8ae474557da45648cbba98e09cd75296e47282e9b6f537f1f11fa90fa69abb453df655fe0837e3f851c9e82b239162f3c6466fd4d1540f3fe0bddb7f9fb83d7adc58f228d22d29a2b824d64c020621dbad6ef983298f112869318150ab4ebdd53f5ad32015ceda62d91fd60bb32b3f531e434df146e35f61183beee1e291bef3b8669c31690e5c20cc5c1595521e6013563a1091f31581d7ca2c13e7f59b767e3c8e5cac4c84d3de4d75dfdda03d83931f37022aa1f315a03f1b1299f60eceb71fb0b9cef9ca8c9cf43ec1ab6116c2029ee2523b71f82fa90d5088be78c1b77d54e9f8a06826b4ebba3498a20a8acb9cf134589ce82c8635aed235850eed3c76496948b8819fe84de4f4f3b04d61d390c32a1d23290231a4c6e09559ba7cee0849382bac231a0abd0c9b00f0c7c2e75f4c007cc8d680b4629363c484210a83313fff9e385f1c084d525786980992330fc5beff0fe9de1f1802db90578019508d2e4826d72a14b260ac1515e12db55ee6fab175da1011dc7f3bb7189e1d73fda024141a7cfd18408994409994ec83b0715b91cce99be613f181dbb2aef13e03be7e50528f5bcf198c5eafae75ac8f37fd07d75f7cbe0d2414fcc257f1cbe95e81eed876041cd23b8c85cd6b6c63f29989c87fad266b354ff97fd9b8cd647ea542b1184ffed9497497f1e9bca4f3b57ac26ffec407400c4fd08b7197c21304fc32fd62ef1bd1d52b52706f6ad9b6c6a47b254190c89003b9e94f9d34d336d4363d6b57d40621aec7f8091010fcdbba32bc277b3733538e91fd7c94e78941498ff468284a16c4e75c51ba971a953753db8233850f63f206812f2887f3d0cc6ea13ef6b95ff5a29ef2b84761fe8b57c736fa62a9f9d05000000000000000700000017d62f0799aa1ed570a99a25b2b3748fd3c5856943e7f3efce444c6f05e8dfacd69bd9a25b4ba7900ca8985d64bf1a2432053c6b6bf9b4d1a1d7c4c3a39cd51cb66896e6b40255fffb085804e2efb13620775f1baf32075cc7bca8030156cb5e9cb1cea99804c0e91755257a3d0fe761c3e901c752f24907b33cb47e275b2b2578843535aa3cae8addf1ee6b18d4dda485be0ce8ef1440df049d54002d6f2f240083e941144389bb7975fb8b9635fc55ae56dd4325dcc16399b5f80bd438f2a9ec4d1540f3fe0bddb7f9fb83d7adc58f228d22d29a2b824d64c020621dbad6ef98b831983bfde379c0ba1848dafa6907144cd13d2306293d9cb49508a4ec9e9ad61952d00e297a34a78c41ffdeaefe3ceac9cc46f6e2591f7f32d51fe95310212663ecebe858efb625cf30cf0708f7d2a9a70c4cd8779da4aaf04a65f8d7dcae31f5d19984cdc0984810179dfc65da5338094c59f8fb76e22644b73b978a85bd5748a154ad67af5e7d8efd23db8cb7c265a2e35806af8e96f31746e877a910a0580d4ac8d1e22c96ba662517e56c8b481b904d94e3e20243c11eea8a58147af4fb829688906a71bc4bbe0c5d87da03c4ddadea448a7d10f98bc86ac219bdf4c64d5fb167b83ee9bb4e6523e828cb16a14f99921f79a4f11fb3ab011ba5640ee820205ac30dc444fead47175a0bb79673fb63b4deecbb71b772fdabab29e9555a0a74c947b9698f8db93e368a8b41dfc9b23e0497fba6de28815edb30cc9cfffebfcea00165017d12ce41d6ccd3af9112b3690961f72c3bf54a6642ad53d2bdb9c0cdb4aaaaf8f6737141427bac7e0407fe09ecd5f3bb866db1c5c1af4d9c9037dc60a7ab54778b0b784b66b3badd37e86f0275e4b154b7bba67e4e82505803ad803610fb2d13c75d83f4dd5a60a3cd45e15559067d9d037f5d5d0712b2f78bfef51c9751db9b01cebb7fb79a1b5f61741757a233c3ec0d52f8efec28459143b3d62130d7a64e43ff4975000c4a19aeb904eb74b4f1adfa13285b3de152d88b85ca050000000000000009000000174f449d6ffb62ed8fead406ab1cd823332b6ae19dc3e59372f7c3fac03917092b5910a1ecbf63bf64f6755412bcda4ef96cd7b0269ec7e382673cfc54e0b1c668c205ba16287a93c3a302b1431d7f4d1ed57bcdb5d5836d286cbe44ce8197b343e4c7c44480573168fe9778a1cbb9918ceb9db5718d7a62ef3f3cfe3f3f7cd05468df200265d9b6a1d1c78fca0c4841533e5de7aa6f5ed55eb2180dcfbac210ed0efb22d61cc16f58730625cb3621a502f4f3c815aaef2997aabab751e27efcdd8459f460bb39fa73530103cc9b9b649c4659a2f1e5dbd4438bad92d07c3933c4fb558e436e10dbcdfd8d25ae1a1211744262915f482669faf3fb79b5daa8b32db831983bfde379c0ba1848dafa6907144cd13d2306293d9cb49508a4ec9e9ad68ddf4a7675595b933e756748a6c5b7815a6cef9c6f1d2cca6263247e3ea587170a67966abdf9a5cb41da38cc32d6e38b255779f9aec7791291c479dfe6f150066dab0d82bb3a787c6c1d7bcec4fcaf487b9bc011b5efaeae9e34c19cd11dca00b42ecb75e7c13a707d64cf3cbdc27354d089820fb22a0f6b92a9f0407e87d0ca0fab63ea8796ad302057202b6406b5dbe595e4244a18dbb86c82697be54a2bf4d8c5f4e85bcee275adea199e6813574c292cb83e41e49053bdf887170df8929b74a3c5007bdc0cf65fe9bfe583c19bba1607194573b8c7935a79f6cbac61a747232b009fb3df026b2280d6a539420b70eb71f6051893053055f1e3a54815642ee150ac24e945b7879f1dbe7364843fde20b54865e759772e8673c2d3c251952f81024206fd033ce026a706213ca2b181ce7d8541dfa00f52d945aba1272cf478b653e038f2e7eca7e0adbf30a6099cbb8679ed1c6b49d7bbb0bd500e3cdb228c2da7456db144d8ba6ff8c06e35f81e1b7cb2d5e9f6940e8e87c5a889c8e789dde0b86d08e2722c7ca63a2846ae4a2382d37cc7f8b8bc7b418762d7b2449ec24fb3a066f6596637a73d2e73566d4c897ada6fa82156d4f83c755807a91baed42305000000000000000a0000001739e96ba3a23f531fa0d25ae320d14fb72bb38ec276ac6799b76aa45efb472a210ef870ec1b023c3d320043b8a0ffdcfb148434154a035ffeeb004a954845607fcef60289972a52726ed85c7698a0ff22803a960d75e1d730fced95a1db2d68c7c3a185de108deabbe58935a1c4ff8861bcc49b4dc737fc1c90989d46cf76a5f894e862b1aa17fc39fccfa3ba9425e58c74421aafa028ac054c7df37dc2a0a54e9765f717a0238e6285864f53abd010515614853c7910317a2864169f8327ad8baca6b7a6f55d1c46d8e6dd42736afc1e3379faeec56566359f9eaa07afce111fe64b24457703307796400cde1f1128781f169dc84db2c86a9f5122a17c424e2c7d869466501cd4dbb1e039dc7b92e8456b6b2a4822374661a44365ade74e0f3ab831983bfde379c0ba1848dafa6907144cd13d2306293d9cb49508a4ec9e9ad6cd0c7c1448767d5dc635c0f102598603fb06214a66207f3600da0a01e2dfbb366061ffeeecfa7fd1d801e88c0cf51e9f3c6fc3b88a43dcc5ca565f65d3dcec186d11cff768a3fd94c37de6f5b7b2a69725ea64bb4d19958150fb68ee3130d6aa37d7b2625fd0145acca85fed31f44cecbfab5ae9e3e20c5f5ac6f57545b17ad50ee34b9bb6f0db8d6d5197f571c4992bc64ace01788fa2326d0a083df3920c18b601cdaecdaeab5f8faf71042914283052b8892c0588823517d584bf6db882a81d11319278af11abe0a9dc6be1420d7ab886807b1320a173d6ca0c1da591ad22a26fd70b0ec9327043ae9837c1ea1336c80d5600ea069068337f8549bec0c200c5147232a673bb5f718882fdcb50229623c9a4a19d5973dccf576889e9d90dcd67fa485d1ef693e6c9b1fbfc9ce3c0e9dfa9d101f7c42f3913a23925e02a3cd3eea70a8ecb7e5f4d53310833704fe6917f24322e6b5b880f91969faac2eb91eb300a049779ad6e4b19921e39a8c1a55b44791eeb18ee62c5d6d47b74a6c5717a23a85d5fb315b71555c123f95e07f967a0b1e1f56f840ead1ee1fe0538dafac505000000000000000c000000175a73bab3ee07f94373fee61a61392ebf3d5beb8045b75dc8c4c399b3cc7ba7774b587d408bc6524dd2ff02f3793b5eb9d2f27d737f144ae829fc6870aa1cafe9a4ed0ef37cc316b85ffc5df57516b65591f3eea1b9c7fcc250e8367995cc3219693ede0364b11eeb2c372fe95ee6eb3836c1e5e03ea4bdb167aac7ad54dd37e05a9b7c89564ebebdf3932648d157ece5dfe13a41d41570ff4ed6a12415cb865492bbaff7b78a0a1aff7923412a2eca47224c30a0a6e5b6440f11508404addd9b9280762fb6c7c509371e23a3d9bd90589ce10253e0929f957fe938505d3b37fa73930f2e2ea215453f860fea521bd9aed4f60339c9d9b5f910a3262694f835b18f003ca054d1b3f184a0c257588d45ede76eda0cbe7dd76dde9ab77a0b31a301573e0fbd46a1ef1c3e2c994573d38af64f94b5cb9ca50ac17a16a7b5fdeeba389ffe00bd8cc95609fbb3326d16fa29c37bb85892bc46a7acaa9c93c9df6a8233cd0c7c1448767d5dc635c0f102598603fb06214a66207f3600da0a01e2dfbb365c57bfe7e0043998effcca99a0bcec12c4a912ba04f30c986de4123e7941aba5b0a31e120e02b049afc3900e443c5d0931d4e7b294a0cb3e167d7f366096ab00ee71c7d99629817db4512fd2c459a83233a822654a96939a43bfb785c3c227a18e68808ac9d5bba98a3dd273a009cc7e775e5c8d0a82dfbaee88caad0e3f88ab580c0bad59675fda18edea6578dd12b5dab31de7c6fe3ff3ec56814817184f4e3f10ea0f4ed4990ba5007efdd1599f0ffc3f610d60a103581f8892d9068454cf81e93b547b6dbf96bff888a6a93f52f1bc0a90184247bff5594b2dea3012b461cdc647bfa920f9baf1d48a8a8c689884b5e1eede23a3ddf606390ecbf8282b2f1d2a4af14b5d89897f6714b7e56ae0a88267aeb0803ca78af240977b54d2b85b5fa8d156b9c17a67b82bdf97fe9320215eacfba9c3750518c9bf8a0bc3ef6721d19f8eeef65b3bbd9b0feb5d605810a80308fbfe0e97528da81e9e3fed6d0c3005000000000000001000000017c00329d08d05070a4ee4bfc20bf7d072c6f6584d778b4746a0199b70bb0c20a0fc78fc56555f82a33d970d1d07b2a88d4edd7cb9963a45254a39a8bae58b05cfabf5cee8b37ea686c8a6bf480366c87418cab41a605939a50989ea683ec2ea660931d56a93423ec23eb0e8f503ccdc72459a2d4f5a5dc1f1548eb486eeb1bb7383becb659546a8c103c210c17e909a1d04e32e472836b07b6fd51a65d8579be702b9a2f9bcb66d8ba634cde7111c0c349543eda15a133e7fa00a26d0e5587b6af89ec5aafbc6ca05dc742773f2d9548d214995ca4814ac03f246bd347e23a80b2c90f4dcdb70c703cb3def5b4bdd6b2f88d45357801ce5c588afed3490b5e1d43f299936cd8080e62411a4bd1aca9adbee4d662c8c8839c4b3be186f530223916cb0698e1531deab2a6092cd97ea80324eb310fb07652ab42656418d68c38d7abb795e5d54f3476c2f09a0019176942c087b3fa932f2d73619766326c6dceb8e1c413ece772f96149e051f93b3a6a258d3b3f9d46751cd0b6c3633c2dc28439cbb44b3073d8ad68b610f40a4e521224d97e7bdec487ba520955036cf052c5beafb1e2edd48db7a9e6dd4ea9a6ff734adc67eef2139bdc4b8d9b873ab3bfc0cfcd1bfd93f8f084f1469b8eefdc4c62c77b55b2e5091fc136a3cf7af56cb95bfb0ee71c7d99629817db4512fd2c459a83233a822654a96939a43bfb785c3c227a1396a9499965ee38e55aa9648bb77301594585f1149c484cffab6957d0832ebb3cd92e009db7984b919e0afddb1c73a221226a7ae81d9ab0158875edb9ce09c6e80c49a32b7a70a9e05045c85808918c21701f4b5ee575f9bd92b890f37bec9730ed0084885cd7f79eac05d70e86447ec30831b8dfac541bc6030ee2409f61d4c38b4421e8fbb3841a1c9931eff429c9367e3f690cd509f9273ecca710637e48d70630ee9c5e0c3b59aa059e566099762cae2c8b075c832e48806f2d024c8a224905deb1a369bf01f03b1aef442dc15715f52134e69e8df5f84f3de5d277ba47f05000000000000001100000017130243cfd206dd81ffaedc29eec7924f2ce0fffbb05f1bd2f2fcd8039de762d3edc9ba67ce0ebf0f51448c1d9c6beb4e2861f408103f3e9f9ffbf288672f751cd67bc7ee42ca0fa242fc86ac294ed6899e0add298a1525c9a6c59fa9e50f171e5c7fcb794f688bbfa66e7acf0bf6197a4187d7a403400a015a67bfb65c1819159c5c5206f0ad29c90ca6d7f20ad40b9645bf6f327d28b5725e407af3e5f9a12b16381305dacfe9eab365de8f4369b1209385e7ae03d3eaa9c9c6ce7cbaf6420607c538c321c606a89509d4b41d32d3f50bfefbfad4b6c3efc46ea62b2966ed8e68d16b725a5c1cd61439137174978b35771474dc7d1f0fc2ef05738b8565d893046117b64835aa3a044970f9037f257736d4b27d70b1325c8b656b4e11b1696ba55707e976e162dae93a848d5c84a0c6618e55c7b236975c725ce5c853d7cf952ba3adde3299795ac3c6dec49e0d2f95c4b880ecc914433aadf3af9f4cfe4eeb5480e644269ea425d7d53f312f43d08286ff4b4235dfb98755abc33a9d59671eb9786fdd1d17762bb4749d7a335204142f188a5d076b807b37e5ef296779bb554e17121a3e7632c9740d35e659540d0edf6b0f9db88207cdd7bbc8c85680f53b0645127f132efec9a70601406b9c8f1e278c933b0fe959247853e6d1e3dfcf4427a5121afaacf0f971f7390e1c16bfec709038eec0f8601392074fa89c302e19ee71c7d99629817db4512fd2c459a83233a822654a96939a43bfb785c3c227a193bfab85680028365d2fb4f367394f1cafe8e058e25029112b9e9bd2ef05cbc65c02b5f75a01fba77a9633c3c372c7bd9e6c598e3f3e9b0a12269bb3e1ddc6434ceed1045ece3a48cdacd9baab828339a8bae7392e197835068210291c6d05aa76b8e815206a80b6c4b498252f98b466ace58e449bf3197628ca2091b591c3e2ee25a8f55227d2d4a8f992912e6b94501ba8851b3924b48c23fce702bb15bef0fda14fc38b1b98214ae5b126757c1df6aa747ed2d8e4676bf431c8e59cd683e405000000000000001200000017bfb0f30f0ad961b690e89c197ece102c027902e6bdaea90b25fe28412616def041d369b0e4195ae361dc12247363bbcd1c8b5cc6a9b96aea13546eb62c53fad52a9821c21aa1a618c7616ecd14b7e9cdc3a5808635412e2273390be07f754ac2441db4c71c5b49b7f68714820c357ae4c61306f8171f2c2ae78f0cbd56e68d4df99f7a9828d81eba4753c9a40f9a417b5cb75794f3f2b6c34d87e10f2b96e8a46670e711e7d74cd521ef9aae5e1462be8b1778781f3f06f84b3db091914f39df530bb3d1d90419335afb54b684f1e36b4a46fc94cf7264b82c6c5ee286b306e1f9e769dcb924602385dd5aa6572dcd9abb1480a5ab8f8105d8703f623856c8732899986fc2ae39ba8ceb6afbf4ed9c293f1504a52632f290ea471add0fe33ac68a2463d0d43b371d8257d7faa54530a84ae406445e1047f6825dd14bacb675855db6d33bca7c1d9324b7983b320ccab665f56f8f94f5ec9f8bb15f6566dc7df2bd6e0e5c65adddfae543b517f5522e0d761560a03110fa3ed0a9c77bc115c4623c173f27d6d391f98b1c783348645b564642faf394c6582576a3c5ad7974c82e242751ee1619b30750042a4056e60cb5456ddb0f9b24692154a1c01bc9fa7b97998b2beec0e8840b948db0ac67ba88ed002a3845ae02ca3b7b763a25584830f6f9eb45ea19fde8fe4214cc5ca44b0ad54d9ed1ab86c152fac77ef5f372bc4a1d0155b04c8aa3e57339312668b8c80b785d7bbe777cc4236762c9e761fde7766bee71c7d99629817db4512fd2c459a83233a822654a96939a43bfb785c3c227a1078639b4d41b09b135197c3a24c22162c9022da1fc72a863ea807a676c93b2e3e9d77614e157027c932aa984ade8cbb171fd17c171509c998c537df2454c158914fc98a6f138527020eb725794646a66eba98ede3fde3fffceadd03f9c002f4e2a509a842d2eabd609b31d48549297fccab1daaa83bed1cc7c00524c5b283c2e95a5e44fe87398a43c29b9fa0697361875df5da9a1c148ad66e458452c8d293105000000000000001300000017b3f63c5a97d680fe6c1b3e451904f74e2fa382234298a7f0f5daf6c773d290da584b9b19833326bdcfecc8abe60d26bba9d908c129a17e719af49e969c4020b02d010899eb5e69593f475c108f27c3cb03db0cfc04866ac6e3bb6b9260fbde0b622518568a00ae677605cfb15172aa8d5e366f014ac05f34d5e056321904f1b7098ed6012536f3d74240bec543208b0e1ecd50b0978911879e274a55db4cdce51b23939ebf9e949ec74a5ad4565216ec0a686696894e2e048cb029eb8e9a85ca51a0514cffc2fb2b64a72a8011735299501e03071a4e8bd9600e4a0f87b6422638a9304b0c3ca7ac3814ce9f357f54cf8474aa73f761f235224f740ba4f4ba4e81669b885c4e442e15e701012258e058c5ed906f49ebe30ce944b8518b380f066d5ee5c75d523804876c0533b0659bc9f117935f6e16c24eb3a83fa2e1505ff43c7da4607bf57319e348103bf95294afbd4f34cfbdbba5b23e54ee4843bdead7044e6a1defaa914abd92b2c88cea7ba552d9b5e25f9edbac88cbd35fc141f16918103c571bc812410209b22dc4a14dc4e38cb3c40eab651604e738347ebec87fa294413565f44cd06d14e825407d512220a316df5d634c9edb8dfd1a28a2fa5925ae5b673f695a4bd79f603784280ae730103d7aa6528c9933ad491e43bf1abd2a747ba47e88542a138a62e860ea5a40798313786c934bed1ba6a613768692c64acbae59249ef0f1687972b86f0d25c30589774fcb937839b4d050986665da0f915aa3b7bf83eed61c3050bc21a05a53dcb6a81ea4a0adf8eaee2be97e33e2ceee71c7d99629817db4512fd2c459a83233a822654a96939a43bfb785c3c227a1ed2f345f3c803fb06efbec8efb2ede99f6e300ac2cc1df7abd0d199a8f8ebafb183b9338fcfad02cdee4bbf3ef8aef6cd4600e248247574bd48c1c4a2d20bdc6f486343667a4014fa10459276672264b31b873e60699e82c7b03a4053a1de39f747bf223d4710155af701b30ea4a0d6a2b51e40635ef23b216cc7ada21e6e1d20500000000000000140000001765c3b938d2e05ca6f30f4fcf1515459345b1cb4edd630b1dfc975e7530eb9346e1dad44799eb5f1207e782069f912f55cdd6dc1761824eaef99070704e65e5fb07605b38092212fe03079b397e2add5564f175e7a9097bf742bcd4eef7341cb70504d38d4c03e520ca780fce9779baff39885b98a9ed2ce8d5ba424b8bafe7bbcb1bc76e086d09d8f83c7a6772d961a97e708c9a26c43a76528bc970adbcac729d0bfe2dc2d490592cc85c359a4d30ed15cf934875b6393471cac25647f18bce3e0740bdfee57298ce60a04b67127d1c894ca88fee095069a7e951503445949ddca2471335e7456614f03c7f55585284c9fec2367c6fa0891d6ea6bda68e1e88d8797c975aa4e4dd1f5d78208fb1b02e3029ad55100a9adfbddf2d72d3126f3d4c0933c9ea057a5b03a39c4c2ce835e301f13bb5bc6ebded7037db2b46c850220a01433ab3d98ccaf9246aab181d5b73f4fbd283ba3dc366d6cdfb5fb2b22f564b1f34df8fae5f15a1d10d142991e58fb0cdeb03dfb7febaea07c8318179b2ebbc2a164c70842a75577dfefdff1a7f5c35731a4c3449548dcb1638f4fafd5eef360136a16600db6c3a5ca222a8bc96536ea22774eb07b3289cab65e3a2b605e27bdf7094b6731c51dd8765777d8784a9934b593b5e10423f36052dd5c61945242edec33dc241541458a9fa60fc2311e18616ba2ae5cdce7066d1383a5abba369fc7d00e4d599bfb44b86ba2493157ed6271c7ed193dfe8ebe24efe88b87003a1c91476b619d3c7e229c41d982bca774b435c84566f41bd6fba5e84616caa70e297c77839fe7954a475bb426e23bbc9a25fa60e531e67bb835832fc6a6489ecdaee71c7d99629817db4512fd2c459a83233a822654a96939a43bfb785c3c227a174148c9b3e8c1d157813d1ff91c13da857c10a52a5e1f0f8a5f65eaf92035df953d3471f5f633fd89170cc7ca76dc1656b151db910085ccd18429ac7ab6036287e1c6449875dab95a4554c0477053628656a41e418a4ba5947052d054b02438b05000000000000001600000017998d1c637dcc9a1f818febc124763c3264c8da344d88ab320dc7c48c7c7b96cb718e6a7727feaaca27b826dbd39293c1d82a25cc46837e66084acd0a27e8e2a93497e7769ad78283a16c261e563e10fc4e5b07b429f123b37aacdbb76612169577cb8517896d3df6625fa56772a7c2659b723f22f80add0e96664ca905d6214aada9350791e58687b3ddc2d6c5348339098edab91e2740a859b25e22d04c38e0a6329600cff1042b0e104df77bb5ba65d82a601e6d474fe1fe8f2e0fed57d29fd0c9b8eba6ecec19ef6594c362cd5eb96d40a38a7506f4d9bf707e1d2d42e4befb3a360a66a67e8f295ae023f585876239d5ba670f145fb5026f61df1e17f3d4ed43166a516a89964fac5812b039725347bd14485a28418ace1ddd402623b4586fbcaceeaead3e013e1bc0da230b04f664eeb804d58479fe202bf1747581715c8641ba419d16a74997497e45366fae3ea162408e9cc1fd2b80a036c2897b6ed7cfa0c645f83006e2251945159f8f1f008df4404e5432789c8b053c11ec50793e909b7f2a88682f7c6bfc7110ee6e6373e443ae4699cf0dc93795af3f5417b4d6df2744e4e6b1b17e54d1fdb0de1342293c0c976676c3fe463a2e002835d573532618c69e985de157ab29a2abb99d353ae93e890ae0983a88652917e0d12048a8331e5fd642f2ba86d1174a01a96c80c2451da088f518490aa30586b6bcb262f1549197515744ae189e25cedab23a220b522687167edb01f3ffc9f9498e810c85361280f514318f183d30adb844899c6a59ad4fa5a2384ce431bd834617189e1a5e6ddba1e0ee6055fffb8f6f7989f941d74788a58f61310edbc66e5cdb00ff92d18957f354eeb36df175e534413c5e4b21b1df2c6f4dea1826c6ac36cbc94efbbe498434a621cc8367035876460818b2d135f0afbbc48f7306dd042cc35b776453d3471f5f633fd89170cc7ca76dc1656b151db910085ccd18429ac7ab603628dc5206ef6a2658059bebf1e409ffd5e885ba89228f5cef9943f041c294cb09da03db05000000000000010085001b777caa36aad84091cbb171237d59975123f5aa8873fa0b2e815bc8c380b6a1850144ccae5393474c3c3c97808b6db87362236cee64e5cbdedab87a6f966c283daa8502f1fd48907b5c34d36d9dd3cc31f3924f81c4f1ad16aa967eff3028e73b4d7c0d8503ab68e47c7f0794e2378ab7ed7e7a5831425c5a0e771fa241092bacebd8385cf285046c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c5067478505eddfb93fae22a494f5d4cba7459af1b8d9108f0f14ac21dc56f6d2ca5a5478448506ea552b834e5a8f695813a0e5a6415f32a3aba7ca55661ffafc8d6893e312b7a48507ed98b8ccbf5e6500677f4e946fcaee27bf1e2970ff1a6513cfbcb16d9504a5ba8508b4e05aeb2a3c2daba45ad33bf54e8ddb20b4a4d22ddabe1df0ee63a447cd16b98509859200f507ca3c4b4429cb4bb9366be3e4c3109adc30e8fb830c5c817d8d84f9850a77c26b9b0b178d6b150c21b2ecf18c66b7dc00a6f8b3535c08e265003d432d5b850bc9abe5d0739779d45ecd00175079e796dbc2731606d92279703b996fd867759b850cea05fe86767ef9a283444c05ff4633a2d31fd37651c67359481019520fa26831850d0710ace46468a2c3ffac563ec5679d8a04d47f1014bddcc204b7a349dba2598e850e4bc0b7e7b42a85ccfe7e2f47eee946cb313f58903360132f8dc2455e56f7f3f5850f1e6c870326b17e0c855e5a86bccf9605aa884b24cdc91397283f1b9c8d0caad98510b7944528159081e6697498cd2720aebe47ccf8decd551b8e87cd997906ac1fa685119581b4409eef9563fff83fb2c6e14dd0baf76927e384f34ade32b76d5b347aee8512f5f7cbbe3c46f732e9195252d9a75e46afd345ca01816d71810ab68738f53de48513f4fb8de1c5d02b79e57be5f34fecc86f1eb9aba35434d2c75db811db6ae0a4ab8514a037005323e3e68b091bdfd3a1bd64eeac64ccf4186d31b5108d6b01ab23c1408515d90fca7012228d10c85b01b54c8ce01c00752e26008b93c0c12933e992eda2fa85164946f72baf496a4b13b6cb9ac21faa83910a6da93b202b966f2e0a48fc6e473185170dde27e15c457c175ec5f2cb1ebe921a1d28cfcd7402be803e2b108ffb373d0585189a8c34b3e6bb67bf7327f59f7133f3a878ee00a979761991ff3be72f0d909ae78519bbd9fb9af68e646f7a078ad5dcd166e78b4eccfec920bfb815d038150c86c37d851ae264128e53c7f2acde2e784fd34ab71f5ebba01db506dfcf44c00781f553fd56851b33e48417b07ece78ae98f84be5c9a6d04856eaac22270d55a72b90ceb8d65090851cf8cfbb4832c68303e6ca655feb72cdf71db5fa3ecb017049bd611df9ac3d88ad851d2341611dfad84fdbfc80474a1292834d0ec1cf57fdb3270947a20d6cf41db930851ecaad69c968e70b2108560fd668c23a11d1382e85c32f969136c15af2c7657d94851feb86a63afc112071fc302c5d08206c41ba3c1e0d0cd43085f10eb024dfb86ff18520923ab4607d8522fc709ae2b32676af3363c3873c278464e5bc354b8e83a28a358521441a11d871a70302b5d8ce012b03b8045e56c7d6e41335f15ec7a5094e7ac3398522568e5a999bb0ec9f978669eb761a7fb54a9e831d590d468a5068d8eaac65658c8523c924b919547b83beab43198ac93ae3a0316967d28f94cb36e6915f014c577a1f8524ec1ac1c0ecae4812a266c0702f94e3c954c141f5804b3b0b305befbabdb922a98525ab9aabddc3809e2e6cf42d8ec1236bf1d3ec221b51d2ebb7a2c163fa075b5dd68526bfe31479f1639d08e59b32184c08d0639b87c89cc089b1b0622860264fab070d8527d15ea04d42fdb43573bf1246f36cfa9542b7444ed3e9f58967d70772437481d68528b20a23dad22f30203830ed5a867766f7a15c2ec5c08977174c52f487f268f5b2852959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3852aec74e268c4c1b99b3350167afce4098fe84d293ab955b101c8c8030dd12b5b3b852bf01a205f97d43dd47f4bab67ea91db2cf79d288bdc5eb7b7625f05470ba87829852c44ccae5393474c3c3c97808b6db87362236cee64e5cbdedab87a6f966c283daa852d628336ca8a21ca0dff5f4aee00c2443487e8b1bbdf51574f7ca3472151b87a7a852ef31f425ce757dbe6c795bc2289eda0219b6e3d67e68f6970ddd7907b389aabcf852fd5942c7d5d738d2ca82c070ec6e9299ea9bf7e0f61b78062622e6b382cc248dd85302968de82559883e33f67105cee842ad84fb052d2d446c7c53cdfcf746e3c28fc85316bd1c084ae37306ea61c3eec6c6f1c2a2069c6edc39b23e970726b1a16fb20b2853288f4f61e2ce9d0b7c5592dd70ec48a2094628b863b481a482079fa6e3109bf9d853363d245db3df69a61d44098ae8ee369c4889af258d18201bbcd88bf4eb7f70abd853485d11884d02c9fadc17b4e7269f4dd2d88e7cddd92d46881881532d2479ca93a8535deb1bbd1c6317399d4facb2c8a5d2ca767a6a7bc8e31f11678e4d105303eba868536c3689bdb98ad3413c4f1a4270c7e4f245581be41f05f4c4b0fde62fb3384f54c8537e737c233b76ec8508d682314ea4e446af9a260fff4ba3342ab3ccac8bb2d490685387da4fe950214916a7c711b89d489661dbe5bda0d9ebce8634ee964a14239ba6e8539441a11d871a70302b5d8ce012b03b8045e56c7d6e41335f15ec7a5094e7ac339853af1f1271457b882de841d95634cb07a1efda4749cb45de5ffa457072bc67cd7e2853ba270b66f4edb4161ecdcb2ea8cafae773fd22305da2bafcbd7de5e51ca430a45853c1fdf8c468e0e8dc44644eed2ee163a3257bd10994aed1a4a93ddb35e68af649c853da037005323e3e68b091bdfd3a1bd64eeac64ccf4186d31b5108d6b01ab23c140853ebfe31479f1639d08e59b32184c08d0639b87c89cc089b1b0622860264fab070d853f29201d1392db94f8fa19816198af58fce5a48dfe65f456d369e23d682115bdce85404ee1800167265b68c8f8cdca1bf465170e5fc2a79a045543c5791b75cedb542c8541d12f32a8fc9853ac59b6163fbf5bf7805841da0b6348d017c341fde5cd6ae3b985424daecd2380b9621f14420e1d14a11f211049ab057e44f342c1681284a943099085434bf644b2f67eca42f2cf0a60360fd5e69f86510e6029f8d801f030b88c010cb585444a98d455c961261ece6e5c6957e74d7ef698478ff7d418794b382b5cdc7933e58545017e427bf9bc64cd5e402598e1369d94aa661d65b5eeeb1015b074b7f4b0820185464f6667de31b50be321505d872c019c8955e0672d00500f9bca71ad490bfcabc7854747d5bd541569c53bcf8f4c17f590139adbb7b96db31c24d746e96e1d1f4da72e85485339b7cdc2c40fd35891680cba144e9493bc0e24d8cc4a9b60d04a6eaa87cecc8549a3b3537307f9ddf9f2ef9505899189eccfecd594c63cdf29e7d31ee4d4b667d8854a59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3854bd15ea04d42fdb43573bf1246f36cfa9542b7444ed3e9f58967d70772437481d6854cd00297c92cffa7af562f38a8113680f87fe21ab71b2fc62fa54258592a4592c4854d94757be97d85ca1b1d133473694b71ff5027b2d0e98d37e31cdd33b4fa093112854effa38cbf1852222dfe66ea4c1c63756aaf6bfb5b69956e91b38e38dd94f9361c854f03453fc79739a4a742dd578c25e505c5c7079dfd347fd9dea401a86dc031602485500cc373a68077bb608ed5f1443f7b2340a06246f0a73973d6d2d394ea0decaf5b8551d8ea6f0fd44cfc84c498a53716553886c79bf1ea990d890fab3877dac36dca358552d56f87e0bb9a2bf4a3e821374b325221179521fb7da51c180850796f9987c356855322814b68b6aeb8a53a4fb78a37a68cfef5bd558acd1a9072009593957707f84085542203880c81cec10b933791b31c6f49dcb9f5bd8d4910379fdb4f51d41888179185559c6ef8a3ba7138709e9905bdcab708c38cb34a35ba3883ae2e8467ac1f70282b85561655d3c683a73aeda08f26b6876b59d639379e46b9591c2fd6f7a61d9a295a1e8557d15ea04d42fdb43573bf1246f36cfa9542b7444ed3e9f58967d70772437481d6855864d86b29e588a07404bba504716d687769376162b6bf0b631112f545d852c59e8559fe884326ce0eca702f778a5a37f9008c8d9147bc6d730fbe9657da0b32c4a4f6855a9aa13df0cf63e7c00ecff7055e5a44fdaf84e82ab8d0518bac4cb347a7420827855bfeda40b006d3c1fa58e7593c7952ae0f056df039de3bd11772c735b4b8f5cea6855cbd94eb94156251ef067d13c77c797898495d77de59a13c2971d0238545ec86fb855da025109dcbef7aedb4634c73d7491b8dc17b5532407320c1eadcd31a7f82020b855e5df0c05baadcee08996ea0cd1a9e656f4899826d9935fa49c45f482e7ce74f9c855f5df0c05baadcee08996ea0cd1a9e656f4899826d9935fa49c45f482e7ce74f9c85605afb81b1462d53df0f36cf17b3a19ec3d01e6985737fa8895850e96a8f284ab685612b9ea281250647ec3ff260b6275ac2373426a151f4bb0e7e617a85a089f49af58562e16a2871a271342a47a81ec8f430b0504ed705b6a81f5fae6d747634c3fff19d856347d5bd541569c53bcf8f4c17f590139adbb7b96db31c24d746e96e1d1f4da72e8564d5125f7fc10487be5d168f24ecd345469f5c5430f18f9d2cbe655146349033f48565edd35f6d031b33f24a9f6d7c799daa8207d7d13259587ad046cc4160dd1109b28566965487222e1f96ccfdf7ec3eb6d861756c19bb14b9b83d9ff8656f076cf3c5af8567742c9fe00288a7a35b49c50c1a504b9e8384136273a706014005e4e5312d9d108568cfe8a2bc5c6e4d98780490290c5e3c26d2d4658a67491456bb8a084ac464a852856994a402673d9ce183714e2f78f726334f0530c0c881d9cf8f963043e91c84c46b856a32634b8307607d7269ce14afb5011e4c7d8d3a41119cfbd7f9b234e712628aa5856b1bf74ef2f0ee2ccc90811e340ea84e3277a72a51eea9cc80035c29bf54849824856cef31a28c9feb8d09afbec4b412b446c576c88d8289f296c5df002124d94dd5f7856dcc8ab9ff48ed8fb9762b8379d5a949455d0cd5cef906cd099736eed3dec0a8b1856e612bb3370fc5ddde70f77c21f20ef248ea936daeffc995fdd1a0a88376c41e3f856fba3d845b1d0a964ba97795aca22334d808217f2e6df7e835a16d90056564cf9c85705df0c05baadcee08996ea0cd1a9e656f4899826d9935fa49c45f482e7ce74f9c85713bc6db327b6ab6e66347ee4f1ece891b14816dbd7f2d2c5a30b372210affdc148572a2d7dc06709bac5a8dc8ccf6298149fde0ba247e0f20ecd8d0b9854710f6fbb0857353efeccd4bf79531af1557accc2995db62be57fe961a5ec8609e26c8fd7b03b28574c229dd211d04500723086fd211bf8f1c5a84304a69fe56a0f73055455fa4b62885751ca7aa3ef583f814c58ca0afa7e7dadc74300b91e115e07944efa1d55defbc178576372ee84da2d6bc2ab1bbd68eb7293ad0dd1af3d88bda8fc6e17d01eff9d6e9f18577c04cd7dff5c2cbe3f4ede3f68849f301507072aadea4341c8be05551fb94b29385782ebc3da34ad9ad9ed1fe959597b4affb245d2aec66dd99350386a18dafad07c28579602e360ce24df2b3bfba4899bb6bd7ad9186aafdcc01b07d7f36e0ff24668dac857afc1b28823688076885c6dc1e60a0c595b7da12cba617ebe4ed36831855c654d9857b183f64b4c434a6b3bffbebb63a07e1aa807378ed7fb4dd8ca9ae36005efe9c87857c480bad5a74d41c88bfd893a7b47dcb3cf3131695321b1baf9062f423d7b083c8857d44ccae5393474c3c3c97808b6db87362236cee64e5cbdedab87a6f966c283daa857e1fdf8c468e0e8dc44644eed2ee163a3257bd10994aed1a4a93ddb35e68af649c857f641832b06c16a03b257204a3d75f0165683fd83585694209db117cd3d583e95185807f3ded06339c32db0198c35c38ba8b3696e2aa30c9bca515976c3e458691b5de8581ad963dcc37e5ae7cb8972c17159860ce861228dcce1890900cf4bccde822a6f7858240692badb34d0cfd255ee938e60bb44bcf2b2e3c3e1def748ba244f61da7e9ca8583654bd341dcd99ffaf5fc0a48bc438ecdeb01cac09c5eeb78986ecc96428ce248858469fb87940202dce96550fc765e6f1ae39d2b171354f42cb161d622e77f7cbb0285857eda924d2f44050c00f62e3d79b5ce0a68ba68d08167ae22a0fee344bb9855d2858682d75f99ce509e0f788971f4ff20c94d5510b053f87baf263801333954d719da858794757be97d85ca1b1d133473694b71ff5027b2d0e98d37e31cdd33b4fa09311285889d601e1fd9f6d1dd90de3130be68276b63be1f664b73891b324c26cee5ff2c608589bd94eb94156251ef067d13c77c797898495d77de59a13c2971d0238545ec86fb858a480bad5a74d41c88bfd893a7b47dcb3cf3131695321b1baf9062f423d7b083c8858b86bc4ea1bf6c462c80eac630e19ffdd237a0a7abbd5129f81290cfd843275438858c694700791ff53691a0ed15803a300994d0dea2e682d769d2f05c993a14cf3733858d052cfcc33952406e2a64889fdc433d8df1e4e9d8a681ee1c8afc4c3eabf5bf35858ea8dd13da295f2845b8f2e67d582a2628a615ac8c7b1c4d4da66a699d8e75064a858fe16a2871a271342a47a81ec8f430b0504ed705b6a81f5fae6d747634c3fff19d8590c229dd211d04500723086fd211bf8f1c5a84304a69fe56a0f73055455fa4b6288591b7944528159081e6697498cd2720aebe47ccf8decd551b8e87cd997906ac1fa685920d11003043f4b5c07f419b7a181a4aeb0d33fcd586c8ef059c9ee64acf91678d859311422ae6f60e3fdb4c64845400c3ecaa118b036cdfc8816b1e2eac49dc1a48da8594923ab4607d8522fc709ae2b32676af3363c3873c278464e5bc354b8e83a28a358595d98d5a75bd2b44d9fa1084191b974cadce555c5347c47170af0287eb50a1beae8596480bad5a74d41c88bfd893a7b47dcb3cf3131695321b1baf9062f423d7b083c88597795d88a7633f46f40e502c45757b9937f0f4a39fe62ebb78245a9e773b7485c385987a66e34b514a30892350e2e42178a4391602ae5bede6d63f754875054b3e0bb6859947fcf4d244ee05577802dca8a4461c8f7e6f20e0cad384a38ce5bbfd0a48ff95859a53efeccd4bf79531af1557accc2995db62be57fe961a5ec8609e26c8fd7b03b2859bcb0a35d27068efbfc0e31619698c8615be5deb480b2c0d114d6499b1cd4c7530859cf27e3307039bcb9502edf72457576c7672c53beea69f6c0093d8beb3d0d74966859de55e8212f009e00d0c513d24b4d0f010c6d317bc2e3bb6afbe797f11558620d6859ed49b2f1578a08759d7816724f7ce354547144170d11951c866676c94bb127329859fae8b37e6602394a9c87bec09d0fe7809ef937749efcf49bfa4de7e6394009c4f85a05afb81b1462d53df0f36cf17b3a19ec3d01e6985737fa8895850e96a8f284ab685a1f27e3307039bcb9502edf72457576c7672c53beea69f6c0093d8beb3d0d7496685a2782d2d2d9fc3cf8dff674d6a4c9e2d8eef819c6e43b5ffd42cf47d5882271d3b85a3315b09c4c816dca0ab6f4d17e11c5ff1e416afb82e68cbc4fda32838a75c870585a46ca88e5d00f8b9cfad29f6e40fa677b43bf1c245eaf12d9fe65e3511cc72126585a5a270b66f4edb4161ecdcb2ea8cafae773fd22305da2bafcbd7de5e51ca430a4585a66971d8222db3b9185656cc9eb3d585707f0ccb55fc6a8432d49afe7533a513c085a76c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c50674785a851dc515cd9444b7a85dcdce9f06bdfa9d9d99396c2a596c89d7ca49973be290685a9bad75b9b45df8fdbb6bad94d7247be24939007f4a4ce6eaf7193bde5d44f0c7685aaee35f64d8acb8b93b2dbab20c92e59ec3133752a3720ea44f758272e4cab20bd85abc3fefea315fa1c17ad88e1e699add70d39b28f8bc2ba70d096275470563f774385aca7f9dddefb9444886e18f25ec00ab23e724ad639ff5fd6096300f19f91edb1c585adf31f425ce757dbe6c795bc2289eda0219b6e3d67e68f6970ddd7907b389aabcf85aed5125f7fc10487be5d168f24ecd345469f5c5430f18f9d2cbe655146349033f405af000000000000000000000000000000000000000000000000000000000000000085b0deb1bbd1c6317399d4facb2c8a5d2ca767a6a7bc8e31f11678e4d105303eba8685b1418f27efdf794f1cd484077e36b1eef5d7b7a6008b4de62c078a48bc061dc6ea85b29137914fa2c633d756a0d0a3902edac6ba7faf517eabdb2eeee4e8082cf9b67385b3586a47c8df3a12fd3c1cbaf0579fd7569e57c85dd151e5a600f1c831bb01946585b4e8616fa3c45f0d26af467d9d63e46e8d26c30d1aff35147f36bf8a3fa966b0d585b5827282a7eb108d169ceaca271e2163dede230c839288d6ab24b7fb5f1dafca8885b651b88bcb17ecaf775d8bbe0d626d7e00466e800b319c78682c0aa8815f04ebfb85b7ae621e3d170ed07cb153a3fcd2f0511e0bafa2f6144332d4ba26335ecaf4369085b8b4108ba7f33aa58f42be191a54cfb758e97f4a88febcc2cb2326951a3d8ea90985b9ecabd6b3c7f7e2b83d9add32f5a991b00e4f88a71f0ddd7a8df7822881deb22385ba46ab7380319acd6c8af0bf6fe579f5d3c97746398952f90ffd46555a9159ad8385bb75620facc3d31c753445bbe7bd11354584405846f05115f4a736869cd8ad225685bc0560822e5591b278b31034e244ddf10385174fcf2184255e42480c33e071084c85bd0966202b56e34915a497a114aeee0c5654f975b442cc741102eda5cdd410469185beba3d845b1d0a964ba97795aca22334d808217f2e6df7e835a16d90056564cf9c85bf23a5e98e6f9bab94c6c2b00ae5d1c92124d91bca81ac3ab7a718237875e0576785c0d15ea04d42fdb43573bf1246f36cfa9542b7444ed3e9f58967d70772437481d685c1016cfc8312ce30b02a6d170cc3765783a44f433f479d47311c07a2a7d5c7bb9a85c22898755dd81655439d0ff11037a7c5229989fb7c4f3811b7d33a688242601cb285c3eed2f00e1183b4d6ebbabb481dfe3cb16e48fd397a5a953116dd18c6381199b685c4ea05fe86767ef9a283444c05ff4633a2d31fd37651c67359481019520fa2683185c5a8b6bcd2d7e979a956963aeb3d32a91021a5c55ba707a33b238974c540c9646385c66d8a20796529f61576b5d0f729aaabcbe5f75674bfeefe29b7284c2fe1ca596885c75cca1b87a8f574b6e4ae7968f37236061779328496225f1f7c900f40e7bfed5885c8f96769f3397a9029a9409d47694629a4f5189fcdec4534dae00c803b3aa9e06185c901db25e92983d9afbf8cd6653cfb8b53718372edfaaef150f3f55367264f494585ca1b777caa36aad84091cbb171237d59975123f5aa8873fa0b2e815bc8c380b6a185cb08a8c6a4c6e8658aae8a3941970fa8293abc349ddc689a0a19780c47fb72dfdd85cc57e07953570402d032fc45239bd4e214ddd965e4158f444c8e5760406d2b2b9f85cd59ad2d200723ae916ef0c9c20a5cfdfc7e40db21877069639eec5c6cfff0774685ced4ea6863ff67ab75b696902c7e0bf75f74acec8d2c33459a6a64a8918d936f3085cf5afb81b1462d53df0f36cf17b3a19ec3d01e6985737fa8895850e96a8f284ab685d0480bad5a74d41c88bfd893a7b47dcb3cf3131695321b1baf9062f423d7b083c885d1f5d5d7ee624b32fa75f1a66da18f4c1d537eed3d79bb18561a204dc299c67c5685d2c312c292cd6cedfd998b7321a2978a43fbbdbd784f1a358da6ebad7d181b341285d31db018a243617040c7b4c9034906a8e0f19832c28fe9168e95e6c8c2740968da85d49cd88830b65ee7509c073409d43b373e21552ffe243c6fea433944a3539fa67985d569fb87940202dce96550fc765e6f1ae39d2b171354f42cb161d622e77f7cbb0285d64c65246164240f560bc9c6b6b9c3eab89f08652bfe8629f6a596c92ec0878f4085d7d15ea04d42fdb43573bf1246f36cfa9542b7444ed3e9f58967d70772437481d685d85ccec718340d41dfe809a98b829741d736e6c3e2e02bb31f7b6b26f8c43dd36b85d9789c10a7347fb765cb5f1d4031b7ffbb43f33f66bdd68a10fc53804f75dd41f585dad5942c7d5d738d2ca82c070ec6e9299ea9bf7e0f61b78062622e6b382cc248dd85dbdb76c9ae0f7c15f246d5463092078fdfbd04dcdda14524c063f17bc6ffe9204785dc62bb2ee31da3a038cd20b1bcd51f6e9ed40ac0141b53af584e919770b1acbc1985dd9c84695dd8d7c0e78101d904a71d938666a963c6808a9dd49137a57a1f4094d285de2074e419b14d3e6cdd9ceeed61d283e64e56e766545c42a7196e230eadbbb10685df3f2d9943ab247e80aea0b3174733a8080831c1ec0ecadd94a519aaaab419630b85e08d5237a47d0fcb07b16766eb48ca8f646a39874eb2e8270b1d1d165d2b648b9a85e110980de7793d8ad123794751bc7cafa9eb56fa322e2505482de1cad4150bba9285e2a99e8371f0ba251d25b10290f64e693f2c4b2f4eaf3f95f40748a9593403980f85e33753be6a2416a8920d41d7ca28c680b4618c2281c25ba6b746b24764d3facdc785e41012f2d488007af0769bab7c3ed57aa1014713297b82183e4a5584f664c33d9c85e56f632760a25e5ff01db79e7a39fd38fcafa8b3c56389de61f0cee7f791abf5b285e601db25e92983d9afbf8cd6653cfb8b53718372edfaaef150f3f55367264f494585e7ee35f8b95e0ab5015d128eea232c3a2357db11a9dc324314382054ebf5abae9c85e8f4b30cbac30e8b6041facf53b5099e13eeae3c282b55a6d3c90559ea7f63614385e9b0f7401445fd283436a256285741922621fb028ccbbcb427fa62f2de96088bbb85ea7c2d705713084adcab60f028c9fe2622b96a8a4823d4820597bda4a8484ad64a85eb11422ae6f60e3fdb4c64845400c3ecaa118b036cdfc8816b1e2eac49dc1a48da85ecfbb6d2bb9a11d09c51a95e17d865469ad9f7971763c792f22f1a26dac6d5803985ed16ff3ef9b1528bd4a4dd0da0e70e89fc2214ef1cf0d8512ea84e38347b90d1fd85eebb6b97f5fbd79544a96c20ea5bfb85df467ce9ba2789ecb8ead64d1bdd2d40ca85ef5ccec718340d41dfe809a98b829741d736e6c3e2e02bb31f7b6b26f8c43dd36b85f062bb2ee31da3a038cd20b1bcd51f6e9ed40ac0141b53af584e919770b1acbc1985f111422ae6f60e3fdb4c64845400c3ecaa118b036cdfc8816b1e2eac49dc1a48da85f2164a3b83ec2976ae350d230b1d1f4a95a886e25386807baf92163556d5d895b985f301db25e92983d9afbf8cd6653cfb8b53718372edfaaef150f3f55367264f494585f4e370ccc8faf8b301691ffbd6c363a4aca260a220f34e6c8cb45e925e9c5e89f085f5f27e3307039bcb9502edf72457576c7672c53beea69f6c0093d8beb3d0d7496685f65afb81b1462d53df0f36cf17b3a19ec3d01e6985737fa8895850e96a8f284ab685f746413e2fc77392634a511efadcf78172fa52d785977a3bee17e451320915a20885f8efaebb0b07cc51df3e1459b6cf9c4b25ab567c4b719b6822d7c8ef0f1961825e85f9a037005323e3e68b091bdfd3a1bd64eeac64ccf4186d31b5108d6b01ab23c14085fa010867737945fb4dcfda59969210f8665445931a3aaa996a0e10e4f0e8613ac585fbc9bcfdab397e8643badb712dc0d1aae7bad27de7c65540f745dafef1a173db8385fcb0828d25ab551d749778eac4b9f145dddd6024c62f86ea23d4a52e03a9c5aaef85fd6c4b8fe006672affac98357e6ab0cb09221389b35f67b9c75336b08bcb3a64c085fe8d5237a47d0fcb07b16766eb48ca8f646a39874eb2e8270b1d1d165d2b648b9a85ff29a52dc68a9520ac92d8ff57c8e6f6e2117ce4774a514fa6b015180addb0cc791b777caa36aad84091cbb171237d59975123f5aa8873fa0b2e815bc8c380b6a144ccae5393474c3c3c97808b6db87362236cee64e5cbdedab87a6f966c283daaf1fd48907b5c34d36d9dd3cc31f3924f81c4f1ad16aa967eff3028e73b4d7c0dab68e47c7f0794e2378ab7ed7e7a5831425c5a0e771fa241092bacebd8385cf26c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c506747eddfb93fae22a494f5d4cba7459af1b8d9108f0f14ac21dc56f6d2ca5a547844ea552b834e5a8f695813a0e5a6415f32a3aba7ca55661ffafc8d6893e312b7a4ed98b8ccbf5e6500677f4e946fcaee27bf1e2970ff1a6513cfbcb16d9504a5bab4e05aeb2a3c2daba45ad33bf54e8ddb20b4a4d22ddabe1df0ee63a447cd16b9859200f507ca3c4b4429cb4bb9366be3e4c3109adc30e8fb830c5c817d8d84f977c26b9b0b178d6b150c21b2ecf18c66b7dc00a6f8b3535c08e265003d432d5bc9abe5d0739779d45ecd00175079e796dbc2731606d92279703b996fd867759bea05fe86767ef9a283444c05ff4633a2d31fd37651c67359481019520fa268310710ace46468a2c3ffac563ec5679d8a04d47f1014bddcc204b7a349dba2598e4bc0b7e7b42a85ccfe7e2f47eee946cb313f58903360132f8dc2455e56f7f3f51e6c870326b17e0c855e5a86bccf9605aa884b24cdc91397283f1b9c8d0caad9b7944528159081e6697498cd2720aebe47ccf8decd551b8e87cd997906ac1fa69581b4409eef9563fff83fb2c6e14dd0baf76927e384f34ade32b76d5b347aeef5f7cbbe3c46f732e9195252d9a75e46afd345ca01816d71810ab68738f53de4f4fb8de1c5d02b79e57be5f34fecc86f1eb9aba35434d2c75db811db6ae0a4aba037005323e3e68b091bdfd3a1bd64eeac64ccf4186d31b5108d6b01ab23c140d90fca7012228d10c85b01b54c8ce01c00752e26008b93c0c12933e992eda2fa4946f72baf496a4b13b6cb9ac21faa83910a6da93b202b966f2e0a48fc6e47310dde27e15c457c175ec5f2cb1ebe921a1d28cfcd7402be803e2b108ffb373d059a8c34b3e6bb67bf7327f59f7133f3a878ee00a979761991ff3be72f0d909ae7bbd9fb9af68e646f7a078ad5dcd166e78b4eccfec920bfb815d038150c86c37de264128e53c7f2acde2e784fd34ab71f5ebba01db506dfcf44c00781f553fd5633e48417b07ece78ae98f84be5c9a6d04856eaac22270d55a72b90ceb8d65090f8cfbb4832c68303e6ca655feb72cdf71db5fa3ecb017049bd611df9ac3d88ad2341611dfad84fdbfc80474a1292834d0ec1cf57fdb3270947a20d6cf41db930caad69c968e70b2108560fd668c23a11d1382e85c32f969136c15af2c7657d94eb86a63afc112071fc302c5d08206c41ba3c1e0d0cd43085f10eb024dfb86ff1923ab4607d8522fc709ae2b32676af3363c3873c278464e5bc354b8e83a28a35441a11d871a70302b5d8ce012b03b8045e56c7d6e41335f15ec7a5094e7ac339568e5a999bb0ec9f978669eb761a7fb54a9e831d590d468a5068d8eaac65658cc924b919547b83beab43198ac93ae3a0316967d28f94cb36e6915f014c577a1fec1ac1c0ecae4812a266c0702f94e3c954c141f5804b3b0b305befbabdb922a9ab9aabddc3809e2e6cf42d8ec1236bf1d3ec221b51d2ebb7a2c163fa075b5dd6bfe31479f1639d08e59b32184c08d0639b87c89cc089b1b0622860264fab070dd15ea04d42fdb43573bf1246f36cfa9542b7444ed3e9f58967d70772437481d6b20a23dad22f30203830ed5a867766f7a15c2ec5c08977174c52f487f268f5b259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3ec74e268c4c1b99b3350167afce4098fe84d293ab955b101c8c8030dd12b5b3bf01a205f97d43dd47f4bab67ea91db2cf79d288bdc5eb7b7625f05470ba8782944ccae5393474c3c3c97808b6db87362236cee64e5cbdedab87a6f966c283daa628336ca8a21ca0dff5f4aee00c2443487e8b1bbdf51574f7ca3472151b87a7af31f425ce757dbe6c795bc2289eda0219b6e3d67e68f6970ddd7907b389aabcfd5942c7d5d738d2ca82c070ec6e9299ea9bf7e0f61b78062622e6b382cc248dd2968de82559883e33f67105cee842ad84fb052d2d446c7c53cdfcf746e3c28fc6bd1c084ae37306ea61c3eec6c6f1c2a2069c6edc39b23e970726b1a16fb20b288f4f61e2ce9d0b7c5592dd70ec48a2094628b863b481a482079fa6e3109bf9d63d245db3df69a61d44098ae8ee369c4889af258d18201bbcd88bf4eb7f70abd85d11884d02c9fadc17b4e7269f4dd2d88e7cddd92d46881881532d2479ca93adeb1bbd1c6317399d4facb2c8a5d2ca767a6a7bc8e31f11678e4d105303eba86c3689bdb98ad3413c4f1a4270c7e4f245581be41f05f4c4b0fde62fb3384f54ce737c233b76ec8508d682314ea4e446af9a260fff4ba3342ab3ccac8bb2d49067da4fe950214916a7c711b89d489661dbe5bda0d9ebce8634ee964a14239ba6e441a11d871a70302b5d8ce012b03b8045e56c7d6e41335f15ec7a5094e7ac339f1f1271457b882de841d95634cb07a1efda4749cb45de5ffa457072bc67cd7e2a270b66f4edb4161ecdcb2ea8cafae773fd22305da2bafcbd7de5e51ca430a451fdf8c468e0e8dc44644eed2ee163a3257bd10994aed1a4a93ddb35e68af649ca037005323e3e68b091bdfd3a1bd64eeac64ccf4186d31b5108d6b01ab23c140bfe31479f1639d08e59b32184c08d0639b87c89cc089b1b0622860264fab070d29201d1392db94f8fa19816198af58fce5a48dfe65f456d369e23d682115bdce4ee1800167265b68c8f8cdca1bf465170e5fc2a79a045543c5791b75cedb542cd12f32a8fc9853ac59b6163fbf5bf7805841da0b6348d017c341fde5cd6ae3b94daecd2380b9621f14420e1d14a11f211049ab057e44f342c1681284a94309904bf644b2f67eca42f2cf0a60360fd5e69f86510e6029f8d801f030b88c010cb54a98d455c961261ece6e5c6957e74d7ef698478ff7d418794b382b5cdc7933e5017e427bf9bc64cd5e402598e1369d94aa661d65b5eeeb1015b074b7f4b082014f6667de31b50be321505d872c019c8955e0672d00500f9bca71ad490bfcabc747d5bd541569c53bcf8f4c17f590139adbb7b96db31c24d746e96e1d1f4da72e5339b7cdc2c40fd35891680cba144e9493bc0e24d8cc4a9b60d04a6eaa87cecca3b3537307f9ddf9f2ef9505899189eccfecd594c63cdf29e7d31ee4d4b667d859db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3d15ea04d42fdb43573bf1246f36cfa9542b7444ed3e9f58967d70772437481d6d00297c92cffa7af562f38a8113680f87fe21ab71b2fc62fa54258592a4592c494757be97d85ca1b1d133473694b71ff5027b2d0e98d37e31cdd33b4fa093112ffa38cbf1852222dfe66ea4c1c63756aaf6bfb5b69956e91b38e38dd94f9361c03453fc79739a4a742dd578c25e505c5c7079dfd347fd9dea401a86dc03160240cc373a68077bb608ed5f1443f7b2340a06246f0a73973d6d2d394ea0decaf5bd8ea6f0fd44cfc84c498a53716553886c79bf1ea990d890fab3877dac36dca35d56f87e0bb9a2bf4a3e821374b325221179521fb7da51c180850796f9987c35622814b68b6aeb8a53a4fb78a37a68cfef5bd558acd1a9072009593957707f8402203880c81cec10b933791b31c6f49dcb9f5bd8d4910379fdb4f51d4188817919c6ef8a3ba7138709e9905bdcab708c38cb34a35ba3883ae2e8467ac1f70282b1655d3c683a73aeda08f26b6876b59d639379e46b9591c2fd6f7a61d9a295a1ed15ea04d42fdb43573bf1246f36cfa9542b7444ed3e9f58967d70772437481d664d86b29e588a07404bba504716d687769376162b6bf0b631112f545d852c59efe884326ce0eca702f778a5a37f9008c8d9147bc6d730fbe9657da0b32c4a4f69aa13df0cf63e7c00ecff7055e5a44fdaf84e82ab8d0518bac4cb347a7420827feda40b006d3c1fa58e7593c7952ae0f056df039de3bd11772c735b4b8f5cea6bd94eb94156251ef067d13c77c797898495d77de59a13c2971d0238545ec86fba025109dcbef7aedb4634c73d7491b8dc17b5532407320c1eadcd31a7f82020b5df0c05baadcee08996ea0cd1a9e656f4899826d9935fa49c45f482e7ce74f9c5df0c05baadcee08996ea0cd1a9e656f4899826d9935fa49c45f482e7ce74f9c5afb81b1462d53df0f36cf17b3a19ec3d01e6985737fa8895850e96a8f284ab62b9ea281250647ec3ff260b6275ac2373426a151f4bb0e7e617a85a089f49af5e16a2871a271342a47a81ec8f430b0504ed705b6a81f5fae6d747634c3fff19d47d5bd541569c53bcf8f4c17f590139adbb7b96db31c24d746e96e1d1f4da72ed5125f7fc10487be5d168f24ecd345469f5c5430f18f9d2cbe655146349033f4edd35f6d031b33f24a9f6d7c799daa8207d7d13259587ad046cc4160dd1109b2965487222e1f96ccfdf7ec3eb6d861756c19bb14b9b83d9ff8656f076cf3c5af742c9fe00288a7a35b49c50c1a504b9e8384136273a706014005e4e5312d9d10cfe8a2bc5c6e4d98780490290c5e3c26d2d4658a67491456bb8a084ac464a85294a402673d9ce183714e2f78f726334f0530c0c881d9cf8f963043e91c84c46b32634b8307607d7269ce14afb5011e4c7d8d3a41119cfbd7f9b234e712628aa51bf74ef2f0ee2ccc90811e340ea84e3277a72a51eea9cc80035c29bf54849824ef31a28c9feb8d09afbec4b412b446c576c88d8289f296c5df002124d94dd5f7cc8ab9ff48ed8fb9762b8379d5a949455d0cd5cef906cd099736eed3dec0a8b1612bb3370fc5ddde70f77c21f20ef248ea936daeffc995fdd1a0a88376c41e3fba3d845b1d0a964ba97795aca22334d808217f2e6df7e835a16d90056564cf9c5df0c05baadcee08996ea0cd1a9e656f4899826d9935fa49c45f482e7ce74f9c3bc6db327b6ab6e66347ee4f1ece891b14816dbd7f2d2c5a30b372210affdc14a2d7dc06709bac5a8dc8ccf6298149fde0ba247e0f20ecd8d0b9854710f6fbb053efeccd4bf79531af1557accc2995db62be57fe961a5ec8609e26c8fd7b03b2c229dd211d04500723086fd211bf8f1c5a84304a69fe56a0f73055455fa4b6281ca7aa3ef583f814c58ca0afa7e7dadc74300b91e115e07944efa1d55defbc17372ee84da2d6bc2ab1bbd68eb7293ad0dd1af3d88bda8fc6e17d01eff9d6e9f1c04cd7dff5c2cbe3f4ede3f68849f301507072aadea4341c8be05551fb94b2932ebc3da34ad9ad9ed1fe959597b4affb245d2aec66dd99350386a18dafad07c2602e360ce24df2b3bfba4899bb6bd7ad9186aafdcc01b07d7f36e0ff24668dacfc1b28823688076885c6dc1e60a0c595b7da12cba617ebe4ed36831855c654d9183f64b4c434a6b3bffbebb63a07e1aa807378ed7fb4dd8ca9ae36005efe9c87480bad5a74d41c88bfd893a7b47dcb3cf3131695321b1baf9062f423d7b083c844ccae5393474c3c3c97808b6db87362236cee64e5cbdedab87a6f966c283daa1fdf8c468e0e8dc44644eed2ee163a3257bd10994aed1a4a93ddb35e68af649c641832b06c16a03b257204a3d75f0165683fd83585694209db117cd3d583e9517f3ded06339c32db0198c35c38ba8b3696e2aa30c9bca515976c3e458691b5dead963dcc37e5ae7cb8972c17159860ce861228dcce1890900cf4bccde822a6f740692badb34d0cfd255ee938e60bb44bcf2b2e3c3e1def748ba244f61da7e9ca654bd341dcd99ffaf5fc0a48bc438ecdeb01cac09c5eeb78986ecc96428ce24869fb87940202dce96550fc765e6f1ae39d2b171354f42cb161d622e77f7cbb027eda924d2f44050c00f62e3d79b5ce0a68ba68d08167ae22a0fee344bb9855d282d75f99ce509e0f788971f4ff20c94d5510b053f87baf263801333954d719da94757be97d85ca1b1d133473694b71ff5027b2d0e98d37e31cdd33b4fa0931129d601e1fd9f6d1dd90de3130be68276b63be1f664b73891b324c26cee5ff2c60bd94eb94156251ef067d13c77c797898495d77de59a13c2971d0238545ec86fb480bad5a74d41c88bfd893a7b47dcb3cf3131695321b1baf9062f423d7b083c886bc4ea1bf6c462c80eac630e19ffdd237a0a7abbd5129f81290cfd843275438694700791ff53691a0ed15803a300994d0dea2e682d769d2f05c993a14cf3733052cfcc33952406e2a64889fdc433d8df1e4e9d8a681ee1c8afc4c3eabf5bf35a8dd13da295f2845b8f2e67d582a2628a615ac8c7b1c4d4da66a699d8e75064ae16a2871a271342a47a81ec8f430b0504ed705b6a81f5fae6d747634c3fff19dc229dd211d04500723086fd211bf8f1c5a84304a69fe56a0f73055455fa4b628b7944528159081e6697498cd2720aebe47ccf8decd551b8e87cd997906ac1fa60d11003043f4b5c07f419b7a181a4aeb0d33fcd586c8ef059c9ee64acf91678d11422ae6f60e3fdb4c64845400c3ecaa118b036cdfc8816b1e2eac49dc1a48da923ab4607d8522fc709ae2b32676af3363c3873c278464e5bc354b8e83a28a35d98d5a75bd2b44d9fa1084191b974cadce555c5347c47170af0287eb50a1beae480bad5a74d41c88bfd893a7b47dcb3cf3131695321b1baf9062f423d7b083c8795d88a7633f46f40e502c45757b9937f0f4a39fe62ebb78245a9e773b7485c37a66e34b514a30892350e2e42178a4391602ae5bede6d63f754875054b3e0bb647fcf4d244ee05577802dca8a4461c8f7e6f20e0cad384a38ce5bbfd0a48ff9553efeccd4bf79531af1557accc2995db62be57fe961a5ec8609e26c8fd7b03b2cb0a35d27068efbfc0e31619698c8615be5deb480b2c0d114d6499b1cd4c7530f27e3307039bcb9502edf72457576c7672c53beea69f6c0093d8beb3d0d74966e55e8212f009e00d0c513d24b4d0f010c6d317bc2e3bb6afbe797f11558620d6d49b2f1578a08759d7816724f7ce354547144170d11951c866676c94bb127329ae8b37e6602394a9c87bec09d0fe7809ef937749efcf49bfa4de7e6394009c4f5afb81b1462d53df0f36cf17b3a19ec3d01e6985737fa8895850e96a8f284ab6f27e3307039bcb9502edf72457576c7672c53beea69f6c0093d8beb3d0d74966782d2d2d9fc3cf8dff674d6a4c9e2d8eef819c6e43b5ffd42cf47d5882271d3b315b09c4c816dca0ab6f4d17e11c5ff1e416afb82e68cbc4fda32838a75c87056ca88e5d00f8b9cfad29f6e40fa677b43bf1c245eaf12d9fe65e3511cc721265a270b66f4edb4161ecdcb2ea8cafae773fd22305da2bafcbd7de5e51ca430a456971d8222db3b9185656cc9eb3d585707f0ccb55fc6a8432d49afe7533a513c06c2f1a8a34c2441be7e87c41aa985f7a14c9c97e669bdf1bf99b912d0c50674751dc515cd9444b7a85dcdce9f06bdfa9d9d99396c2a596c89d7ca49973be2906bad75b9b45df8fdbb6bad94d7247be24939007f4a4ce6eaf7193bde5d44f0c76ee35f64d8acb8b93b2dbab20c92e59ec3133752a3720ea44f758272e4cab20bdc3fefea315fa1c17ad88e1e699add70d39b28f8bc2ba70d096275470563f7743a7f9dddefb9444886e18f25ec00ab23e724ad639ff5fd6096300f19f91edb1c5f31f425ce757dbe6c795bc2289eda0219b6e3d67e68f6970ddd7907b389aabcfd5125f7fc10487be5d168f24ecd345469f5c5430f18f9d2cbe655146349033f4d230da61f196f23d94a6c91341886464bda4120ff890a209b9814942e6abd9f1deb1bbd1c6317399d4facb2c8a5d2ca767a6a7bc8e31f11678e4d105303eba86418f27efdf794f1cd484077e36b1eef5d7b7a6008b4de62c078a48bc061dc6ea9137914fa2c633d756a0d0a3902edac6ba7faf517eabdb2eeee4e8082cf9b673586a47c8df3a12fd3c1cbaf0579fd7569e57c85dd151e5a600f1c831bb019465e8616fa3c45f0d26af467d9d63e46e8d26c30d1aff35147f36bf8a3fa966b0d5827282a7eb108d169ceaca271e2163dede230c839288d6ab24b7fb5f1dafca8851b88bcb17ecaf775d8bbe0d626d7e00466e800b319c78682c0aa8815f04ebfbae621e3d170ed07cb153a3fcd2f0511e0bafa2f6144332d4ba26335ecaf43690b4108ba7f33aa58f42be191a54cfb758e97f4a88febcc2cb2326951a3d8ea909ecabd6b3c7f7e2b83d9add32f5a991b00e4f88a71f0ddd7a8df7822881deb22346ab7380319acd6c8af0bf6fe579f5d3c97746398952f90ffd46555a9159ad8375620facc3d31c753445bbe7bd11354584405846f05115f4a736869cd8ad22560560822e5591b278b31034e244ddf10385174fcf2184255e42480c33e071084c0966202b56e34915a497a114aeee0c5654f975b442cc741102eda5cdd4104691ba3d845b1d0a964ba97795aca22334d808217f2e6df7e835a16d90056564cf9c23a5e98e6f9bab94c6c2b00ae5d1c92124d91bca81ac3ab7a718237875e05767d15ea04d42fdb43573bf1246f36cfa9542b7444ed3e9f58967d70772437481d6016cfc8312ce30b02a6d170cc3765783a44f433f479d47311c07a2a7d5c7bb9a2898755dd81655439d0ff11037a7c5229989fb7c4f3811b7d33a688242601cb2eed2f00e1183b4d6ebbabb481dfe3cb16e48fd397a5a953116dd18c6381199b6ea05fe86767ef9a283444c05ff4633a2d31fd37651c67359481019520fa26831a8b6bcd2d7e979a956963aeb3d32a91021a5c55ba707a33b238974c540c964636d8a20796529f61576b5d0f729aaabcbe5f75674bfeefe29b7284c2fe1ca59685cca1b87a8f574b6e4ae7968f37236061779328496225f1f7c900f40e7bfed58f96769f3397a9029a9409d47694629a4f5189fcdec4534dae00c803b3aa9e06101db25e92983d9afbf8cd6653cfb8b53718372edfaaef150f3f55367264f49451b777caa36aad84091cbb171237d59975123f5aa8873fa0b2e815bc8c380b6a108a8c6a4c6e8658aae8a3941970fa8293abc349ddc689a0a19780c47fb72dfdd57e07953570402d032fc45239bd4e214ddd965e4158f444c8e5760406d2b2b9f59ad2d200723ae916ef0c9c20a5cfdfc7e40db21877069639eec5c6cfff07746d4ea6863ff67ab75b696902c7e0bf75f74acec8d2c33459a6a64a8918d936f305afb81b1462d53df0f36cf17b3a19ec3d01e6985737fa8895850e96a8f284ab6480bad5a74d41c88bfd893a7b47dcb3cf3131695321b1baf9062f423d7b083c8f5d5d7ee624b32fa75f1a66da18f4c1d537eed3d79bb18561a204dc299c67c56c312c292cd6cedfd998b7321a2978a43fbbdbd784f1a358da6ebad7d181b34121db018a243617040c7b4c9034906a8e0f19832c28fe9168e95e6c8c2740968da9cd88830b65ee7509c073409d43b373e21552ffe243c6fea433944a3539fa67969fb87940202dce96550fc765e6f1ae39d2b171354f42cb161d622e77f7cbb024c65246164240f560bc9c6b6b9c3eab89f08652bfe8629f6a596c92ec0878f40d15ea04d42fdb43573bf1246f36cfa9542b7444ed3e9f58967d70772437481d65ccec718340d41dfe809a98b829741d736e6c3e2e02bb31f7b6b26f8c43dd36b789c10a7347fb765cb5f1d4031b7ffbb43f33f66bdd68a10fc53804f75dd41f5d5942c7d5d738d2ca82c070ec6e9299ea9bf7e0f61b78062622e6b382cc248dd62bb2ee31da3a038cd20b1bcd51f6e9ed40ac0141b53af584e919770b1acbc199c84695dd8d7c0e78101d904a71d938666a963c6808a9dd49137a57a1f4094d22074e419b14d3e6cdd9ceeed61d283e64e56e766545c42a7196e230eadbbb1063f2d9943ab247e80aea0b3174733a8080831c1ec0ecadd94a519aaaab419630b8d5237a47d0fcb07b16766eb48ca8f646a39874eb2e8270b1d1d165d2b648b9a10980de7793d8ad123794751bc7cafa9eb56fa322e2505482de1cad4150bba92a99e8371f0ba251d25b10290f64e693f2c4b2f4eaf3f95f40748a9593403980f3753be6a2416a8920d41d7ca28c680b4618c2281c25ba6b746b24764d3facdc71012f2d488007af0769bab7c3ed57aa1014713297b82183e4a5584f664c33d9c6f632760a25e5ff01db79e7a39fd38fcafa8b3c56389de61f0cee7f791abf5b201db25e92983d9afbf8cd6653cfb8b53718372edfaaef150f3f55367264f4945ee35f8b95e0ab5015d128eea232c3a2357db11a9dc324314382054ebf5abae9cf4b30cbac30e8b6041facf53b5099e13eeae3c282b55a6d3c90559ea7f636143b0f7401445fd283436a256285741922621fb028ccbbcb427fa62f2de96088bbb7c2d705713084adcab60f028c9fe2622b96a8a4823d4820597bda4a8484ad64a11422ae6f60e3fdb4c64845400c3ecaa118b036cdfc8816b1e2eac49dc1a48dafbb6d2bb9a11d09c51a95e17d865469ad9f7971763c792f22f1a26dac6d5803916ff3ef9b1528bd4a4dd0da0e70e89fc2214ef1cf0d8512ea84e38347b90d1fdbb6b97f5fbd79544a96c20ea5bfb85df467ce9ba2789ecb8ead64d1bdd2d40ca5ccec718340d41dfe809a98b829741d736e6c3e2e02bb31f7b6b26f8c43dd36b62bb2ee31da3a038cd20b1bcd51f6e9ed40ac0141b53af584e919770b1acbc1911422ae6f60e3fdb4c64845400c3ecaa118b036cdfc8816b1e2eac49dc1a48da164a3b83ec2976ae350d230b1d1f4a95a886e25386807baf92163556d5d895b901db25e92983d9afbf8cd6653cfb8b53718372edfaaef150f3f55367264f4945e370ccc8faf8b301691ffbd6c363a4aca260a220f34e6c8cb45e925e9c5e89f0f27e3307039bcb9502edf72457576c7672c53beea69f6c0093d8beb3d0d749665afb81b1462d53df0f36cf17b3a19ec3d01e6985737fa8895850e96a8f284ab646413e2fc77392634a511efadcf78172fa52d785977a3bee17e451320915a208efaebb0b07cc51df3e1459b6cf9c4b25ab567c4b719b6822d7c8ef0f1961825ea037005323e3e68b091bdfd3a1bd64eeac64ccf4186d31b5108d6b01ab23c140010867737945fb4dcfda59969210f8665445931a3aaa996a0e10e4f0e8613ac5c9bcfdab397e8643badb712dc0d1aae7bad27de7c65540f745dafef1a173db83b0828d25ab551d749778eac4b9f145dddd6024c62f86ea23d4a52e03a9c5aaef6c4b8fe006672affac98357e6ab0cb09221389b35f67b9c75336b08bcb3a64c08d5237a47d0fcb07b16766eb48ca8f646a39874eb2e8270b1d1d165d2b648b9a29a52dc68a9520ac92d8ff57c8e6f6e2117ce4774a514fa6b015180addb0cc79039f05000000000000010005000000000000000000000000000000000000000000000000000000000000000000850159db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305020000000000000000000000000000000000000000000000000000000000000000050300000000000000000000000000000000000000000000000000000000000000000504000000000000000000000000000000000000000000000000000000000000000005050000000000000000000000000000000000000000000000000000000000000000050600000000000000000000000000000000000000000000000000000000000000000507000000000000000000000000000000000000000000000000000000000000000005080000000000000000000000000000000000000000000000000000000000000000850959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3050a0000000000000000000000000000000000000000000000000000000000000000050b0000000000000000000000000000000000000000000000000000000000000000850c59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3050d0000000000000000000000000000000000000000000000000000000000000000850e59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3050f000000000000000000000000000000000000000000000000000000000000000005100000000000000000000000000000000000000000000000000000000000000000051100000000000000000000000000000000000000000000000000000000000000000512000000000000000000000000000000000000000000000000000000000000000005130000000000000000000000000000000000000000000000000000000000000000851459db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3851559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305160000000000000000000000000000000000000000000000000000000000000000051700000000000000000000000000000000000000000000000000000000000000000518000000000000000000000000000000000000000000000000000000000000000005190000000000000000000000000000000000000000000000000000000000000000051a0000000000000000000000000000000000000000000000000000000000000000851b59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3851c59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3051d0000000000000000000000000000000000000000000000000000000000000000851e59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3051f0000000000000000000000000000000000000000000000000000000000000000052000000000000000000000000000000000000000000000000000000000000000000521000000000000000000000000000000000000000000000000000000000000000005220000000000000000000000000000000000000000000000000000000000000000052300000000000000000000000000000000000000000000000000000000000000000524000000000000000000000000000000000000000000000000000000000000000005250000000000000000000000000000000000000000000000000000000000000000852659db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3052700000000000000000000000000000000000000000000000000000000000000000528000000000000000000000000000000000000000000000000000000000000000005290000000000000000000000000000000000000000000000000000000000000000052a0000000000000000000000000000000000000000000000000000000000000000852b59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3052c0000000000000000000000000000000000000000000000000000000000000000852d59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3852e59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3052f000000000000000000000000000000000000000000000000000000000000000005300000000000000000000000000000000000000000000000000000000000000000053100000000000000000000000000000000000000000000000000000000000000000532000000000000000000000000000000000000000000000000000000000000000005330000000000000000000000000000000000000000000000000000000000000000853459db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c30535000000000000000000000000000000000000000000000000000000000000000005360000000000000000000000000000000000000000000000000000000000000000853759db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c30538000000000000000000000000000000000000000000000000000000000000000005390000000000000000000000000000000000000000000000000000000000000000053a0000000000000000000000000000000000000000000000000000000000000000853bac6e39a6d2a21482ebc3fda2edbf03e87cfbc6f01906d66cdf952ec945427bbb853c59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3853d59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3053e0000000000000000000000000000000000000000000000000000000000000000053f000000000000000000000000000000000000000000000000000000000000000085408d5015847738271ed37ec14cb2be8e9a6a23d7dabfed32b53dcc54194819256f05410000000000000000000000000000000000000000000000000000000000000000854259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385438d5015847738271ed37ec14cb2be8e9a6a23d7dabfed32b53dcc54194819256f0544000000000000000000000000000000000000000000000000000000000000000085457ac57383ccd8ac1e0d1d39a321c715cc620f0c196009c74ef4faec0d071ea3fe054600000000000000000000000000000000000000000000000000000000000000000547000000000000000000000000000000000000000000000000000000000000000005480000000000000000000000000000000000000000000000000000000000000000854959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3054a0000000000000000000000000000000000000000000000000000000000000000054b0000000000000000000000000000000000000000000000000000000000000000854c59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3054d0000000000000000000000000000000000000000000000000000000000000000054e0000000000000000000000000000000000000000000000000000000000000000054f0000000000000000000000000000000000000000000000000000000000000000855059db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3055100000000000000000000000000000000000000000000000000000000000000000552000000000000000000000000000000000000000000000000000000000000000005530000000000000000000000000000000000000000000000000000000000000000055400000000000000000000000000000000000000000000000000000000000000000555000000000000000000000000000000000000000000000000000000000000000005560000000000000000000000000000000000000000000000000000000000000000055700000000000000000000000000000000000000000000000000000000000000000558000000000000000000000000000000000000000000000000000000000000000005590000000000000000000000000000000000000000000000000000000000000000855a59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3055b0000000000000000000000000000000000000000000000000000000000000000055c0000000000000000000000000000000000000000000000000000000000000000055d0000000000000000000000000000000000000000000000000000000000000000055e0000000000000000000000000000000000000000000000000000000000000000055f0000000000000000000000000000000000000000000000000000000000000000856059db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c30561000000000000000000000000000000000000000000000000000000000000000005620000000000000000000000000000000000000000000000000000000000000000856359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c30564000000000000000000000000000000000000000000000000000000000000000005650000000000000000000000000000000000000000000000000000000000000000856659db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3056700000000000000000000000000000000000000000000000000000000000000000568000000000000000000000000000000000000000000000000000000000000000005690000000000000000000000000000000000000000000000000000000000000000056a0000000000000000000000000000000000000000000000000000000000000000856b59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3856c0315fb15da97d06806fefb6c2d7b9ce36ed69c301b5b19681c5090bc513697bc056d0000000000000000000000000000000000000000000000000000000000000000056e0000000000000000000000000000000000000000000000000000000000000000056f0000000000000000000000000000000000000000000000000000000000000000857059db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3057100000000000000000000000000000000000000000000000000000000000000000572000000000000000000000000000000000000000000000000000000000000000005730000000000000000000000000000000000000000000000000000000000000000857459db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38575ac6e39a6d2a21482ebc3fda2edbf03e87cfbc6f01906d66cdf952ec945427bbb057600000000000000000000000000000000000000000000000000000000000000000577000000000000000000000000000000000000000000000000000000000000000005780000000000000000000000000000000000000000000000000000000000000000857959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3857a59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3857b59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3057c0000000000000000000000000000000000000000000000000000000000000000857d59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3057e0000000000000000000000000000000000000000000000000000000000000000057f0000000000000000000000000000000000000000000000000000000000000000858059db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38581f47eafa9077c2cbaf4486a54778bfaf8816dc9fb3a70037432ea129ce9d266c4858259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c30583000000000000000000000000000000000000000000000000000000000000000005840000000000000000000000000000000000000000000000000000000000000000858559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38586c50b177c3ab824d1a7855bface4f9e6950be08126ea169b91cc33d01cbc05cbf0587000000000000000000000000000000000000000000000000000000000000000005880000000000000000000000000000000000000000000000000000000000000000858959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3058a0000000000000000000000000000000000000000000000000000000000000000058b0000000000000000000000000000000000000000000000000000000000000000058c0000000000000000000000000000000000000000000000000000000000000000058d0000000000000000000000000000000000000000000000000000000000000000858e59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3058f0000000000000000000000000000000000000000000000000000000000000000059000000000000000000000000000000000000000000000000000000000000000000591000000000000000000000000000000000000000000000000000000000000000005920000000000000000000000000000000000000000000000000000000000000000059300000000000000000000000000000000000000000000000000000000000000000594000000000000000000000000000000000000000000000000000000000000000005950000000000000000000000000000000000000000000000000000000000000000059600000000000000000000000000000000000000000000000000000000000000000597000000000000000000000000000000000000000000000000000000000000000005980000000000000000000000000000000000000000000000000000000000000000859959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3059a0000000000000000000000000000000000000000000000000000000000000000059b0000000000000000000000000000000000000000000000000000000000000000859c59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3059d0000000000000000000000000000000000000000000000000000000000000000059e0000000000000000000000000000000000000000000000000000000000000000059f000000000000000000000000000000000000000000000000000000000000000005a0000000000000000000000000000000000000000000000000000000000000000085a159db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385a259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385a3628336ca8a21ca0dff5f4aee00c2443487e8b1bbdf51574f7ca3472151b87a7a85a459db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305a5000000000000000000000000000000000000000000000000000000000000000085a659db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305a7000000000000000000000000000000000000000000000000000000000000000005a8000000000000000000000000000000000000000000000000000000000000000005a9000000000000000000000000000000000000000000000000000000000000000085aa59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305ab000000000000000000000000000000000000000000000000000000000000000005ac000000000000000000000000000000000000000000000000000000000000000005ad000000000000000000000000000000000000000000000000000000000000000005ae000000000000000000000000000000000000000000000000000000000000000005af000000000000000000000000000000000000000000000000000000000000000005b0000000000000000000000000000000000000000000000000000000000000000085b159db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305b2000000000000000000000000000000000000000000000000000000000000000005b3000000000000000000000000000000000000000000000000000000000000000085b459db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385b58d5015847738271ed37ec14cb2be8e9a6a23d7dabfed32b53dcc54194819256f85b659db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305b7000000000000000000000000000000000000000000000000000000000000000005b8000000000000000000000000000000000000000000000000000000000000000005b9000000000000000000000000000000000000000000000000000000000000000005ba000000000000000000000000000000000000000000000000000000000000000085bb59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305bc000000000000000000000000000000000000000000000000000000000000000005bd000000000000000000000000000000000000000000000000000000000000000005be000000000000000000000000000000000000000000000000000000000000000005bf000000000000000000000000000000000000000000000000000000000000000005c0000000000000000000000000000000000000000000000000000000000000000005c1000000000000000000000000000000000000000000000000000000000000000005c2000000000000000000000000000000000000000000000000000000000000000005c3000000000000000000000000000000000000000000000000000000000000000005c4000000000000000000000000000000000000000000000000000000000000000005c5000000000000000000000000000000000000000000000000000000000000000005c6000000000000000000000000000000000000000000000000000000000000000085c759db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385c859db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385c959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305ca000000000000000000000000000000000000000000000000000000000000000005cb000000000000000000000000000000000000000000000000000000000000000005cc000000000000000000000000000000000000000000000000000000000000000085cd7da4fe950214916a7c711b89d489661dbe5bda0d9ebce8634ee964a14239ba6e05ce000000000000000000000000000000000000000000000000000000000000000085cf59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385d059db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385d159db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385d259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305d3000000000000000000000000000000000000000000000000000000000000000005d4000000000000000000000000000000000000000000000000000000000000000085d559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305d6000000000000000000000000000000000000000000000000000000000000000005d7000000000000000000000000000000000000000000000000000000000000000085d859db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305d9000000000000000000000000000000000000000000000000000000000000000085da59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305db000000000000000000000000000000000000000000000000000000000000000085dc3aeae17d1ed64477cbf53c464c5eae1dcc0e40acf7d47babb544e007832869b885dd59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385de59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305df000000000000000000000000000000000000000000000000000000000000000005e0000000000000000000000000000000000000000000000000000000000000000005e1000000000000000000000000000000000000000000000000000000000000000005e2000000000000000000000000000000000000000000000000000000000000000005e3000000000000000000000000000000000000000000000000000000000000000005e4000000000000000000000000000000000000000000000000000000000000000005e5000000000000000000000000000000000000000000000000000000000000000085e659db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305e7000000000000000000000000000000000000000000000000000000000000000005e8000000000000000000000000000000000000000000000000000000000000000005e9000000000000000000000000000000000000000000000000000000000000000005ea000000000000000000000000000000000000000000000000000000000000000085eb59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385ecfc86bdc7930fa27d088a7000d7f69397d9347b31f2400ae3e22f79a459a99a9e05ed000000000000000000000000000000000000000000000000000000000000000005ee000000000000000000000000000000000000000000000000000000000000000005ef000000000000000000000000000000000000000000000000000000000000000005f0000000000000000000000000000000000000000000000000000000000000000005f1000000000000000000000000000000000000000000000000000000000000000085f259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385f359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305f4000000000000000000000000000000000000000000000000000000000000000005f5000000000000000000000000000000000000000000000000000000000000000005f6000000000000000000000000000000000000000000000000000000000000000085f759db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305f8000000000000000000000000000000000000000000000000000000000000000005f9000000000000000000000000000000000000000000000000000000000000000085fa7ac57383ccd8ac1e0d1d39a321c715cc620f0c196009c74ef4faec0d071ea3fe85fb8d5015847738271ed37ec14cb2be8e9a6a23d7dabfed32b53dcc54194819256f85fc59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385fd3aeae17d1ed64477cbf53c464c5eae1dcc0e40acf7d47babb544e007832869b805fe000000000000000000000000000000000000000000000000000000000000000005ff0000000000000000000000000000000000000000000000000000000000000000161b4d65cc6c050e9d82159c1529c75aefbe7715093d6e13039f809b5bfcce5859db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3c37cce1ae8dbf6d82d653d4f121cb07d24ae6c8d79f75057afb8562bd11a78e4a0241ec7b650ccdd648c1045e1a92ff0f68766933160518dac265e16b4f244a088088dbc26cf0ec15494335d0ed7e116c1132dae7f1ef56f6cc4b6dea8c98e7f09ae3d5c3f1b1a4f4ef07b9f3fb289f7668a300b13c2f03648a3bc5a8906af11704742be07515d264272b49c510f11ee20a336d777f37ad2582bed5b78498054314ed5a9fcd94ac3c61cf1d1c69b63bfe117fc4206b2ff82eca36580143dc85038cbaf94a0d9eba2ded13a385eee75e1757d5f24da4c6a10183faffa7774614659db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3aebed040e55c35dfbcf1a98c431214efeeeab6117182d610bcd82ffc7725bac5c51a9bcdf8880e62a9beffa0871808d67699f2335796e2a621834df4a358834859db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3a5577b2d72048ad2a861f2e8b4354d42ae143ed603bab8395ccdccfe7bc9ad4e59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3b55616b1210b90544f97d83e51f4b2b5596710806fb3790a85c75bb837ad10978a407e065c1b2e5056b0c370e2085618a0b2b856dce88e85429a979efb33f2ee47a39e38b82e44ada88ee57dd94af14cb121f46b6095be35b56cb9dc413cd45d09ec301bb633b72c6a9e39b09ad03b4ff0166f099e1e1f593185c1d8af7a254899a06d1d6a075867593c269f3a206339e2edabf87b7ef6b66a6ab8778b24a82559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3d3df4b755cc4969c95f20e82fccd5ffd033612b37c1f8757803ab121eeb8a22ca6e6f2bd811982c9f507535c4384818c486b618c91cb4b282e7683e96bd177254a6691299c7b3ab3e4035e486cf8f56efd462d59c42fa8330ff30a92fcb5c0be1df0e94d81dc614a77e4837a991502d417a726f5b9203d5d95335e8503eb676fefd2136ee05b1a89b53691a9b4e266dba82d73aa9616800db7d83831f7403cb559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c39baf1bdc7b1289815a04f10acdb1de1420048c26c8a20443d36a9d4bb528cce459db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c36a11cf4af62041f41833d8173ed599df9e462d19f95b39946c1e6656e00c5e3e1ab4653de00f04137d74c9240d49b8d20db295c29105848d1e79695178b76c41e831de4b97a2051edc524b5184af99febce5e9b1e5111214563abe7fd45e9c908316ec3d450c65f1edb14da48b11e4b9defeb1c5e53ae64757166d9674084af8d59276134538e7e4639581e17f122746f66759390d279f997c7ff700b9adc9b5cab29d193c2aff83bc378ce7d39470e3ae80d2fa759f1c5562c77bdba9bf9cc366daf36e766d42975dd83843aa098e14d111629fdc366504b9ed9f52dc14c1db59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c31b33f7806dc2956273707f437f897a8ac46b7d6880e6ffadfcdb639993c9d418f19070ac0c6f1ebcf2f85dc368c4e01fb9bca5ea6d8b0f71ed8a3a554f2685636c5dbcb4c5c4ba6a7cc1c68e84adffd77d4531879bc1c55c9358976ce8a2b707f395466cb4ef46b36bb2f9688e2e5fb976777c6162d12e2fbe32e49c9be9d37e59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3887bf62500a66ee31a2f42426344b7ad1b9a8d25b8135b44ad04b5b945220c3159db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c39afa1bc1686284b0825789d8fbef2755d88ec5425305f57bf68827edf2d55b9d6d87a10ca4cc55ac8643be05788965a80c21f69e7997d61dd6c703b5cb01ba239560bd4e2ca98d4e02394d832879176144ec8b3c3d9d30220a1787db7fefc2931003bbe3cf5035d6523e9f5d6f179fb46e2511ab81b5bf45072f966f9bb9144ac2cac70f50ef33741bde1c13984a7ca0d5e4d00c263e87b3a6a5dcc36ea2d5e459db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3b3dfa2f1b7e01fa6414e84c5f873bb5ca16bdc410b8673237486e0da2ecc1d37c003957a3dced217ec086855fea41605ea0160537ff53b9988578fb316e1b02559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3c097fafc682e7aecf4759f6d531b1f7d0abea2a427512a27d414bcd0e99318f436f85b3ed4d9c6acd96e1f164ad73caadac5dea761c36da9794645e8868c5dee214dca9d70291b31eeddd028aae5e2979af50e5ee6f6e043ab29544d2a3c1bdcac6e39a6d2a21482ebc3fda2edbf03e87cfbc6f01906d66cdf952ec945427bbb59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3b9f234b3cfdc732cb9ca25642534ef4a9dc76fb2931b4d69fe9c887889ae2ae201335347551215b69ec591c80faf1e7211c44583ee4890134c0b4ec4444804ed8d5015847738271ed37ec14cb2be8e9a6a23d7dabfed32b53dcc54194819256f71e2f2b1b7bce2d1c2d05f975bd578f4bc930c4f6aed924c251d914be648921359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38d5015847738271ed37ec14cb2be8e9a6a23d7dabfed32b53dcc54194819256f4f059d74fa5ce2096e21d95edf61194e0f3c1cee1e1221e600e325dee90602a47ac57383ccd8ac1e0d1d39a321c715cc620f0c196009c74ef4faec0d071ea3fea3e81d2f73f8a3205d07f7211431f337f4dec54089977670ffe7729f3bf6dfd923357c56b45b7bc8c980df636ebbd472bb3f4b47dd6340a1cc7bb2ec6328f8c88b5ac94e950d2b310215a89fc651b6310f5749dc508af1eefa23f434cb0e1ed359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3c7bc2efabbbb2f71e33ae1b23e6f934d3ca9ed77f6c85fd26c5a9d7de1285b40a0e54f7165e8e674ebf933d5c37c3f76149af3eb8a969ac1ac1fd5043382abac59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38d0fc71a61ad7316bd0b2b65b912c865f2e20f3a9a5b3a3a628bd4d3c40f65675b021a9befbd3b0854d39635eae5d15f4ef9d3333448b7c754280fc6bcbb8ffc9b46f45380b36ad64b85158b4b197d39384bebca2885b363f2c69d357c0856db59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3eeaec885dbbc3b28e10dc64268ff7ca5d52ad1ec6fb3cf9952f0893eeefd659520475590bfef653383eb2e536095bfee9c20d85667b4a23004e4f49c421f807f8aaea0b5debc798d6fba04e88ccaad304fa3899a0408ac38b40eb7adf9101bdf5d1531bec13143ca87fde9f45cd9c048f48c61d9b142e603895f908883847e681979bd40a36f18ed623af9b369bd61fee3d7ab8920cffc113222e8319f82e7a5ef9350f0b7de5f9cc6f2de59168a7ef885cad119db280526f4675591c612ef2ef7bea9a33d4853ca60ee4813d9d26768e864dbcb1fd529ec744be1b9f59be24ba28af49e52d86a7aa6bfac32a89d070abdde800a3c2b4966ebf678c241ef2b48734c7666088ae7f49c15714ec1cde8aa519a9c01b35d1b9cd0486d6a764e351a59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3b8b9cf7173bb71abde68c926f9316f06a4d135c4e3eec091e8a6ee03e024ea855a46b61eb30256288fbf307857f875a35b583a0eb6419976cf8c56abec75e0e0b9e46c483bf65ff062a0f1845bab1965fb3bfce9b4687ea5d893e932522dc5804ecc6d0827cc6caffd85e2c11b0504970176c44e8eb93bc5d3c0d164835e585a561e0063cfe195696d52b572748c00c0754549d2b043c16c931877137847486659db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3b2202fed5563182f388e0e1697cc6249e4318c8769ae9906c406eec2fdc22b9267c6371b3daf2142cf62b217ff6e0781c667591d0814d342f5f5794bdf65036559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3d6bde77ff9962f11f906d8c5d20768f81aff70b639664a3d32a3c1c0fa6596c3e47be87eb5fe72efe1a6803a112533551bc2ef6f96eca9256e4d03ba4f023f5b59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3c5098710a87e302f65e7fbe70644650a7a6d464fe4187ce79f70667edf38315a80572f191cb6f73bbec7aae47d0c24e8c0a5a51f420f3748ad8f481ff497df077287035d6e5635d5fc9059a76e06e5fbc64ae0072aa84bfbc7ddffc615b6423dd69bc236014773cfbe631f14a4eee6f34b47135552fb9688c3c23a194802f46e59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c30315fb15da97d06806fefb6c2d7b9ce36ed69c301b5b19681c5090bc513697bcdd4e56deaabf40664964f53f2bf316f2593211e14dd5fb24af4a965d2fc448b526104289cef538f158c636a1294b17e0e1c6b3fcd180e048d25671f1633be678b770f080c897bff35ac3c11011f4c4fc2e92d158567817fc0f3868ea94209cf759db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3b5923bea624b3d81e949cf24b402c5ec0e05beeb4dfa3a8e05daef17274a6223fc90c05052a4154ba83b0d9fcdb33cebd6647ab493330558c2d31420c56c4b1b14c6704955fba9309c1d2c67e60254dedef52559ae53a1b66c4210edefb2527b59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3ac6e39a6d2a21482ebc3fda2edbf03e87cfbc6f01906d66cdf952ec945427bbbf263fb1594167c70fe42254120e86df0ade96b3b82be3fb1548e307618a895d34877b615c2a1300ed3539e357c7d16f32774e0836a745753ee6b3a6ccaf8a34b11eff195af0e10f226decd638bea3eba2e9925ac5a28ff9a9e0168e75459a41d59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3694f147be1695757a5e12f7008d034280e76219cdff8609c06e929e92324122559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3da2d8b85608eeefb1b893d1e88062e303e55ace61fb15b451b73e00c08a2f0a97df7c77c0acccc3bacdd950b7d6e5e2b80225fd65dae1ff2ffa04c2a613c5d4b59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f47eafa9077c2cbaf4486a54778bfaf8816dc9fb3a70037432ea129ce9d266c459db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3e46b2362de4fd8bd2f6f8fbc1197c092514e5282a2c095f12877a389c3d0b8e64e3e3533eacf2a691ddceb12f8e86ef085fea22c04586ccb2896461b85da1a2159db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3c50b177c3ab824d1a7855bface4f9e6950be08126ea169b91cc33d01cbc05cbf6f2091ec99003e8f37995f4e8d26427cc0858ee13a478167d5df9e6b52713b868162c125ec8adb5298dd50d0d817837c38c543f24ec023cb6bc43946177269d259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3d66d33249cfa39fd74289ee2e4608fda23bc8d0aa9e87e5b96d5bd58bd3447f821eeb06278380dfc7fbd81eed8440a8018f270652ac400310fafefac1e3d592562a1cdbaa3225e2abe12921a2097ecd5bbbbf9539cc6cea49fb2af92b804362cd301e59301d7ef274c0dd8d26a947bab92bd9028e084923c1f047ded8548e9d959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3edafad6f3eca50727349cc5320f70530ea590441adf234711f2359e4a7ccd65643ee2b79d5eef6e9a482b2393446abc31ab8cd74ebc55705f210146bf0eca34f893c1dba93090faeb81e3bdeab7138b9d4b5194a7303dfb9d37e5a1a96f47a3dd205688a9a5ff7122b6d9f276c247d4646a0ba390b1a1607903f4747c31425218ede379c146a4431d154e39900466537a93306cf666d1593f3adf65c33e3c7499719ba0b1bed1d1dcce0c1ddf9a6504aaaf65c4421136a3e874f964dc7b6aec6894568ad010c53d7fe554c2c1d9f7062d25113b25906b343b8c3692a68e86b4d9a3ff43de4e40a7c69147b2fe77fb0e5c1f713f7664787acafd98393694ac7641c50300071ed02d76f43209464a103cb32ef37e7c97a341ac11d131a3d254f7526728633de260f0b6d09d25d8af09ceda7143c3b0d7ce8fe2336acafb48d523d59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3fe87448e79c2ea82b2e07187f12a970f8df69d90467ecb31417da0b857aaefda6185c56e8175423e8b08b2573d1583ac689fa25c6346fe2323b6334522f6cb6959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c375ea449d8fb6cfd9f704834c9b784c0066c23388bd132d70bd4c2fa3eec84173fdc177c1fce8a8bdafd41405c5e2526aed9f893ed30b60471b789890d34ed190ee85c81cc47e834666177f173894376200a53e12312960fe3f667ca97dfa4e6959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3628336ca8a21ca0dff5f4aee00c2443487e8b1bbdf51574f7ca3472151b87a7a59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f6c08c3c18934e752643f048f5368fd3b1e956bfac894c0a052b701b86267bfa59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c373351b6a051545acd6a591a13405286cfda8d7607eb03ff890231e7755342ba377761fe01118f3733600c23a7a3b7359fca103bbe4f65d674dc921110a2962b3d7ade65785b07253a12e129a2fff015c13c863b2ad84c089e76f5d4a51d207e959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3c03c7c20e9e868c9abda0fc9dd58cbe1147e7367c6419136fcecd969bea00875f6bf0bfc359bb66fbe914b8fe6ebdeca70e9ff4dad6a6e7f66854084cb1d0292d37b3a540fffcac16e75451df58f6511a60d80f5d4b04dfb9d6bc2c97d9d35650135ba5f4ff6190253a1b42bd5d10e024c117ccd412c78644d7cf35928525ddd548cd32b8b84b4901130a8b27ce69cb4661cafaae9dff211d8c6eca692b60b313666710fe40b89ef4cbd31c2434472d747e8601e8da45cd0dbc3a91f32876f4b59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3a7714404c2cebc2146b5ca016fa41e24dadd460e6de6e52ce7d3656407380faf2b615c3335aa2243b68a539fa81ca51a7007d317a882b6a2f6ad7be8d1a0fae259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38d5015847738271ed37ec14cb2be8e9a6a23d7dabfed32b53dcc54194819256f59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3839bbb89affb0a9e666eae3d4cb8ce23bb6df54f0be266565740ce56a5c03f752eaeb2127ec17e6f104cd75f0187991ee172fedd6353d6f950f748e9fe015120831162be84f639fa988cb9c4b86b2c7cf41007a1a8cfe2f43dac2e73b9ee6c221c751da4c3f6aaa7d90f4955cb948a5d31f8d05a475074aa5e85b20ba2276a6159db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c31cca469a0274114cbfe250b404c65c253e80458d87ed2691fd23da56437cf8b37f8c873abc8b8fc32923c163dbc172bccb506b4eefd23630a9e78f4fe76aee0b6c296d97b7a04a01db9a8e700c46034ab4727117f3f34f0a23ebf22e49e1270ed6a99c06faec9760e0647d4e86b7a5919afa961720a1d95aec36f7996dee42909a591cb0d228320e349e2649ef91ae8fcd72bb6af0ddfcfd86a7b564c88690f2d15ff3cdd18cb9a8ea0461352c3390fbdabb2d371d814cabf2366c466a0f8625ec63342f8667c5b4bde3fb5ac3d7ec04851dc67854d89505f57a82d1c1ad9e5ffff7fcc29375d86dce6467426c500d8512430b86c9b73127410ecfd8148e2d6491625491226bc23d79b73776a35f0a1021760d66727e4a61f06f9f6e3936743f5842f2591a5d7d23b06fd18094725e46754b99c76438d7dc7284230800be3e90e154f6b524bcc75d64b1bbef5285963ed1dce731ae78c741d49e5f584aff9b9559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c32dc67603ef00859ad8fdc8e298cc5df60c582bafab45226146ec956766a46ed5a3fe36ccf1c9148177112b18cd98f4cb8f04bea15dcb6a838d25e29ee9d8809b7e127494c4834ba8517c144288a70774283d9d367fd6e45173e6c74bea37ba257da4fe950214916a7c711b89d489661dbe5bda0d9ebce8634ee964a14239ba6ef0f5d4705141cfed6944c1fae956f78ea3ae3184d4c170151c7f172581c99a0559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c39cf06ecc9a1a6e7e1a5f743aac4228da849ac6d714c9398a8e75ebc90d6e8d6b59b792f8987dcac5922dc43eb297fb11ff68ec4361d7f33fc67838c05505045359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c350a6c54f834d5287a99164656a64e648edcdd7fd10b9ba7ae12db6a2a8838b0a5f909db25870fc329495340582359c9aefdbfcfe269f07603aec558f10ac2ce559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3e0deba65094da1fbf3e7cd8bcbf9c6ac05f7096589cc67e3a06aeafd6784f91e59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c30c9aeb885b12151c35c2068fa43cc163ff874ea9d46e07b2f1f80d14816522773aeae17d1ed64477cbf53c464c5eae1dcc0e40acf7d47babb544e007832869b859db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3fadf67d5d0568f4d80ff7c3fff163978ba91938038e92c4a29e5eb4d29a0d00f1f1e415c5a921d370221b75205e564179e2dae9fcfa9c9f07139dbe557c038361b2bf44b13d80e3f22b111d9631b43a12de5e416414c94a2b4830172052ae6d3eca4f146ce7eb97451f65e1143b7a3f2fe06a426e0590765847962412aa8c8388c55c28941b38f5e41358294e0e340b973496fb7e519f8eeb63a494a67f43267a212fe592b5c037ccb81287ac1680ad5dfc1d71b712bd63fa410278e643442df363ccdcc3c350ce8913f6bf4bc5504ae91b3bcf15f7c2b3c950645ea5469a27559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3e2d0184017ce8b6a9cb178caa73ed4252458420d09396c3418d0940f5fed7802ed169bc070172c5b4a4c72f8c56e41c25fa51958858ad59d7a521111ea7119d5a95a0fa4ae3e3512e29c44fd7253b727a5f4bc8027b70b2b1824fe00c852ebfafe7f86a770e4ebce1b696cd7438990cf0020883eaf3122a06631b09680e05bb059db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3fc86bdc7930fa27d088a7000d7f69397d9347b31f2400ae3e22f79a459a99a9ebb2b38c4896ff37caa7c9defe6cfd42e692689c94ff55e569c930ffaf9730bb7c3ed22e539d70d9c07585824815618a1abf0a6c30f39d0eb8eb37bea5f9772ed12dffa8a82debda0ef8ddc1d44c9ea31d7143d99cd69d4d5eae9bd4700d6fa6bff79b19a87d61472bb14d7c82110d4b9d89c6add3d831dc2234a0b1cf872822f49e08fcfa98e11c359cceebb267a35ac026f2064f453899d981f121613b39e8d59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3959515ee9256a8271cfc92a0561180271336a09721a3247577c5785d85d5552273b654cc884b1e3b50e6545ed54bf57072eab3b672fc71664f16cd916c7257852fce2803ed886c7aacf8ec56d8a535d86bdcfbbf0d1e6d11337b4f300df6714059db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3933bd75065101f9bf3dee15fe0ebcc44e586ecd82f28fccd2783e4f88b667fe0b308c7bb0d1bb71a5caa73f5b823f7ff583c70815c9d06a58f7d3bae37f025ac7ac57383ccd8ac1e0d1d39a321c715cc620f0c196009c74ef4faec0d071ea3fe8d5015847738271ed37ec14cb2be8e9a6a23d7dabfed32b53dcc54194819256f59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c33aeae17d1ed64477cbf53c464c5eae1dcc0e40acf7d47babb544e007832869b815fef00a019e2055454734eb8008af7b7e22ab7142d4ce54767e1f5856152448f62b45236d1cbd736cd194d6ab963a4e6c9473cc842d0ae4cd6cc784bf61c0500500000000000000040000001881dc06eacd6bb0f65177c6c4b7fddbedf7df22fe01d377a16369048e5439c5f6146f7cb4c9acaa8345efd110aeab607aaa3474ee2ea7d2c74bd1be3fd2967a128c2fef5adb965110f5cc1aa219149494be1ba643a5ee54db9cf4719360310df03497e7769ad78283a16c261e563e10fc4e5b07b429f123b37aacdbb7661216951e37eba550c3f57a1b7a856303927dd85e02f2ce976bc4da76af8c9820e6bb89d16b71317695ea56b8e5ee69c9477176996985e84a3aad61e7e8f800b27c5df75d673f12925efd9e4ef7de72aaafe6d386c3f5de109316d172a5c1fbcb67ad4d895ed94edc8111419aaa9d1f8a6cd13739099d17d3b785402433f637ad2b618179e691d2fcbcb4f078688999ca920085d2cec7237b854534cc5959a32be477be985bc69154ff43f80c2add37de4fed9dfca99eb987bc4d683b23db8f62d5df69da6b3e17dab10ec776e45459e0090f2f0ee93b81efdf6e6933e7ba1036c5e702f5799b9fa79ff06d3c3980c5403ac01db5af566cc66d32a2592205672caec82f4e4a276f94b0ce26382c64984db9278d5eae36b38d83fc519f9be59e8d0feed05dfe3a98fceddcd61763911697d187ede83b9f7c961e2bcc54b3208095de0d261f49fe8981af94883fa27dbe7cdd04b1f8e95f8d9f5516d5ad1814998218e766731814f2604a4e3255e1f6c51dba91db0dc6b7238f86d40e7c6a7c684f9dc59c2fa3ef4b3134724ea1591c4b1fb7d8b3f05c78a4f365408070b4a5c9aa0bbc5093d3c4e6656bd217fe5eee4c2ca1bdd1c86421d8797b9fbf680d9defe3f7cea3a506d9f20e2a2b4f4b5bb623edb9b9a245e64671e0ac35a7f478d074c97a05e786e4ebc249af780fb51a929d229d14ce4067a3c7190aedb58365d36c489267d3d32445a8f47a3e1083078aa6a0afa8fb26c790627f2aabd1d1d9c539c18ad211d32951532a0b42ab23e4209bd7485207c4ce69606300b1dda8dfd1abd34edc46d6e215143b7fedff5e003bc43b1a811202f8c332304e7e7f82c41441554ea6f936b5d7a2f14248f1b01d84295c4fefce6524cc6902c16e4aaf7c7a6f1138858c05000000000000000800000018aa74defffe9fb42510b61721919d02fbdbb917764aff9f335ffa8b6c260f1a61efe4bbfa434a11fc0444abeb0af2d02ae4857bd67ad227070c8c5df3dee8af857b917bbf390fd94295b020728c7a223fd88e3eda8624e126e9737e83e53da1bdb10372a90b6182e6ed9ce0856a74f156c050977d14895cc7e83b2a6bc06f16ec1e0bd27cf45d9243b22b6bf07ae2f319cfe21ce32ae19ae0be437b5c0b61cb8cfbeddac75e32fe1d412e1c7f1e212e0f4280d9705286e67da48d06962e30fa062af3602ec75cad0eaf01192fd9bb6e7d9048fb1edab4e9c57b5d1d8751f6972f5d673f12925efd9e4ef7de72aaafe6d386c3f5de109316d172a5c1fbcb67ad4d0f63fd4e1eae31cf665ede64c90f147c68d66db151b3777487d3bcaf5f92d159a9884ce849de0c20989bb7f51fb46fbfc9ac29b7fee7a5328d046c3ed0346cc4f3ecd0550c29e1e8302ad05cd09a02e038eaa9d34a6d0ebe03c34c2af20f7db74410b6d5f250deef76f711c767b50efd26d59c58af123cb79296853bb8e8ec45706d02307f2c01626702cc53b5c5d5b0fa9e01105a310ab71e55bcb688d6be57e2b399f94d56589ee75a5c7bb2bd05154a570bb0c1f5b66a68047fdf3588e4e5ee953b0ae948b3c02f4e4f350af5d71e98c544c0258d698f1cf2a6bb32990485abbc197a5c1ee00ff2ad79be0f7eb7774e51e0378f49cae2edff75fe72309b765f3fdc08dce03b39fc7a72bdec7ba4899c02addc1792c679f3888fb23e381f93972a2aff614e9b2f5e059fb05750181b6d8b8dabd16a3365513d160aac558ec33559bb9876b5e3e045bff002e407b375664303ed375524930d3e857af6c4003de2d58bba6651b08563e99be472d02ad3c7762a1a60eefe137d8c139cd6b00444f7096fa429b215fb19216c2c23901ce5c1dfb545c22f28462d9ddc85c2719d2d79ecb64627301a55ae132f482d102f89d1d787b262e2829f6b45da6a81cd14deeea392bf2d2c4f408ca02aa30df5f064fcb634f956ff751e6ab63a7479609ac94de3267e13bab36e2240106fbf926f379e616d714abe8e348d6ab25b13f1a53b05000000000000000900000018d4ca674449c0eb96a864cfb982bca39412b0f3828a42ad5d54f2e516c472beeaf48aedff5819fdf5d46e962c5dcad980a0f728065e1d46591eb148031e20224afdfd4ef288c50b87dcd5ccaeeb9265f16a853f4970cd05f4742ec11cf45c5a4d8014217fb8776fee1e395545f44ecf21849df5a88be0e15b7c6305c99372daef2ac740276c4e72d79aae7171ba60f9538bfa42c6ce5cffb956f36caef9fba4169e02f8b1b6301c3368c44109363324e6597b1b2cf35d4a314af674979972618136f70106750308cc4e5c4324cb526e5586f8677a9a94c7423e7e9afd998dd2787334aeec9c8200c28a2c44be02c404582562cebb3ca63340835ea6ec28db23555d673f12925efd9e4ef7de72aaafe6d386c3f5de109316d172a5c1fbcb67ad4d3204f3f53b66cfc560dd0abe00c9df63f0c01ae5589b2db70b7c90c26cb666fca437e0176ecaebd65be38306a2866d8de87ce941c48c5652258901740b6ccb50895ab87bb8ec2ece987a52df192bba4e18d17ec9ceb8d3541dca5f67eed3b3cf3bcebd1774cf0b87be045c15ef2157d0a6739fac6d461a4a4f4f22868fa4593ae1a8f8e8b80c1476c6af1734b82d9d88d68cc27aa0719ac2237308d5630c705b324f805c0edf388a54b43af7e84b75bcbdd468de911f4c0f2aa540d1c1afa5cfbf4b6af503940e2cb7dd998d93e8c013dfa0a54ce4021227347b4bdd6ede9539e3b32e57189cdb6bd585a42caa6feff3216403cdc8cebd6a7eda160ad436962cf532b32a06a07dc3f7812abc01a0fb6ab56017c0d4f7e32a4491a261a662fc50dd2ce7f61266c5eb46f179db2f91ba822734f3faa01597a0df4bfa1686d9adec64baeedcb15b576098369cfe682f65f6372f648e50971838d5b57d619e92a813f6bd80f75727699348bfc0bc1d12b69768846946317f894f36c5601140d6580ff77bc6757ec7710d5d6a8e529f28bbb0dd38100d7b8d7d210257551278cabc84c2567a029fe6dd270d3340b61aa695444483218f61cb4f21a9887f8b4befaaf8c07ee116e04a3fbfbee65580bd7c02d500431b53cc4a2fb0b58aab5833b66e7005000000000000000c00000018846e9833c02f4df7b84e85ac647b1c8147b910eb8f5b919965908f0395dda018f7cb09877e9da69998ed560697ad4930e3619a0e60836f24e4d8cbe7ddea300d20bc5a6482640b8c6ff3cfaf5123e9f6bb77e48e785e343c7417dc3c96a6482690dfe037a96b14d60f9531906082622f44fabaf7304ca7b8a508f88b81a4da71b3256aae8c08f7b6caec2f3f16b56cfe2053c7028939d08c9522acc37787389f9c9afc55980ae78c52de986dafea074ec582f955018075a7ff85ccd56a86267fef341fce402fe6533868beb5da79f77af311c54ad0900bf9b56eb32028915353187bf830a74760722557a3dcf8b4fcfd1204b1eb335d2822ca6a87909c8f52c8f3dd776b176206e1f070e541092ef00b92811fb6bf1dce0d43fd31e60474c5bc09b43c42963999aab89f021c9ffde808fa286f14a88a8d43f605bd8d08662ffec9573a26dab39e6e69bc93b5c744ae410b7373eb309f1257f05cc8e870b50aada437e0176ecaebd65be38306a2866d8de87ce941c48c5652258901740b6ccb5098342d460b596a5fdf3bdd4f8caedfb278b1dcf4d11e26724119b4ff5a957ebcd19167e983ee5206e8ab1d31e21158db2080a56a3c65645e8e28cf16084d706904df25b87422989590613ef832dec4d7141a71206fab120f77a72c5b2cf093bc2062bcf9dd2a1ff08892eaf34d773ddfd637f0b268f46b687959008867e2b605191fb537868c8ea26ec3ee30b2837266348c8162b9e9048308fe7acea79a8bf5a31570a11df8ea6ddaf34dac0ff3e76dea212ac7bd830370ffe9e80cc52fc68df99af663ed8ffc43839b0125e1d36c5e884ed498c86c19e6daea27dd6fd998e598f82ed424cee1928c988f7f3b640aff5dbf0fc0f8353b85bbb8b57babb7d883c7d8ee97470bc9d3b09fb1ff033a55691dda13548ead59ddd97f34652be2a2c9dfc9becde66b3cd1373432a093525cbc2844d6a5166102da1c1a01bacc0994c835f1f064792f606960dd7501c694a1888a12c5aa0d1029d3690e73c42baa175885ad2267c810d7ba8cd4da059a692ee8ff0f62f91633dae83e3eb3de9124a88f05000000000000000d00000018d8681535c141e72648ad9ee14ec9a24100c3b81c6ed2a217b4d9edd8e546aeb10edef383858732498ce2f8e5b00bd2a258ef882af9db03eeba4b4188284f3a3563892ed38a0473c7f836f6b9067543deee23f9e4dc672998707692cc3c1d8bc83edbca05097685fb529ce7696179637edf932c3959ae39a65760b439e9b17a6c8443242ee3010aa7d85edcd6bb1f97beb74afd3fec93eb8ed19f02ee3f85d8d6f71e26ddeec77728f14d78cabc745187bb0a7ce51b5c1ed4672e2f584706d19723824da36cf0008b1ae8631e2e8cbaf336cbcc52f43d464838db3b2f704563037192e2223711ece848a3fe47b71f1fe739bda53ef5d6f28a85abce9d959d88d4abdbf106a1f54d99c361766e3a68b2f127023f8016753bc9b29ab68586d360855ab76d021de9d0331e005fbf9845f9e570debcd4328abedeae64b001c8f11d457105a25e62d61b3c02c3d2507f412008d7a93dd1f4a007ac4e4de47e78fafe12c2d9e841cf34727f22f9e1052a0c7c611e17840b0df2ca523ca3d6b80790cf42a437e0176ecaebd65be38306a2866d8de87ce941c48c5652258901740b6ccb5016e938a607dfca18812ead419316f484b5b2d655f3df5c6242971ad8cd7f4290df3700beb7a47b9e14e09ff01ae0ea67f084ad8f8fea627071521874d94e38e45201a213da66497303899448b14fd50bdbe16219524bc241b1264d83a9cb590a58a73ddc13524420173efc045f65834f0b800da4b6691ee03ea52f9f295214e377aed022a77223ecda2b6d2d03fdd1608931491cb4c512f275c32726a224ee13f6264cf72ce772792f36daac1e10bec70f738b5ced8d1e387f816b80e740d862bef1ebed2dd77bab72ad1e30d7854c1905f617043b40ccfc74a15ce360d25f15c2fde00d3a123b8bdb3b01a170ad1d0c6d5a6f3956ced4fe84c5543878e54cfe9bf5b98cd2ab66af6b9936653b03cbf0a7b5c0c7d6961d22c2b7fc9cfe827781e1656f27ceab1863d7f82b74a64528597852d64c993f7c263481b1f4deb1164520402cc10cedf67dbe787aea6ec8eb63276c06127401fe348ca2deaffc6a828505000000000000000d000000178c97a70f7062af87aba9faa0da70e88563576d09d15b82a2370c94a8836e2531b9823dea07c1e4a55f1b1074023d1778b3072d46a8b08a586eeeba4d1c25211bad305ba1fca7f124b510a39a671158dec2ca20817e0c9396d72fade74c4c877640d4b74f8023b580d2962b16078a704c6273192d26a4f357f1c82ea8dbd164c95d17b62e7f2cd35552df44f251472f49b23f5d206e62639bf185b7d1d341a2ff77e852beb299cf7fec6dc4685f4b3c3ac5706e66391eab6e9685f7e8fd2cfcd2251909a3da5f7c54dc3a2d78897966d943934cecf9a765917c745da68fa72c22873859eac803fcba266e80f184133ecf824a747e8583fb3b9524a8e57b6c143cf363a69c43a0a5e16a6498697699ff6fca1574b23fc3a1f614cc83c6ce2d75c34dbd7f137ef7c86232abc4fdee481d8343deb3da66485d995e25fabeaa7c4fe065d78f6983ba800721866b79e03c382e5ab4ee4419dcae20af65737cb28f3657f5c34b3e6c7ef78abdb126c561302f036888b1768f8f6618b40ba6d183c321cfa437e0176ecaebd65be38306a2866d8de87ce941c48c5652258901740b6ccb509f175d07d313bccc1473549b70f17f58ff6c0fe6e0a77d65046fbf89be0a4b8be2cabb675e44c6fdba40768f311fcd77b9af6314754b9d0c59d013b127c32fdaa76419f4595a3bc796a806fe22e264c11b591117e548c84e528572907cf25da9d2fb0e250e46dc80279ca49026f740bc2fd72c83f8e4a6b0737f557c96003493b5c7c2f3f0f0662bd3812e87c6853081296dd08cebe6f9be5b33a4256d3200d96aaebe92ebe4d5a0f2a8709467277e0521014b93d8845995d8f3cc6fc2f7a44a237db0d63705f1c80f9b5c84ba1a5624deab80033106a8c258784edff486de1e35d5c4003931ddf317a6334c562ab6812996b3018a06a6f781b8faf2badfc23f0d217668fd5bd0866b8073981971051991bbf6be2d47fdaa59a1fc3416b64464672e6a9b1095679d5383f56b28e072769c9f04fe16fbcf38b8313fcfd22dedb7039f0500000000000001008500f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285012633c5a15cde6875b8b31709bbaea3535e3f4505f35c9796e3eff8a22a7471e5050200000000000000000000000000000000000000000000000000000000000000008503f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28504f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28505f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28506f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28507f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab205080000000000000000000000000000000000000000000000000000000000000000850959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3850af8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2850b2ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958850c59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3850d2ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958850e59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3850ff8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28510f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28511f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28512980970eb1b4cc7e22eafd5bb555dfa9b1098a291f03675aec7afd2e39d8cbd998513f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2851459db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3851559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38516246ce9c9cc6fec3b832ffd375f4fdc1702fd63c5c8b23e292bd0e4fe36934f3985172ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b36389588518f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285192ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958851af8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2851b59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3851c2ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958851d58513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb851e59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3851f58513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb8520980970eb1b4cc7e22eafd5bb555dfa9b1098a291f03675aec7afd2e39d8cbd998521f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28522f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28523f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28524f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28525f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2852659db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38527f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28528f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28529246ce9c9cc6fec3b832ffd375f4fdc1702fd63c5c8b23e292bd0e4fe36934f39852af8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2852b59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3852cf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2852d59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3852e59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3852ff8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28530f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28531f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28532f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28533f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2853459db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38535f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28536f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2853759db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38538f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285392ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958853af8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2853bac6e39a6d2a21482ebc3fda2edbf03e87cfbc6f01906d66cdf952ec945427bbb853c59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3853d59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3853ef8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2853ff8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2854058513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb854158513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb854259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385438d5015847738271ed37ec14cb2be8e9a6a23d7dabfed32b53dcc54194819256f8544f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285457ac57383ccd8ac1e0d1d39a321c715cc620f0c196009c74ef4faec0d071ea3fe85462ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b36389588547f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28548f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2854959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3854a2ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958854bf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2854c59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3854df8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2854ef8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2854ff8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285502633c5a15cde6875b8b31709bbaea3535e3f4505f35c9796e3eff8a22a7471e58551f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28552f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2855358513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb8554f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28555f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28556f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28557f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2055800000000000000000000000000000000000000000000000000000000000000008559f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2855a980970eb1b4cc7e22eafd5bb555dfa9b1098a291f03675aec7afd2e39d8cbd99855bf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2855cf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2855df8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2855ef8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2855ff8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2856059db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3056100000000000000000000000000000000000000000000000000000000000000008562f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2856359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38564f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285652ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958856659db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38567f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28568f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28569f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2856af8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2856b59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3856c0315fb15da97d06806fefb6c2d7b9ce36ed69c301b5b19681c5090bc513697bc856d58513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb856ef8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2856fb60339afb10472a2a51d95521b005200f6f3c67722553ae62ef5fec1bde41b0a857059db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38571f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28572246ce9c9cc6fec3b832ffd375f4fdc1702fd63c5c8b23e292bd0e4fe36934f398573f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2857459db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38575ac6e39a6d2a21482ebc3fda2edbf03e87cfbc6f01906d66cdf952ec945427bbb85762633c5a15cde6875b8b31709bbaea3535e3f4505f35c9796e3eff8a22a7471e58577f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab205780000000000000000000000000000000000000000000000000000000000000000857959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3857a59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3857b3448d40db751bd88e124d5e47358ae66efd09f3a01ab97ed1d8595801e56f851057c0000000000000000000000000000000000000000000000000000000000000000857d59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3857ef8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2857ff8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2858059db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3858158513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb8582246ce9c9cc6fec3b832ffd375f4fdc1702fd63c5c8b23e292bd0e4fe36934f398583f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28584f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2858559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38586c50b177c3ab824d1a7855bface4f9e6950be08126ea169b91cc33d01cbc05cbf85872633c5a15cde6875b8b31709bbaea3535e3f4505f35c9796e3eff8a22a7471e5858858513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb858959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3858af8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2858bf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2858cf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2858d58513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb858e980970eb1b4cc7e22eafd5bb555dfa9b1098a291f03675aec7afd2e39d8cbd99858fb60339afb10472a2a51d95521b005200f6f3c67722553ae62ef5fec1bde41b0a8590f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28591f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28592f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28593f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28594f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28595f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28596f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28597f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab28598f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2859959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3859af8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2859bf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2859c59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3859df8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2859ef8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2859ff8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285a0f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285a159db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385a259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385a3628336ca8a21ca0dff5f4aee00c2443487e8b1bbdf51574f7ca3472151b87a7a85a459db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385a5f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285a659db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385a7f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285a8f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285a92ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b363895885aa3448d40db751bd88e124d5e47358ae66efd09f3a01ab97ed1d8595801e56f85185abf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285ac2ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b363895885adf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285aef8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285aff8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285b0f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285b159db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385b22633c5a15cde6875b8b31709bbaea3535e3f4505f35c9796e3eff8a22a7471e585b3b60339afb10472a2a51d95521b005200f6f3c67722553ae62ef5fec1bde41b0a85b459db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385b58d5015847738271ed37ec14cb2be8e9a6a23d7dabfed32b53dcc54194819256f85b659db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385b7f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285b82ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b363895885b9f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285baf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285bb59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385bc980970eb1b4cc7e22eafd5bb555dfa9b1098a291f03675aec7afd2e39d8cbd9985bdf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285bef8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab205bf000000000000000000000000000000000000000000000000000000000000000085c02633c5a15cde6875b8b31709bbaea3535e3f4505f35c9796e3eff8a22a7471e585c1f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285c2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285c4f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285c5f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285c6f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285c759db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385c859db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385c959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305ca000000000000000000000000000000000000000000000000000000000000000085cbf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285cc58513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb85cd7da4fe950214916a7c711b89d489661dbe5bda0d9ebce8634ee964a14239ba6e85cef8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285cf59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385d059db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385d159db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385d259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305d3000000000000000000000000000000000000000000000000000000000000000085d4f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285d559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385d6f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285d7f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285d859db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385d9980970eb1b4cc7e22eafd5bb555dfa9b1098a291f03675aec7afd2e39d8cbd9985da58513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb85dbf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285dc58513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb85dd59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385de59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385dfb60339afb10472a2a51d95521b005200f6f3c67722553ae62ef5fec1bde41b0a05e0000000000000000000000000000000000000000000000000000000000000000085e1f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285e2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab205e3000000000000000000000000000000000000000000000000000000000000000085e458513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb85e52ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b363895885e659db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385e7f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285e858513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb85e9980970eb1b4cc7e22eafd5bb555dfa9b1098a291f03675aec7afd2e39d8cbd9985eaf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285eb59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385ecfc86bdc7930fa27d088a7000d7f69397d9347b31f2400ae3e22f79a459a99a9e85edf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285eef8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285eff8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285f0f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285f1f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285f259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385f359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c305f4000000000000000000000000000000000000000000000000000000000000000085f5f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285f6f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285f7246ce9c9cc6fec3b832ffd375f4fdc1702fd63c5c8b23e292bd0e4fe36934f3985f8f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285f9f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285fa7ac57383ccd8ac1e0d1d39a321c715cc620f0c196009c74ef4faec0d071ea3fe85fb8d5015847738271ed37ec14cb2be8e9a6a23d7dabfed32b53dcc54194819256f85fc59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c385fd3aeae17d1ed64477cbf53c464c5eae1dcc0e40acf7d47babb544e007832869b885fef8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab285ff2ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab22633c5a15cde6875b8b31709bbaea3535e3f4505f35c9796e3eff8a22a7471e5298060d9342c83b505d26112522470b0804f31839bb8282ed57d4ab61e8cd07ff8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab26a013f7f00172b02f535c992ecb54a569fc962585be037fe24abf783b09c7e1959db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab22ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b363895859db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c32ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b363895859db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2980970eb1b4cc7e22eafd5bb555dfa9b1098a291f03675aec7afd2e39d8cbd99f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3246ce9c9cc6fec3b832ffd375f4fdc1702fd63c5c8b23e292bd0e4fe36934f392ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab22ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c32ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b363895858513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c358513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb980970eb1b4cc7e22eafd5bb555dfa9b1098a291f03675aec7afd2e39d8cbd99f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2246ce9c9cc6fec3b832ffd375f4fdc1702fd63c5c8b23e292bd0e4fe36934f39f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab22ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2ac6e39a6d2a21482ebc3fda2edbf03e87cfbc6f01906d66cdf952ec945427bbb59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab258513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb58513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38d5015847738271ed37ec14cb2be8e9a6a23d7dabfed32b53dcc54194819256ff8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab27ac57383ccd8ac1e0d1d39a321c715cc620f0c196009c74ef4faec0d071ea3fe2ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c32ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab22633c5a15cde6875b8b31709bbaea3535e3f4505f35c9796e3eff8a22a7471e5f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab258513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4ebf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2eeb7b34a522b809b0ada7674b6bfd549dfdc6b290f6f34bada4c09e7e44d0f56f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2980970eb1b4cc7e22eafd5bb555dfa9b1098a291f03675aec7afd2e39d8cbd99f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38e48d2af04e87fef50ab567ff1abcf6ed74d1ce42c5e56d78a51bd7c4eac6c3af8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab22ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b363895859db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c30315fb15da97d06806fefb6c2d7b9ce36ed69c301b5b19681c5090bc513697bc58513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4ebf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2b60339afb10472a2a51d95521b005200f6f3c67722553ae62ef5fec1bde41b0a59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2246ce9c9cc6fec3b832ffd375f4fdc1702fd63c5c8b23e292bd0e4fe36934f39f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3ac6e39a6d2a21482ebc3fda2edbf03e87cfbc6f01906d66cdf952ec945427bbb2633c5a15cde6875b8b31709bbaea3535e3f4505f35c9796e3eff8a22a7471e5f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab27bc234ec1237de586baf2047d98e2a631f3b5cd5483da22b5268ff83f0a1748559db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c33448d40db751bd88e124d5e47358ae66efd09f3a01ab97ed1d8595801e56f851201b418e0900379889e24cd354d3cb79b1bdc094f7bd8183df5666ee08e605d159db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c358513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb246ce9c9cc6fec3b832ffd375f4fdc1702fd63c5c8b23e292bd0e4fe36934f39f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3c50b177c3ab824d1a7855bface4f9e6950be08126ea169b91cc33d01cbc05cbf2633c5a15cde6875b8b31709bbaea3535e3f4505f35c9796e3eff8a22a7471e558513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab258513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb980970eb1b4cc7e22eafd5bb555dfa9b1098a291f03675aec7afd2e39d8cbd99b60339afb10472a2a51d95521b005200f6f3c67722553ae62ef5fec1bde41b0af8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3628336ca8a21ca0dff5f4aee00c2443487e8b1bbdf51574f7ca3472151b87a7a59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab22ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b36389583448d40db751bd88e124d5e47358ae66efd09f3a01ab97ed1d8595801e56f851f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab22ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c32633c5a15cde6875b8b31709bbaea3535e3f4505f35c9796e3eff8a22a7471e5b60339afb10472a2a51d95521b005200f6f3c67722553ae62ef5fec1bde41b0a59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c38d5015847738271ed37ec14cb2be8e9a6a23d7dabfed32b53dcc54194819256f59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab22ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b3638958f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3980970eb1b4cc7e22eafd5bb555dfa9b1098a291f03675aec7afd2e39d8cbd99f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2342e247de32958e9bce86398c37e1086081777c3a46fc0b87ff7ca92c3971e582633c5a15cde6875b8b31709bbaea3535e3f4505f35c9796e3eff8a22a7471e5f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f7a3415425f16d351eafe69e5480fe6d9490d9fbb7ddf5c777d49f8c7c4f5716f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab258513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb7da4fe950214916a7c711b89d489661dbe5bda0d9ebce8634ee964a14239ba6ef8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3d97565615bc09d396e0a4d7b5ab5b351c179a0d14adeef558681b00ced31c32ef8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3980970eb1b4cc7e22eafd5bb555dfa9b1098a291f03675aec7afd2e39d8cbd9958513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4ebf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab258513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3b60339afb10472a2a51d95521b005200f6f3c67722553ae62ef5fec1bde41b0a3e400b6f0a19b153f73b1948524410549dbf332279c67636fa1c323c14374f9cf8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab24c1352b45a8f18c83570a19ff606f9f424feea6a7f820885bae61848cf1f7f3058513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb2ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b363895859db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab258513dac7c2f4e49ebbf425ee348c93499447e555d94a9ff33bdfbf0448be4eb980970eb1b4cc7e22eafd5bb555dfa9b1098a291f03675aec7afd2e39d8cbd99f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3fc86bdc7930fa27d088a7000d7f69397d9347b31f2400ae3e22f79a459a99a9ef8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab259db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c359db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c3f5887e66dfc81255c36cbd2e391fba29d310d1f749e4c3d94d8df123fa110b29f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2246ce9c9cc6fec3b832ffd375f4fdc1702fd63c5c8b23e292bd0e4fe36934f39f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab2f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab27ac57383ccd8ac1e0d1d39a321c715cc620f0c196009c74ef4faec0d071ea3fe8d5015847738271ed37ec14cb2be8e9a6a23d7dabfed32b53dcc54194819256f59db9586e21ab1f999b3fbd53a84cff36bdfc7761f7a8492d0311130d64762c33aeae17d1ed64477cbf53c464c5eae1dcc0e40acf7d47babb544e007832869b8f8672a6c2801cbd5387e0370fb071fc8d925ed91b73258693c05470df0214ab22ba0ea03c4fe4b5182e01a361ad8601b98f2248dee9904ee76da08f1b363895805000000000000000400000017dbc5f1911c3a2b477f3ecc6399140aeee243e62b5a144ba15bd8048a7095d2adc60784b02d4eb846088b07c0286465b9ae17243006d0adfe7e45c07eb7b99692555a37bebe67805f3f4919655f20dc84e602c980c730d232055b7fbcd8517ea740d4b74f8023b580d2962b16078a704c6273192d26a4f357f1c82ea8dbd164c9a549173d4a58ed876c024deb184db8a43f66f6216f7c500dbaf86a12b8e27f4741fd70c8c6fa3bb2d0739a83aae755572523eb10254f931a7893cba48691296aabfa1f73818b3665afd4e4d613c402aed2da9de13a97585feca92c0ec4eaa33df7ac6e4a64fcd5574947d1a4e09a288d03586964903f2a6d7fb4438728588b80dcab1d57352ad564b81362442ae092f3e6eb280ad9c27382bb7af310c22e725e56a8221b7ea22d831bae3f03fe0ca7df4dadef21c1c921640775058359e45c5d0f1cca7aece1d7b83b633c3f3eaae05de5426b7741ef8aa7a75704122842edf164eab42f62ee4166796664ff0c347251dc740ddf2c48b318034ea9afa49b7642a8fa2d0faed2ce88e793f0a240e7dac450dd7660eab0205ae36ea18d683c0795fdad7386988b7a02b8b809f2d8341f07bfba5946b06c70fbb840126449d239ba98f460f5a1ff09669054d7840b4251d655abad87219f328cc0d921a266f647c5c382e9f58845f241ccf3cbf8fb605e50a21877b2a052f1e3af780f96aba1bb0397c0c04f2f23f8290087eed42d897884a7e2b758bc7027dd801ad609cb1be0dbacaadbc1f74d1667b02db0e1d1dc4fb1cb5930a065681872474329cd734a0d882ec1e6b16fbb53eab5f95d9b8cabe4cc9837aadf2242219cfa86180987957895d691224d7f2436abe2c173628c1a4657b5fee91e4d786381d3bebb7e66ebc4cde6c2957afa07ef4f2b063434633e37319b93cceb45ada018bb8a49588a4890e8e07ccbad601642f55103b5623857d27c4c06f3d29baf501c1a8f3e9f636ca0af56f37c7ee11b6cf644482fff8cbe067bba20c03f7b98cc5f77f05bb8364d75bb"}