[Added files from parenscript 0.1.0 as distributed by Manuel Odendahl Marco Baringer **20050726100416] { addfile ./css.lisp hunk ./css.lisp 1 +(in-package :js) + +(defun make-css-rule (selectors properties) + (list (mapcar #'val-to-string + (if (atom selectors) + (list selectors) + selectors)) + properties)) + +(defun css-rule-selectors (css-rule) + (first css-rule)) + +(defun css-rule-properties (css-rule) + (second css-rule)) + +(defmacro css-rule (selectors &rest properties) + `(make-css-rule ',selectors ',properties)) + +(defun propval-to-string (propval) + (format nil "~A:~A" (val-to-string (first propval)) + (val-to-string (second propval)))) + +(defun css-rule-to-string (css-rule) + (format nil "~A {~%~{~A;~%~}}~%~%" + (string-join (css-rule-selectors css-rule) ",") + (loop for propval on (css-rule-properties css-rule) by #'cddr + collect (concatenate 'string " " (propval-to-string propval))))) + +(defun css-to-string (rules) + (string-join (mapcar #'css-rule-to-string rules) "; ")) + +(defmacro css (&rest rules) + `((:style :type "text/css") + (:princ #\Newline "" #\Newline))) + +(defmacro css-inline (&rest propvals) + `(concatenate 'string ,@(loop for propval on propvals by #'cddr + collect (propval-to-string propval)))) + +(defmacro css-file (&rest rules) + `(html + (:princ + ,@(mapcar #'(lambda (rule) `(css-rule-to-string (css-rule ,@rule))) rules)))) + +;;; examples + +;;; generate a CSS file +#+nil +(html-stream *standard-output* + (css-file (* :border "1px solid black") + (div.bl0rg :font-family "serif") + (("a:active" "a:hoover") :color "black" :size "200%"))) + + +;;; generate an inline CSS spec in a HTML head element +#+nil +(html-stream *standard-output* + (html + (:html + (:head + (css (* :border "1px solid black") + (div.bl0rg :font-family "serif") + (("a:active" "a:hoover") :color "black" :size "200%")))))) + +;;; generate a style attribute for a DIV element +#+nil +(html-stream *standard-output* + (html (:html (:body ((:div :style (css-inline :border "1px solid black")) + "foobar"))))) + addfile ./introduction.lisp hunk ./introduction.lisp 1 +;;;# Introduction +;;; +;;; ParenScript is a simple language that looks a lot like Lisp, but +;;; actually is JavaScript in disguise. Actually, it is JavaScript +;;; embedded in a host Lisp. This way, JavaScript programs can be +;;; seamlessly integrated in a Lisp web application. The programmer +;;; doesn't have to resort to a different syntax, and JavaScript code +;;; can easily be generated without having to resort to complicated +;;; string generation or `FORMAT' expressions. +;;; +;;; An example is worth more than a thousand words. The following Lisp +;;; expression is a call to the ParenScript "compiler". The +;;; ParenScript "compiler" transforms the expression in ParenScript +;;; into an equivalent, human-readable expression in JavaScript. + +(js + (defun foobar (a b) + (return (+ a b)))) + +;;; The resulting javascript is: + +function foobar(a, b) { + return a + b; +} + +;;; Great care has been given to the indentation and overall +;;; readability of the generated JavaScript code. + +;;;# Features +;;; +;;; ParenScript supports all the statements and expressions defined by +;;; the EcmaScript 262 standard. Lisp symbols are converted to +;;; camelcase, javascript-compliant syntax. This idea is taken from +;;; Linj by Antonio Menezes Leitao. Here are a few examples of Lisp +;;; symbol to JavaScript name conversion: + +(js-to-string 'foobar) => "foobar" +(js-to-string 'foo-bar) => "fooBar" +(js-to-string 'foo-b-@-r) => "fooBAtR" +(js-to-string 'foo-b@r) => "fooBatr" +(js-to-string '*array) => "Array" +(js-to-string '*math.floor) => "Math.floor" + +;;; It also supports additional iteration constructs, relieving the +;;; programmer of the burden of iterating over arrays. +;;; `for' loops can be written using the customary `DO' syntax. + +(js + (do ((i 0 (incf i)) + (j (aref arr i) (aref arr i))) + ((>= i 10)) + (alert (+ "i is " i " and j is " j)))) + +; compiles to + +for (var i = 0, j = arr[i]; i < 10; i = ++i, j = arr[i]) { + alert("i is " + i + " and j is " + j); +} + +;;; ParenScript uses the Lisp reader, allowing for reader macros. It +;;; also comes with its own macro environment, allowing host macros +;;; and ParenScript to coexist without interfering with each other. +;;; Furthermore, ParenScript uses its own compiler macro system, +;;; allowing for an even further customization of the generation of +;;; JavaScript. For example, the `1+' construct is implemented using a +;;; ParenScript macro: + +(defjsmacro 1+ (form) + `(+ ,form 1)) + +;;; ParenScript allows the creation of JavaScript objects in a Lispy +;;; way, using keyword arguments. + +(js + (create :foo "foo" + :bla "bla")) + +; compiles to + +{ foo : "foo", + bla : "bla" } + +;;; ParenScript features a HTML generator. Using the same syntax as +;;; the `HTMLGEN' package of Franz, Inc., it can generate JavaScript +;;; string expressions. This allows for a clean integration of HTML in +;;; ParenScript code, instead of writing the tedious and error-prone +;;; string generation code generally found in JavaScript. + +(js + (defun add-div (name href link-text) + (document.write + (html ((:div :id name) + "The link is: " + ((:a :href href) link-text)))))) + +; compiles to + +function addDiv(name, href, linkText) { + document.write("
The link is: " + + linkText + "
"); +} + +;;; In order to have a complete web application framework available in +;;; Lisp, ParenScript also provides a sexp-based syntax for CSS +;;; files. Thus, a complete web application featuring HTML, CSS and +;;; JavaScript documents can be generated using Lisp syntax, allowing +;;; the programmer to use Lisp macros to factor out the redundancies +;;; and complexities of Web syntax. For example, to generate a CSS +;;; inline node in a HTML document: + +(html-stream *standard-output* + (html + (:html + (:head + (css (* :border "1px solid black") + (div.bl0rg :font-family "serif") + (("a:active" "a:hoover") :color "black" :size "200%")))))) + +; which produces + + + + + +;;;# Getting ParenScript +;;; +;;; ParenScript can be obtained from the BKNR subversion repository at + + svn://bknr.net/trunk/bknr/src/js + +;;; ParenScript does not depend on any part of BKNR though. You can +;;; download snapshots of ParenScript at the webpage + + http://bknr.net/parenscript + +;;; or using asdf-install. + + (asdf-install:install 'parenscript) + +;;; +;;; After downloading the ParenScript sourcecode, set up the ASDF +;;; central registry by adding a symlink to "parenscript.asd". Then +;;; use ASDF to load ParenScript. You may want to edit the ASDF file +;;; to remove the dependency on the Allegroserve HTMLGEN facility. + + (asdf:oos 'asdf:load-op :parenscript) + +;;; ParenScript was written by Manuel Odendahl. He can be reached at + + manuel@bknr.net + addfile ./js-html.lisp hunk ./js-html.lisp 1 +;; Description: +;; Javascript html generator + +(in-package :js) + +(defun optimize-string-list (list) + (let (res + cur) + (dolist (node list) + (when (numberp node) + (setf node (format nil "~A" node))) + (cond ((null cur) (setf cur node)) + ((and (stringp cur) + (stringp node)) + (setf cur (concatenate 'string cur node))) + (t (push cur res) + (setf cur node)))) + (push cur res) + (nreverse res))) + +(defun process-html-forms (forms) + (let (res) + (labels ((handle-form (form) + (cond ((keywordp form) + (push (format nil "<~A/>" + (string-downcase (symbol-name form))) res)) + + ((atom form) + (push form res)) + + ((and (consp form) + (keywordp (first form))) + (let ((node-name (string-downcase (symbol-name (first form))))) + (push (format nil "<~A>" node-name) res) + (map nil #'handle-form (cdr form)) + (push (format nil "" node-name) res))) + + ((and (consp form) + (consp (first form)) + (keywordp (caar form))) + (let ((node-name (string-downcase (symbol-name (caar form))))) + (push (format nil "<~A" node-name) res) + (loop for (attr-name attr-val) on (cdar form) by #'cddr + do (unless (keywordp attr-name) + (error "~A is not a node attribute" attr-name)) + (push (format nil " ~A=\"" (string-downcase (symbol-name attr-name))) + res) + (push attr-val res) + (push "\"" res)) + (push ">" res) + (map nil #'handle-form (cdr form)) + (push (format nil "" node-name) res))) + + ((consp form) + (push form res))))) + (map nil #'handle-form forms)) + (cons '+ (optimize-string-list (nreverse res))))) + +(define-js-compiler-macro html (&rest forms) + (js-compile (process-html-forms forms))) addfile ./js.asd hunk ./js.asd 1 +(in-package :cl-user) + +(defpackage :js.system + (:use :cl :asdf)) + +(in-package :js.system) + +(defsystem :js + :name "js" + :author "Manuel Odendahl " + :version "0" + :maintainer "Manuel Odendahl " + :licence "BSD" + :description "js - javascript compiler" + + :depends-on (#-allegro + :htmlgen) + + :components ((:file "package") + (:file "utils" :depends-on ("package")) + (:file "js" :depends-on ("package" "utils")) + (:file "js-html" :depends-on ("package" "js" "utils")) + (:file "css" :depends-on ("package" "utils")))) addfile ./js.lisp hunk ./js.lisp 1 +(in-package :js) + +;;; ecmascript standard: +;;; http://www.ecma-international.org/publications/standards/Ecma-262.htm + +;;; javascript name conversion + +(defparameter *special-chars* + '((#\! . "Bang") + (#\? . "What") + (#\# . "Hash") + (#\$ . "Dollar") + (#\@ . "At") + (#\% . "Percent") + (#\+ . "Plus") + (#\* . "Star") + (#\/ . "Slash"))) + +(defun string-chars (string) + (coerce string 'list)) + +(defun constant-string-p (string) + (let ((len (length string)) + (constant-chars '(#\+ #\*))) + (and (> len 2) + (member (char string 0) constant-chars) + (member (char string (1- len)) constant-chars)))) + +(defun first-uppercase-p (string) + (and (> (length string) 1) + (member (char string 0) '(#\+ #\*)))) + +(defun symbol-to-js (symbol) + (when (symbolp symbol) + (setf symbol (symbol-name symbol))) + (let ((symbols (string-split symbol '(#\.)))) + (cond ((null symbols) "") + ((= (length symbols) 1) + (let (res + (lowercase t) + (all-uppercase nil)) + (cond ((constant-string-p symbol) + (setf all-uppercase t + symbol (subseq symbol 1 (1- (length symbol))))) + ((first-uppercase-p symbol) + (setf lowercase nil + symbol (subseq symbol 1)))) + (flet ((reschar (c) + (push (if (and lowercase (not all-uppercase)) + (char-downcase c) + (char-upcase c)) res) + (setf lowercase t))) + (dotimes (i (length symbol)) + (let ((c (char symbol i))) + (cond + ((eql c #\-) + (setf lowercase (not lowercase))) + ((assoc c *special-chars*) + (dolist (i (coerce (cdr (assoc c *special-chars*)) 'list)) + (reschar i))) + (t (reschar c)))))) + (coerce (nreverse res) 'string))) + (t (string-join (mapcar #'symbol-to-js symbols) "."))))) + +;;; js language types + +(defgeneric js-equal (obj1 obj2)) +(defmethod js-equal ((obj1 list) (obj2 list)) + (and (= (length obj1) (length obj2)) + (every #'js-equal obj1 obj2))) +(defmethod js-equal ((obj1 t) (obj2 t)) + (equal obj1 obj2)) + +(defmacro defjsclass (name superclasses slots &rest class-options) + (let ((slot-names (mapcar #'(lambda (slot) (if (atom slot) slot (first slot))) slots))) + `(progn + (defclass ,name ,superclasses + ,slots ,@class-options) + (defmethod js-equal ((obj1 ,name) (obj2 ,name)) + (every #'(lambda (slot) + (js-equal (slot-value obj1 slot) + (slot-value obj2 slot))) + ',slot-names))))) + +(defjsclass statement () + ((value :initarg :value :accessor value :initform nil))) + +(defjsclass expression (statement) + ((value))) + +;;; indenter + +(defun special-append-to-last (form elt) + (flet ((special-append (form elt) + (let ((len (length form))) + (if (and (> len 0) + (member (char form (1- len)) + '(#\; #\, #\}))) + form + (concatenate 'string form elt))))) + (cond ((stringp form) + (special-append form elt)) + ((consp form) + (let ((last (last form))) + (if (stringp (car last)) + (rplaca last (special-append (car last) elt)) + (append-to-last (car last) elt)) + form)) + (t (error "unsupported form ~S" form))))) + +(defun dwim-join (value-string-lists max-length + &key start end + join-before join-after + white-space (separator " ") + (append-to-last #'append-to-last) + (collect t)) + #+nil + (format t "value-string-lists: ~S~%" value-string-lists) + + (unless start + (setf start "")) + + (unless join-before + (setf join-before "")) + + ;;; collect single value-string-lists until line full + + (do* ((string-lists value-string-lists (cdr string-lists)) + (string-list (car string-lists) (car string-lists)) + (cur-elt start) + (cur-empty t) + (white-space (or white-space (make-string (length start) :initial-element #\Space))) + (res nil)) + ((null string-lists) + (unless cur-empty + (push cur-elt res)) + (if (null res) + (list (concatenate 'string start end)) + (progn + (when end + (setf (first res) + (funcall append-to-last (first res) end))) + (nreverse res)))) + + #+nil + (format t "string-list: ~S~%" string-list) + + (when join-after + (unless (null (cdr string-lists)) + (funcall append-to-last string-list join-after))) + + (if (and collect (= (length string-list) 1)) + (progn + #+nil + (format t "cur-elt: ~S line-length ~D, max-length ~D, string: ~S~%" + cur-elt + (+ (length (first string-list)) + (length cur-elt)) + max-length + (first string-list)) + (if (or cur-empty + (< (+ (length (first string-list)) + (length cur-elt)) max-length)) + (setf cur-elt + (concatenate 'string cur-elt + (if cur-empty "" (concatenate 'string separator join-before)) + (first string-list)) + cur-empty nil) + (progn + (push cur-elt res) + (setf cur-elt (concatenate 'string white-space + join-before (first string-list)) + cur-empty nil)))) + + (progn + (unless cur-empty + (push cur-elt res) + (setf cur-elt white-space + cur-empty t)) + (setf res (nconc (nreverse + (cons (concatenate 'string + cur-elt (if (null res) + "" join-before) + (first string-list)) + (mapcar #'(lambda (x) (concatenate 'string white-space x)) + (cdr string-list)))) res)) + (setf cur-elt white-space cur-empty t))))) + +(defmethod js-to-strings ((expression expression) start-pos) + (list (princ-to-string (value expression)))) + +(defmethod js-to-statement-strings ((expression expression) start-pos) + (js-to-strings expression start-pos)) + +(defmethod js-to-statement-strings ((statement statement) start-pos) + (list (princ-to-string (value statement)))) + +;;; compiler macros + +(eval-when (:compile-toplevel :load-toplevel :execute) + (defvar *js-compiler-macros* (make-hash-table) + "*JS-COMPILER-MACROS* is a hash-table containing the functions corresponding +to javascript special forms, indexed by their name. Javascript special +forms are compiler macros for JS expressions.")) + +(defmacro define-js-compiler-macro (name lambda-list &rest body) + "Define a javascript compiler macro NAME. Arguments are destructured +according to LAMBDA-LIST. The resulting JS language types are appended +to the ongoing javascript compilation." + (let ((js-name (intern (concatenate 'string "JS-" (symbol-name name)) #.*package*))) + `(eval-when (:compile-toplevel :load-toplevel :execute) + (defun ,js-name ,lambda-list ,@body) + (setf (gethash ',name *js-compiler-macros*) #',js-name)))) + +(defun js-compiler-macro-form-p (form) + (when (gethash (car form) *js-compiler-macros*) + t)) + +(defun js-get-compiler-macro (name) + (gethash name *js-compiler-macros*)) + +;;; macro expansion + +(eval-when (:compile-toplevel :load-toplevel :execute) + (defvar *js-macro-toplevel* (make-hash-table) + "Toplevel of macro expansion, holds all the toplevel javascript macros.") + (defvar *js-macro-env* (list *js-macro-toplevel*) + "Current macro environment.")) + +(defun lookup-macro (name) + "Lookup the macro NAME in the current macro expansion +environment. Returns the macro and the parent macro environment of +this macro." + (do ((env *js-macro-env* (cdr env))) + ((null env) nil) + (let ((val (gethash name (car env)))) + (when val + (return-from lookup-macro + (values val (or (cdr env) + (list *js-macro-toplevel*)))))))) + +(defmacro defjsmacro (name args &rest body) + "Define a javascript macro, and store it in the toplevel macro environment." + (when (gethash name *js-compiler-macros*) + (warn "Redefining compiler macro ~S" name) + (remhash name *js-compiler-macros*)) + (let ((lambda-list (gensym))) + `(setf (gethash ',name *js-macro-toplevel*) + #'(lambda (&rest ,lambda-list) + (destructuring-bind ,args ,lambda-list ,@body))))) + +(defun js-expand-form (expr) + "Expand a javascript form." + (cond ((atom expr) + (multiple-value-bind (js-macro macro-env) + (lookup-macro expr) + (if js-macro + (js-expand-form (let ((*js-macro-env* macro-env)) + (funcall js-macro))) + expr))) + + ((js-compiler-macro-form-p expr) expr) + + ((equal (first expr) 'quote) expr) + + (t (let ((js-macro (lookup-macro (car expr)))) + (if js-macro + (js-expand-form (apply js-macro (cdr expr))) + expr))))) + +(defvar *var-counter* 0) + +(defun js-gensym (&optional (name "js")) + (intern (format nil "tmp-~A-~A" name (incf *var-counter*)) #.*package*)) + +;;; literals + +(defmacro defjsliteral (name string) + "Define a Javascript literal that will expand to STRING." + `(define-js-compiler-macro ,name () (make-instance 'expression :value ,string))) + +(defjsliteral this "this") +(defjsliteral t "true") +(defjsliteral nil "null") +(defjsliteral false "false") +(defjsliteral undefined "undefined") + +(defmacro defjskeyword (name string) + "Define a Javascript keyword that will expand to STRING." + `(define-js-compiler-macro ,name () (make-instance 'statement :value ,string))) + +(defjskeyword break "break") +(defjskeyword continue "continue") + +;;; array literals + +(defjsclass array-literal (expression) + ((values :initarg :values :accessor array-values))) + +(define-js-compiler-macro array (&rest values) + (make-instance 'array-literal + :values (mapcar #'js-compile-to-expression values))) + +(defjsmacro list (&rest values) + `(array ,@values)) + +(defmethod js-to-strings ((array array-literal) start-pos) + (let ((value-string-lists + (mapcar #'(lambda (x) (js-to-strings x (+ start-pos 2))) + (array-values array))) + (max-length (- 80 start-pos 2))) + (dwim-join value-string-lists max-length + :start "[ " :end " ]" + :join-after ","))) + +(defjsclass js-aref (expression) + ((array :initarg :array + :accessor aref-array) + (index :initarg :index + :accessor aref-index))) + +(define-js-compiler-macro aref (array &rest coords) + (make-instance 'js-aref + :array (js-compile-to-expression array) + :index (mapcar #'js-compile-to-expression coords))) + +(defmethod js-to-strings ((aref js-aref) start-pos) + (dwim-join (cons (js-to-strings (aref-array aref) start-pos) + (mapcar #'(lambda (x) (dwim-join (list (js-to-strings x (+ start-pos 2))) + (- 80 start-pos 2) + :start "[" :end "]")) + (aref-index aref))) + (- 80 start-pos 2) :separator "" + :white-space " ")) + +(defjsmacro make-array (&rest inits) + `(new (*array ,@inits))) + +;;; string literals + +(defjsclass string-literal (expression) + (value)) + +(defmethod js-to-strings ((string string-literal) start-pos) + (declare (ignore start-pos)) + (list (prin1-to-string (value string)))) + +;;; number literals + +(defjsclass number-literal (expression) + (value)) + +;;; variables + +(defjsclass js-variable (expression) + (value)) + +(defmethod js-to-strings ((v js-variable) start-form) + (list (symbol-to-js (value v)))) + +;;; arithmetic operators + +(eval-when (:compile-toplevel :load-toplevel :execute) + + (defparameter *op-precedence-hash* (make-hash-table)) + + (defparameter *op-precedences* + '((aref) + (slot-value) + (! not ~) + (* / %) + (+ -) + (<< >>) + (>>>) + (< > <= >=) + (in if) + (eql == != =) + (=== !==) + (&) + (^) + (\|) + (\&\& and) + (\|\| or) + (setf *= /= %= += -= <<= >>= >>>= \&= ^= \|=) + (comma))) + + ;;; generate the operator precedences from *OP-PRECEDENCES* + (let ((precedence 1)) + (dolist (ops *op-precedences*) + (dolist (op ops) + (setf (gethash op *op-precedence-hash*) precedence)) + (incf precedence)))) + +(defun js-convert-op-name (op) + (case op + (and '\&\&) + (or '\|\|) + (not '!) + (eql '\=\=) + (= '\=\=) + (t op))) + +(defjsclass op-form (expression) + ((operator :initarg :operator :accessor operator) + (args :initarg :args :accessor op-args))) + +(defun op-form-p (form) + (and (listp form) + (not (js-compiler-macro-form-p form)) + (not (null (gethash (first form) *op-precedence-hash*))))) + +(defun klammer (string-list) + (prepend-to-first string-list "(") + (append-to-last string-list ")") + string-list) + +(defmethod expression-precedence ((expression expression)) + 0) + +(defmethod expression-precedence ((form op-form)) + (gethash (operator form) *op-precedence-hash*)) + +(defmethod js-to-strings ((form op-form) start-pos) + (let* ((precedence (expression-precedence form)) + (value-string-lists + (mapcar #'(lambda (x) + (let ((string-list (js-to-strings x (+ start-pos 2)))) + (if (>= (expression-precedence x) precedence) + (klammer string-list) + string-list))) + (op-args form))) + (max-length (- 80 start-pos 2)) + (op-string (format nil "~A " (operator form)))) + (dwim-join value-string-lists max-length :join-before op-string))) + +(defjsmacro 1- (form) + `(- ,form 1)) + +(defjsmacro 1+ (form) + `(+ ,form 1)) + +(defjsclass one-op (expression) + ((pre-p :initarg :pre-p + :initform nil + :accessor one-op-pre-p) + (op :initarg :op + :accessor one-op))) + +(defmethod js-to-strings ((one-op one-op) start-pos) + (let* ((value (value one-op)) + (value-strings (js-to-strings value start-pos))) + (when (typep value 'op-form) + (setf value-strings (klammer value-strings))) + (if (one-op-pre-p one-op) + (prepend-to-first value-strings + (one-op one-op)) + (append-to-last value-strings + (one-op one-op))))) + +(define-js-compiler-macro incf (x) + (make-instance 'one-op :pre-p t :op "++" + :value (js-compile-to-expression x))) +(define-js-compiler-macro ++ (x) + (make-instance 'one-op :pre-p nil :op "++" + :value (js-compile-to-expression x))) +(define-js-compiler-macro decf (x) + (make-instance 'one-op :pre-p t :op "--" + :value (js-compile-to-expression x))) +(define-js-compiler-macro -- (x) + (make-instance 'one-op :pre-p nil :op "--" + :value (js-compile-to-expression x))) + + +(define-js-compiler-macro not (x) + (let ((value (js-compile-to-expression x))) + (if (and (typep value 'op-form) + (= (length (op-args value)) 2)) + (let ((new-op (case (operator value) + (== '!=) + (< '>=) + (> '<=) + (<= '>) + (>= '<) + (!= '==) + (=== '!==) + (!== '===) + (t nil)))) + (if new-op + (make-instance 'op-form :operator new-op + :args (op-args value)) + (make-instance 'one-op :pre-p t :op "!" + :value value))) + (make-instance 'one-op :pre-p t :op "!" + :value value)))) + +;;; function calls + +(defjsclass function-call (expression) + ((function :initarg :function :accessor f-function) + (args :initarg :args :accessor f-args))) + +(defun funcall-form-p (form) + (and (listp form) + (not (op-form-p form)) + (not (js-compiler-macro-form-p form)))) + +(defmethod js-to-strings ((form function-call) start-pos) + (let* ((value-string-lists + (mapcar #'(lambda (x) (js-to-strings x (+ start-pos 2))) + (f-args form))) + (max-length (- 80 start-pos 2)) + (args (dwim-join value-string-lists max-length + :start "(" :end ")" :join-after ","))) + (dwim-join (list (js-to-strings (f-function form) (+ start-pos 2)) + args) + max-length + :separator ""))) + +(defjsclass method-call (expression) + ((method :initarg :method :accessor m-method) + (object :initarg :object :accessor m-object) + (args :initarg :args :accessor m-args))) + +(defmethod js-to-strings ((form method-call) start-pos) + (let ((fname (dwim-join (list (js-to-strings (m-object form) (+ start-pos 2)) + (list (symbol-to-js (m-method form)))) + (- 80 start-pos 2) + :end "(" + :separator ""))) + (let ((butlast (butlast fname)) + (last (car (last fname)))) + (nconc butlast + (dwim-join (mapcar #'(lambda (x) (js-to-strings x (+ start-pos 2))) + (m-args form)) + (- 80 start-pos 2) + :start last + :end ")" + :join-after ","))))) + +(defun method-call-p (form) + (and (funcall-form-p form) + (symbolp (first form)) + (eql (char (symbol-name (first form)) 0) #\.))) + +;;; body forms + +(defjsclass js-body (expression) + ((stmts :initarg :stmts :accessor b-stmts) + (indent :initarg :indent :initform "" :accessor b-indent))) + +(define-js-compiler-macro progn (&rest body) + (make-instance 'js-body + :stmts (mapcar #'js-compile-to-statement body))) + +(defmethod initialize-instance :after ((body js-body) &rest initargs) + (declare (ignore initargs)) + (let* ((stmts (b-stmts body)) + (last (last stmts)) + (last-stmt (car last))) + (when (typep last-stmt 'js-body) + (setf (b-stmts body) + (nconc (butlast stmts) + (b-stmts last-stmt)))))) + + +(defmethod js-to-statement-strings ((body js-body) start-pos) + (dwim-join (mapcar #'(lambda (x) (js-to-statement-strings x (+ start-pos 2))) + (b-stmts body)) + (- 80 start-pos 2) + :join-after ";" + :append-to-last #'special-append-to-last + :start (b-indent body) :collect nil + :end ";")) + +(defmethod js-to-strings ((body js-body) start-pos) + (dwim-join (mapcar #'(lambda (x) (js-to-strings x (+ start-pos 2))) + (b-stmts body)) + (- 80 start-pos 2) + :append-to-last #'special-append-to-last + :join-after "," + :start (b-indent body))) + +(defjsclass js-sub-body (js-body) + (stmts indent)) + +(defmethod js-to-statement-strings ((body js-sub-body) start-pos) + (nconc (list "{") (call-next-method) (list "}"))) + +(defmethod expression-precedence ((body js-body)) + (if (= (length (b-stmts body)) 1) + (expression-precedence (first (b-stmts body))) + (gethash 'comma *op-precedence-hash*))) + +;;; function definition + +(defjsclass js-defun (expression) + ((name :initarg :name :accessor d-name) + (args :initarg :args :accessor d-args) + (body :initarg :body :accessor d-body))) + +(define-js-compiler-macro defun (name args &rest body) + (make-instance 'js-defun + :name (js-compile-to-symbol name) + :args (mapcar #'js-compile-to-symbol args) + :body (make-instance 'js-body + :indent " " + :stmts (mapcar #'js-compile-to-statement body)))) + +(defmethod js-to-strings ((defun js-defun) start-pos) + (let ((fun-header (dwim-join (mapcar #'(lambda (x) (list (symbol-to-js x))) + (d-args defun)) + (- 80 start-pos 2) + :start (format nil "function ~A(" + (symbol-to-js (d-name defun))) + :end ") {" :join-after ",")) + (fun-body (js-to-statement-strings (d-body defun) (+ start-pos 2)))) + (nconc fun-header fun-body (list "}")))) + +(defmethod js-to-statement-strings ((defun js-defun) start-pos) + (js-to-strings defun start-pos)) + +(defjsmacro lambda (args &rest body) + `(defun :|| ,args ,@body)) + +;;; object creation + +(defjsclass js-object (expression) + ((slots :initarg :slots + :accessor o-slots))) + +(define-js-compiler-macro create (&rest args) + (make-instance 'js-object + :slots (loop for (name val) on args by #'cddr + collect (list (js-compile-to-symbol name) + (js-compile-to-expression val))))) + +(defmethod js-to-strings ((object js-object) start-pos) + (let ((value-string-lists + (mapcar #'(lambda (slot) + (dwim-join (list (js-to-strings (second slot) (+ start-pos 4))) + (- 80 start-pos 2) + :start (concatenate 'string (symbol-to-js (first slot)) " : ") + :white-space " ")) (o-slots object))) + (max-length (- 80 start-pos 2))) + (dwim-join value-string-lists max-length + :start "{ " + :end " }" + :join-after ", " + :white-space " " + :collect nil))) + +(defjsclass js-slot-value (expression) + ((object :initarg :object + :accessor sv-object) + (slot :initarg :slot + :accessor sv-slot))) + +(define-js-compiler-macro slot-value (obj slot) + (make-instance 'js-slot-value :object (js-compile-to-expression obj) + :slot (js-compile-to-symbol slot))) + +(defmethod js-to-strings ((sv js-slot-value) start-pos) + (append-to-last (js-to-strings (sv-object sv) start-pos) + (format nil ".~A" (symbol-to-js (sv-slot sv))))) + +(defjsmacro with-slots (slots object &rest body) + `(symbol-macrolet ,(mapcar #'(lambda (slot) + `(,slot '(slot-value ,object ',slot))) + slots) + ,@body)) + +;;; macros + +(define-js-compiler-macro macrolet (macros &rest body) + (let* ((macro-env (make-hash-table)) + (*js-macro-env* (cons macro-env *js-macro-env*))) + (dolist (macro macros) + (destructuring-bind (name arglist &rest body) macro + (setf (gethash name macro-env) + (compile nil `(lambda ,arglist ,@body))))) + (js-compile `(progn ,@body)))) + +(defjsmacro symbol-macrolet (macros &rest body) + `(macrolet ,(mapcar #'(lambda (macro) + `(,(first macro) () ,@(rest macro))) macros) + ,@body)) + +;;; lisp eval + +(defjsmacro lisp (&rest forms) + (eval (cons 'progn forms))) + +;;; if + +(defjsclass js-if (expression) + ((test :initarg :test + :accessor if-test) + (then :initarg :then + :accessor if-then) + (else :initarg :else + :accessor if-else))) + +(define-js-compiler-macro if (test then &optional else) + (make-instance 'js-if :test (js-compile-to-expression test) + :then (js-compile-to-body then :indent " ") + :else (when else + (js-compile-to-body else :indent " ")))) + +(defmethod initialize-instance :after ((if js-if) &rest initargs) + (declare (ignore initargs)) + (when (and (if-then if) + (typep (if-then if) 'js-sub-body)) + (change-class (if-then if) 'js-body)) + (when (and (if-else if) + (typep (if-else if) 'js-sub-body)) + (change-class (if-else if) 'js-body))) + +(defmethod js-to-statement-strings ((if js-if) start-pos) + (let ((if-strings (dwim-join (list (js-to-strings (if-test if) 0)) + (- 80 start-pos 2) + :start "if (" + :end ") {")) + (then-strings (js-to-statement-strings (if-then if) (+ start-pos 2))) + (else-strings (when (if-else if) + (js-to-statement-strings (if-else if) + (+ start-pos 2))))) + (nconc if-strings then-strings (if else-strings + (nconc (list "} else {") else-strings (list "}")) + (list "}"))))) + +(defmethod expression-precedence ((if js-if)) + (gethash 'if *op-precedence-hash*)) + +(defmethod js-to-strings ((if js-if) start-pos) + (assert (typep (if-then if) 'expression)) + (when (if-else if) + (assert (typep (if-else if) 'expression))) + (dwim-join (list (append-to-last (js-to-strings (if-test if) start-pos) " ?") + (let* ((new-then (make-instance 'js-body + :stmts (b-stmts (if-then if)) + :indent "")) + (res (js-to-strings new-then start-pos))) + (if (>= (expression-precedence (if-then if)) + (expression-precedence if)) + (klammer res) + res)) + (list ":") + (if (if-else if) + (let* ((new-else (make-instance 'js-body + :stmts (b-stmts (if-else if)) + :indent "")) + (res (js-to-strings new-else start-pos))) + (if (>= (expression-precedence (if-else if)) + (expression-precedence if)) + (klammer res) + res)) + (list "undefined"))) + (- 80 start-pos 2) + :white-space " ")) + +(defjsmacro when (test &rest body) + `(if ,test (progn ,@body))) + +(defjsmacro unless (test &rest body) + `(if (not ,test) (progn ,@body))) + +;;; single keyword expressions and statements + +(defmacro define-js-single-op (name &optional (superclass 'expression)) + (let ((js-name (intern (concatenate 'string "JS-" (symbol-name name)) #.*package*))) + `(progn + (defjsclass ,js-name (,superclass) + (value)) + (define-js-compiler-macro ,name (value) + (make-instance ',js-name :value (js-compile-to-expression value))) + (defmethod ,(if (eql superclass 'expression) + 'js-to-strings + 'js-to-statement-strings) ((,name ,js-name) start-pos) + (dwim-join (list (js-to-strings (value ,name) (+ start-pos 2))) + (- 80 start-pos 2) + :start ,(concatenate 'string (string-downcase (symbol-name name)) " ") + :white-space " "))))) + + +(define-js-single-op return statement) +(define-js-single-op throw statement) +(define-js-single-op delete) +(define-js-single-op void) +(define-js-single-op typeof) +(define-js-single-op instanceof) +(define-js-single-op new) + +;;; assignment + +(defjsclass js-setf (expression) + ((lhs :initarg :lhs :accessor setf-lhs) + (rhsides :initarg :rhsides :accessor setf-rhsides))) + +(defun assignment-op (op) + (case op + (+ '+=) + (~ '~=) + (\& '\&=) + (\| '\|=) + (- '-=) + (* '*=) + (% '%=) + (>> '>>=) + (^ '^=) + (<< '<<=) + (>>> '>>>=) + (/ '/=) + (t nil))) + +(defun make-js-test (lhs rhs) + (if (and (typep rhs 'op-form) + (member lhs (op-args rhs) :test #'js-equal)) + (let ((args-without (remove lhs (op-args rhs) + :count 1 :test #'js-equal)) + (args-without-first (remove lhs (op-args rhs) + :count 1 :end 1 + :test #'js-equal)) + (one (list (make-instance 'number-literal :value 1)))) + #+nil + (format t "OPERATOR: ~S, ARGS-WITHOUT: ~S, ARGS-WITHOUT-FIRST ~S~%" + (operator rhs) + args-without + args-without-first) + (cond ((and (js-equal args-without one) + (eql (operator rhs) '+)) + (make-instance 'one-op :pre-p nil :op "++" + :value lhs)) + ((and (js-equal args-without-first one) + (eql (operator rhs) '-)) + (make-instance 'one-op :pre-p nil :op "--" + :value lhs)) + ((and (assignment-op (operator rhs)) + (member (operator rhs) + '(+ *))) + (make-instance 'op-form + :operator (assignment-op (operator rhs)) + :args (list lhs (make-instance 'op-form + :operator (operator rhs) + :args args-without)))) + ((and (assignment-op (operator rhs)) + (js-equal (first (op-args rhs)) lhs)) + (make-instance 'op-form + :operator (assignment-op (operator rhs)) + :args (list lhs (make-instance 'op-form + :operator (operator rhs) + :args (cdr (op-args rhs)))))) + (t (make-instance 'js-setf :lhs lhs :rhsides (list rhs))))) + (make-instance 'js-setf :lhs lhs :rhsides (list rhs)))) + +(define-js-compiler-macro setf (&rest args) + (let ((assignments (loop for (lhs rhs) on args by #'cddr + for rexpr = (js-compile-to-expression rhs) + for lexpr = (js-compile-to-expression lhs) + collect (make-js-test lexpr rexpr)))) + (if (= (length assignments) 1) + (first assignments) + (make-instance 'js-body :indent "" :stmts assignments)))) + +(defmethod js-to-strings ((setf js-setf) start-pos) + (dwim-join (cons (js-to-strings (setf-lhs setf) start-pos) + (mapcar #'(lambda (x) (js-to-strings x start-pos)) (setf-rhsides setf))) + (- 80 start-pos 2) + :join-after " =")) + +(defmethod expression-precedence ((setf js-setf)) + (gethash '= *op-precedence-hash*)) + +;;; defvar + +(defjsclass js-defvar (statement) + ((names :initarg :names :accessor var-names) + (value :initarg :value :accessor var-value))) + +(define-js-compiler-macro defvar (name &optional value) + (make-instance 'js-defvar :names (list (js-compile-to-symbol name)) + :value (when value (js-compile-to-expression value)))) + +(defmethod js-to-statement-strings ((defvar js-defvar) start-pos) + (dwim-join (nconc (mapcar #'(lambda (x) (list (symbol-to-js x))) (var-names defvar)) + (when (var-value defvar) + (list (js-to-strings (var-value defvar) start-pos)))) + (- 80 start-pos 2) + :join-after " =" + :start "var " :end ";")) + +;;; let + +(define-js-compiler-macro let (decls &rest body) + (let ((single-defvar (make-instance 'js-defvar + :names (mapcar #'js-compile-to-symbol + (remove-if-not #'atom decls)) + :value nil)) + (defvars (mapcar #'(lambda (decl) + (let ((name (first decl)) + (value (second decl))) + (make-instance 'js-defvar + :names (list (js-compile-to-symbol name)) + :value (js-compile-to-expression value)))) + (remove-if #'atom decls)))) + (make-instance 'js-sub-body + :indent " " + :stmts (nconc (when (var-names single-defvar) (list single-defvar)) + defvars + (mapcar #'js-compile-to-statement body))))) + +;;; iteration + +(defjsclass js-for (statement) + ((vars :initarg :vars :accessor for-vars) + (steps :initarg :steps :accessor for-steps) + (check :initarg :check :accessor for-check) + (body :initarg :body :accessor for-body))) + +(defun make-for-vars (decls) + (loop for decl in decls + for var = (if (atom decl) decl (first decl)) + for init = (if (atom decl) nil (second decl)) + collect (make-instance 'js-defvar :names (list (js-compile-to-symbol var)) + :value (js-compile-to-expression init)))) + +(defun make-for-steps (decls) + (loop for decl in decls + when (= (length decl) 3) + collect (js-compile-to-expression (third decl)))) + +(define-js-compiler-macro do (decls termination &rest body) + (let ((vars (make-for-vars decls)) + (steps (make-for-steps decls)) + (check (js-compile-to-expression (list 'not (first termination)))) + (body (js-compile-to-body (cons 'progn body) :indent " "))) + (make-instance 'js-for + :vars vars + :steps steps + :check check + :body body))) + +(defjsmacro dotimes (iter &rest body) + (let ((var (first iter)) + (times (second iter))) + `(do ((,var 0 (++ ,var))) + ((= ,var ,times)) + ,@body))) + +(defjsmacro dolist (i-array &rest body) + (let ((var (first i-array)) + (array (second i-array)) + (arrvar (js-gensym "arr")) + (idx (js-gensym "i"))) + `(let ((,arrvar ,array)) + (do ((,idx 0 (++ ,idx))) + ((>= ,idx (slot-value ,arrvar 'length))) + (let ((,var (aref ,arrvar ,idx))) + ,@body))))) + +(defmethod js-to-statement-strings ((for js-for) start-pos) + (let* ((init (dwim-join (mapcar #'(lambda (x) + (dwim-join (list (list (symbol-to-js (first (var-names x)))) + (js-to-strings (var-value x) + (+ start-pos 2))) + (- 80 start-pos 2) + :join-after " =")) + (for-vars for)) + (- 80 start-pos 2) + :start "var " :join-after ",")) + (check (js-to-strings (for-check for) (+ start-pos 2))) + (steps (dwim-join (mapcar #'(lambda (x var) + (dwim-join + (list (list (symbol-to-js (first (var-names var)))) + (js-to-strings x (- start-pos 2))) + (- 80 start-pos 2) + :join-after " =")) + (for-steps for) + (for-vars for)) + (- 80 start-pos 2) + :join-after ",")) + (header (dwim-join (list init check steps) + (- 80 start-pos 2) + :start "for (" :end ") {" + :join-after ";")) + (body (js-to-statement-strings (for-body for) (+ start-pos 2)))) + (nconc header body (list "}")))) + +(defjsclass for-each (statement) + ((name :initarg :name :accessor fe-name) + (value :initarg :value :accessor fe-value) + (body :initarg :body :accessor fe-body))) + +(define-js-compiler-macro doeach (decl &rest body) + (make-instance 'for-each :name (js-compile-to-symbol (first decl)) + :value (js-compile-to-expression (second decl)) + :body (js-compile-to-body (cons 'progn body) :indent " "))) + +(defmethod js-to-statement-strings ((fe for-each) start-pos) + (let ((header (dwim-join (list (list (symbol-to-js (fe-name fe))) + (list "in") + (js-to-strings (fe-value fe) (+ start-pos 2))) + (- 80 start-pos 2) + :start "for (var " + :end ") {")) + (body (js-to-statement-strings (fe-body fe) (+ start-pos 2)))) + (nconc header body (list "}")))) + +(defjsclass js-while (statement) + ((check :initarg :check :accessor while-check) + (body :initarg :body :accessor while-body))) + +(define-js-compiler-macro while (check &rest body) + (make-instance 'js-while + :check (js-compile-to-expression check) + :body (js-compile-to-body (cons 'progn body) :indent " "))) + +(defmethod js-to-statement-strings ((while js-while) start-pos) + (let ((header (dwim-join (list (js-to-strings (while-check while) (+ start-pos 2))) + (- 80 start-pos 2) + :start "while (" + :end ") {")) + (body (js-to-statement-strings (while-body while) (+ start-pos 2)))) + (nconc header body (list "}")))) + +;;; with + +(defjsclass js-with (statement) + ((obj :initarg :obj :accessor with-obj) + (body :initarg :body :accessor with-body))) + +(define-js-compiler-macro with (statement &rest body) + (make-instance 'js-with + :obj (js-compile-to-expression (first statement)) + :body (js-compile-to-body (cons 'progn body) :indent " "))) + +(defmethod js-to-statement-strings ((with js-with) start-pos) + (nconc (dwim-join (list (js-to-strings (with-obj with) (+ start-pos 2))) + (- 80 start-pos 2) + :start "with (" :end ") {") + (js-to-statement-strings (with-body with) (+ start-pos 2)) + (list "}"))) + +;;; case + +(defjsclass js-case (statement) + ((value :initarg :value :accessor case-value) + (clauses :initarg :clauses :accessor case-clauses))) + +(define-js-compiler-macro case (value &rest clauses) + (let ((clauses (mapcar #'(lambda (clause) + (let ((val (first clause)) + (body (cdr clause))) + (list (if (eql val 'default) + 'default + (js-compile-to-expression val)) + (js-compile-to-body (cons 'progn body) :indent " ")))) + clauses)) + (check (js-compile-to-expression value))) + (make-instance 'js-case :value check + :clauses clauses))) + +(defmethod js-to-statement-strings ((case js-case) start-pos) + (let ((body (mapcan #'(lambda (clause) + (let ((val (car clause)) + (body (second clause))) + (dwim-join (list (if (eql val 'default) + (list "") + (js-to-strings val (+ start-pos 2))) + (js-to-statement-strings body (+ start-pos 2))) + (- 80 start-pos 2) + :start (if (eql val 'default) " default" " case ") + :white-space " " + :join-after ":"))) (case-clauses case)))) + + #+nil + (format t "body: ~S~%" body) + (nconc (dwim-join (list (js-to-strings (case-value case) (+ start-pos 2))) + (- 80 start-pos 2) + :start "switch (" :end ") {") + body + (list "}")))) + +;;; throw catch + +(defjsclass js-try (statement) + ((body :initarg :body :accessor try-body) + (catch :initarg :catch :accessor try-catch) + (finally :initarg :finally :accessor try-finally))) + +(define-js-compiler-macro try (body &rest clauses) + (let ((body (js-compile-to-body body :indent " ")) + (catch (cdr (assoc :catch clauses))) + (finally (cdr (assoc :finally clauses)))) + (make-instance 'js-try + :body body + :catch (when catch (list (js-compile-to-symbol (caar catch)) + (js-compile-to-body (cons 'progn (cdr catch)) + :indent " "))) + :finally (when finally (js-compile-to-body (cons 'progn finally) + :indent " "))))) + +(defmethod js-to-statement-strings ((try js-try) start-pos) + (let* ((catch (try-catch try)) + (finally (try-finally try)) + (catch-list (when catch + (nconc + (dwim-join (list (list (symbol-to-js (first catch)))) + (- 80 start-pos 2) + :start "} catch (" + :end ") {") + (js-to-statement-strings (second catch) (+ start-pos 2))))) + (finally-list (when finally + (nconc (list "} finally {") + (js-to-statement-strings finally (+ start-pos 2)))))) + (nconc (list "try {") + (js-to-statement-strings (try-body try) (+ start-pos 2)) + catch-list + finally-list + (list "}")))) + +;;; regex + +(defjsclass regex (expression) + (value)) + +(define-js-compiler-macro regex (regex) + (make-instance 'regex :value (string regex))) + +;;; conditional compilation + +(defjsclass cc-if () + ((test :initarg :test :accessor cc-if-test) + (body :initarg :body :accessor cc-if-body))) + +(defmethod js-to-statement-strings ((cc cc-if) start-pos) + (nconc (list (format nil "/*@if ~A" (cc-if-test cc))) + (mapcan #'(lambda (x) (js-to-strings x start-pos)) (cc-if-body cc)) + (list "@end @*/"))) + +(define-js-compiler-macro cc-if (test &rest body) + (make-instance 'cc-if :test test + :body (mapcar #'js-compile body))) + +;;; compiler + +(defun js-compile (form) + (setf form (js-expand-form form)) + (cond ((stringp form) + (make-instance 'string-literal :value form)) + ((numberp form) + (make-instance 'number-literal :value form)) + ((symbolp form) + (let ((c-macro (js-get-compiler-macro form))) + (if c-macro + (funcall c-macro) + (make-instance 'js-variable :value form)))) + ((and (consp form) + (eql (first form) 'quote)) + (second form)) + ((consp form) + (js-compile-list form)) + (t (error "Unknown atomar expression ~S" form)))) + +(defun js-compile-list (form) + (let* ((name (car form)) + (args (cdr form)) + (js-form (js-get-compiler-macro name))) + (cond (js-form + (apply js-form args)) + + ((op-form-p form) + (make-instance 'op-form + :operator (js-convert-op-name (js-compile-to-symbol (first form))) + :args (mapcar #'js-compile-to-expression (rest form)))) + + ((method-call-p form) + (make-instance 'method-call + :method (js-compile-to-symbol (first form)) + :object (js-compile-to-expression (second form)) + :args (mapcar #'js-compile-to-expression (cddr form)))) + + ((funcall-form-p form) + (make-instance 'function-call + :function (js-compile-to-expression (first form)) + :args (mapcar #'js-compile-to-expression (rest form)))) + + (t (error "Unknown form ~S" form))))) + +(defun js-compile-to-expression (form) + (let ((res (js-compile form))) + (assert (typep res 'expression)) + res)) + +(defun js-compile-to-symbol (form) + (let ((res (js-compile form))) + (when (typep res 'js-variable ) + (setf res (value res))) + (assert (symbolp res)) + res)) + +(defun js-compile-to-statement (form) + (let ((res (js-compile form))) + (assert (typep res 'statement)) + res)) + +(defun js-compile-to-body (form &key (indent "")) + (let ((res (js-compile-to-statement form))) + (if (typep res 'js-body) + (progn (setf (b-indent res) indent) + res) + (make-instance 'js-body + :indent indent + :stmts (list res))))) + +;;; Math library +(defjsmacro floor (expr) + `(*Math.floor ,expr)) + +(defjsmacro random () + `(*Math.random)) + +;;; helper macros + +(define-js-compiler-macro js (&rest body) + (make-instance 'string-literal + :value (string-join (js-to-statement-strings + (js-compile (cons 'progn body)) 0) " "))) + +(define-js-compiler-macro js-inline (&rest body) + (make-instance 'string-literal + :value (concatenate + 'string + "javascript:" + (string-join (js-to-statement-strings + (js-compile (cons 'progn body)) 0) " ")))) + + +(defmacro js (&rest body) + `(string-join + (js-to-statement-strings (js-compile '(progn ,@body)) 0) + (string #\Newline))) + +(defun js-to-string (expr) + (string-join + (js-to-statement-strings (js-compile expr) 0) + (string #\Newline))) + +(defun js-to-line (expr) + (string-join + (js-to-statement-strings (js-compile expr) 0) " ")) + +(defmacro js-file (&rest body) + `(html + (:princ + (js ,@body)))) + +(defmacro js-script (&rest body) + `((:script :type "text/javascript") + (:princ (format nil "~%// ~%")))) + +(defmacro js-inline (&rest body) + `(concatenate 'string "javascript:" + (string-join (js-to-statement-strings (js-compile '(progn ,@body)) 0) " "))) + addfile ./js2.lisp hunk ./js2.lisp 1 +(in-package :js) + +;;; javascript name conversion + +(defvar *special-chars* + '((#\! . "Bang") + (#\? . "What") + (#\# . "Hash") + (#\$ . "Dollar") + (#\@ . "At") + (#\% . "Percent") + (#\+ . "Plus"))) + +(defun string-chars (string) + (coerce string 'list)) + +(defun constant-string-p (string) + (let ((len (length string)) + (constant-chars '(#\+ #\*))) + (and (> len 2) + (member (char string 0) constant-chars) + (member (char string (1- len)) constant-chars)))) + +(defun first-uppercase-p (string) + (and (> (length string) 1) + (member (char string 0) '(#\+ #\*)))) + +(defun symbol-to-js (symbol) + (when (symbolp symbol) + (setf symbol (symbol-name symbol))) + (let (res + (lowercase t) + (all-uppercase nil)) + (cond ((constant-string-p symbol) + (setf all-uppercase t + symbol (subseq symbol 1 (1- (length symbol))))) + ((first-uppercase-p symbol) + (setf lowercase nil + symbol (subseq symbol 1)))) + (flet ((reschar (c) + (push (if (and lowercase (not all-uppercase)) + (char-downcase c) + (char-upcase c)) res) + (setf lowercase t))) + (dotimes (i (length symbol)) + (let ((c (char symbol i))) + (cond + ((eql c #\-) + (setf lowercase (not lowercase))) + ((assoc c *special-chars*) + (dolist (i (coerce (cdr (assoc c *special-chars*)) 'list)) + (reschar i))) + (t (reschar c)))))) + (coerce (nreverse res) 'string))) + +;;; Tokens + +;;; break +;;; continue +;;; delete +;;; else +;;; if +;;; in +;;; new +;;; return +;;; this +;;; var +;;; instanceof +;;; typeof +;;; void +;;; function +;;; case +;;; default +;;; do +;;; for +;;; switch +;;; while +;;; with +;;; throw +;;; +;;; TODO: +;;; catch +;;; finally +;;; try + +;;; Punctuators + +;;; { } ( ) [ ] +;;; . ; , < > <= +;;; >= == != === !== +;;; + - * % ++ -- +;;; << >> >>> & | ^ +;;; ! ~ && || ? : +;;; = += -= *= %= <<= +;;; >>= >>>= &= |= ^= +;;; / /= + +;;; Literals + +;;; null true false + +;;; js language types + +(defclass statement () + ((value :initarg :value :accessor value))) + +(defclass expression (statement) + ()) + +;;; indenter + +(defun special-append-to-last (form elt) + (flet ((special-append (form elt) + (let ((len (length form))) + (if (and (> len 0) + (member (char form (1- len)) + '(#\; #\, #\}))) + form + (concatenate 'string form elt))))) + (cond ((stringp form) + (special-append form elt)) + ((consp form) + (let ((last (last form))) + (if (stringp (car last)) + (rplaca last (special-append (car last) elt)) + (append-to-last (car last) elt)) + form)) + (t (error "unsupported form ~S" form))))) + +(defun dwim-join (value-string-lists max-length + &key start end + join-before join-after + white-space (separator " ") + (append-to-last #'append-to-last) + (collect t)) + #+nil + (format t "value-string-lists: ~S~%" value-string-lists) + + (unless start + (setf start "")) + + (unless join-before + (setf join-before "")) + + ;;; collect single value-string-lists until line full + + (do* ((string-lists value-string-lists (cdr string-lists)) + (string-list (car string-lists) (car string-lists)) + (cur-elt start) + (cur-empty t) + (white-space (or white-space (make-string (length start) :initial-element #\Space))) + (res nil)) + ((null string-lists) + (unless cur-empty + (push cur-elt res)) + (when end + (setf (first res) + (funcall append-to-last (first res) end))) + (nreverse res)) + + #+nil + (format t "string-list: ~S~%" string-list) + + (when join-after + (unless (null (cdr string-lists)) + (funcall append-to-last string-list join-after))) + + (if (and collect (= (length string-list) 1)) + (progn + #+nil + (format t "cur-elt: ~S line-length ~D, max-length ~D, string: ~S~%" + cur-elt + (+ (length (first string-list)) + (length cur-elt)) + max-length + (first string-list)) + (if (or cur-empty + (< (+ (length (first string-list)) + (length cur-elt)) max-length)) + (setf cur-elt + (concatenate 'string cur-elt + (if cur-empty "" (concatenate 'string separator join-before)) + (first string-list)) + cur-empty nil) + (progn + (push cur-elt res) + (setf cur-elt (concatenate 'string white-space + join-before (first string-list)) + cur-empty nil)))) + + (progn + (unless cur-empty + (push cur-elt res) + (setf cur-elt white-space + cur-empty t)) + (setf res (nconc (nreverse + (cons (concatenate 'string + cur-elt (if (null res) + "" join-before) + (first string-list)) + (mapcar #'(lambda (x) (concatenate 'string white-space x)) + (cdr string-list)))) res)) + (setf cur-elt white-space cur-empty t))))) + +(defmethod js-to-strings ((expression expression) start-pos) + (list (princ-to-string (value expression)))) + +(defmethod js-to-statement-strings ((expression expression) start-pos) + (js-to-strings expression start-pos)) + +(defmethod js-to-statement-strings ((statement statement) start-pos) + (list (princ-to-string (value statement)))) + +;;; compiler macros + +(eval-when (:compile-toplevel :load-toplevel :execute) + (defvar *js-compiler-macros* (make-hash-table) + "*JS-COMPILER-MACROS* is a hash-table containing the functions corresponding +to javascript special forms, indexed by their name. Javascript special +forms are compiler macros for JS expressions.")) + +(defmacro define-js-compiler-macro (name lambda-list &rest body) + "Define a javascript compiler macro NAME. Arguments are destructured +according to LAMBDA-LIST. The resulting JS language types are appended +to the ongoing javascript compilation." + (let ((js-name (intern (concatenate 'string "JS-" (symbol-name name))))) + `(progn (defun ,js-name ,lambda-list ,@body) + (setf (gethash ',name *js-compiler-macros*) #',js-name)))) + +(defun js-compiler-macro-form-p (form) + (when (gethash (car form) *js-compiler-macros*) + t)) + +(defun js-get-compiler-macro (name) + (gethash name *js-compiler-macros*)) + +;;; macro expansion + +(eval-when (:compile-toplevel :load-toplevel :execute) + (defvar *js-macro-toplevel* (make-hash-table) + "Toplevel of macro expansion, holds all the toplevel javascript macros.") + (defvar *js-macro-env* (list *js-macro-toplevel*) + "Current macro environment.")) + +(defun lookup-macro (name) + "Lookup the macro NAME in the current macro expansion +environment. Returns the macro and the parent macro environment of +this macro." + (do ((env *js-macro-env* (cdr env))) + ((null env) nil) + (let ((val (gethash name (car env)))) + (when val + (return-from lookup-macro + (values val (or (cdr env) + (list *js-macro-toplevel*)))))))) + +(defmacro defjsmacro (name args &rest body) + "Define a javascript macro, and store it in the toplevel macro environment." + (when (gethash name *js-compiler-macros*) + (warn "Redefining compiler macro ~S" name) + (remhash name *js-compiler-macros*)) + (let ((lambda-list (gensym))) + `(setf (gethash ',name *js-macro-toplevel*) + #'(lambda (&rest ,lambda-list) + (destructuring-bind ,args ,lambda-list ,@body))))) + +(defun js-expand-form (expr) + "Expand a javascript form." + (cond ((atom expr) + (multiple-value-bind (js-macro macro-env) + (lookup-macro expr) + (if js-macro + (js-expand-form (let ((*js-macro-env* macro-env)) + (funcall js-macro))) + expr))) + + ((js-compiler-macro-form-p expr) expr) + + ((equal (first expr) 'quote) expr) + + (t (let ((js-macro (lookup-macro (car expr)))) + (if js-macro + (js-expand-form (apply js-macro (cdr expr))) + expr))))) + +;;; literals + +(defmacro defjsliteral (name string) + "Define a Javascript literal that will expand to STRING." + `(define-js-compiler-macro ,name () (make-instance 'expression :value ,string))) + +(defjsliteral this "this") +(defjsliteral t "true") +(defjsliteral nil "null") +(defjsliteral false "false") +(defjsliteral undefined "undefined") + +(defmacro defjskeyword (name string) + "Define a Javascript keyword that will expand to STRING." + `(define-js-compiler-macro ,name () (make-instance 'statement :value ,string))) + +(defjskeyword break "break") +(defjskeyword continue "continue") + +;;; array literals + +(defclass array-literal (expression) + ((values :initarg :values :accessor array-values))) + +(define-js-compiler-macro array (&rest values) + (make-instance 'array-literal + :values (mapcar #'js-compile-to-expression values))) + +(defjsmacro list (&rest values) + `(array ,@values)) + +(defmethod js-to-strings ((array array-literal) start-pos) + (let ((value-string-lists + (mapcar #'(lambda (x) (js-to-strings x (+ start-pos 2))) + (array-values array))) + (max-length (- 80 start-pos 2))) + (dwim-join value-string-lists max-length + :start "[ " :end " ]" + :join-after ","))) + +(defclass js-aref (expression) + ((array :initarg :array + :accessor aref-array) + (index :initarg :index + :accessor aref-index))) + +(define-js-compiler-macro aref (array &rest coords) + (make-instance 'js-aref + :array (js-compile-to-expression array) + :index (mapcar #'js-compile-to-expression coords))) + +(defmethod js-to-strings ((aref js-aref) start-pos) + (dwim-join (cons (js-to-strings (aref-array aref) start-pos) + (mapcar #'(lambda (x) (dwim-join (list (js-to-strings x (+ start-pos 2))) + (- 80 start-pos 2) + :start "[" :end "]")) + (aref-index aref))) + (- 80 start-pos 2) :separator "" + :white-space " ")) + +;;; string literals + +(defclass string-literal (expression) + ()) + +(defmethod js-to-strings ((string string-literal) start-pos) + (declare (ignore start-pos)) + (list (prin1-to-string (value string)))) + +;;; number literals + +(defclass number-literal (expression) + ()) + +;;; variables + +(defclass js-variable (expression) + ()) + +(defmethod js-to-strings ((v js-variable) start-form) + (list (symbol-to-js (value v)))) + +;;; arithmetic operators + +(eval-when (:compile-toplevel :load-toplevel :execute) + + (defparameter *op-precedence-hash* (make-hash-table)) + + (defparameter *op-precedences* + '((aref) + (slot-value) + (! not ~) + (* / %) + (+ -) + (<< >>) + (>>>) + (< > <= >=) + (in if) + (eql == != = ) + (=== !==) + (&) + (^) + (\|) + (\&\& and) + (\|\| or) + (setf) + (comma))) + + ;;; generate the operator precedences from *OP-PRECEDENCES* + (let ((precedence 1)) + (dolist (ops *op-precedences*) + (dolist (op ops) + (setf (gethash op *op-precedence-hash*) precedence)) + (incf precedence)))) + +(defun js-convert-op-name (op) + (case op + (and '\&\&) + (or '\|\|) + (not '!) + (eql '\=\=) + (= '\=\=) + (t op))) + +(defclass op-form (expression) + ((operator :initarg :operator :accessor operator) + (args :initarg :args :accessor op-args))) + +(defun op-form-p (form) + (and (listp form) + (not (js-compiler-macro-form-p form)) + (not (null (gethash (first form) *op-precedence-hash*))))) + +(defun klammer (string-list) + (prepend-to-first string-list "(") + (append-to-last string-list ")") + string-list) + +(defmethod expression-precedence ((expression expression)) + 0) + +(defmethod expression-precedence ((form op-form)) + (gethash (operator form) *op-precedence-hash*)) + +(defmethod js-to-strings ((form op-form) start-pos) + (let* ((precedence (expression-precedence form)) + (value-string-lists + (mapcar #'(lambda (x) + (let ((string-list (js-to-strings x (+ start-pos 2)))) + (if (>= (expression-precedence x) precedence) + (klammer string-list) + string-list))) + (op-args form))) + (max-length (- 80 start-pos 2)) + (op-string (format nil "~A " (operator form)))) + (dwim-join value-string-lists max-length :join-before op-string))) + +(defjsmacro 1- (form) + `(- ,form 1)) + +(defjsmacro 1+ (form) + `(+ ,form 1)) + +(defclass one-op (expression) + ((pre-p :initarg :pre-p + :initform nil + :accessor one-op-pre-p) + (op :initarg :op + :accessor one-op))) + +(defmethod js-to-strings ((one-op one-op) start-pos) + (let* ((value (value one-op)) + (value-strings (js-to-strings value start-pos))) + (when (typep value 'op-form) + (setf value-strings (klammer value-strings))) + (if (one-op-pre-p one-op) + (prepend-to-first value-strings + (one-op one-op)) + (append-to-last value-strings + (one-op one-op))))) + +(define-js-compiler-macro incf (x) + (make-instance 'one-op :pre-p t :op "++" + :value (js-compile-to-expression x))) +(define-js-compiler-macro ++ (x) + (make-instance 'one-op :pre-p nil :op "++" + :value (js-compile-to-expression x))) +(define-js-compiler-macro decf (x) + (make-instance 'one-op :pre-p t :op "--" + :value (js-compile-to-expression x))) +(define-js-compiler-macro -- (x) + (make-instance 'one-op :pre-p nil :op "--" + :value (js-compile-to-expression x))) + + +(define-js-compiler-macro not (x) + (let ((value (js-compile-to-expression x))) + (if (typep value 'op-form) + (let ((new-op (case (operator value) + (== '!=) + (< '>=) + (> '<=) + (<= '>) + (>= '<) + (!= '==) + (=== '!==) + (!== '===) + (t nil)))) + (if new-op + (make-instance 'op-form :operator new-op + :args (op-args value)) + (make-instance 'one-op :pre-p t :op "!" + :value value))) + (make-instance 'one-op :pre-p t :op "!" + :value value)))) + +;;; function calls + +(defclass function-call (expression) + ((function :initarg :function :accessor f-function) + (args :initarg :args :accessor f-args))) + +(defun funcall-form-p (form) + (and (listp form) + (not (op-form-p form)) + (not (js-compiler-macro-form-p form)))) + +(defmethod js-to-strings ((form function-call) start-pos) + (let ((value-string-lists + (mapcar #'(lambda (x) (js-to-strings x (+ start-pos 2))) + (f-args form))) + (max-length (- 80 start-pos 2))) + (dwim-join value-string-lists max-length + :start (format nil "~A(" (symbol-to-js (f-function form))) + :end ")" + :join-after ","))) + +(defclass method-call (expression) + ((method :initarg :method :accessor m-method) + (args :initarg :args :accessor m-args))) + +(defun method-call-p (form) + (and (funcall-form-p form) + (eql (char (symbol-name (first form)) 0) #\.))) + +;;; body forms + +(defclass js-body (expression) + ((stmts :initarg :stmts :accessor b-stmts) + (indent :initarg :indent :initform "" :accessor b-indent))) + +(define-js-compiler-macro progn (&rest body) + (make-instance 'js-body + :stmts (mapcar #'js-compile-to-statement body))) + +(defmethod js-to-statement-strings ((body js-body) start-pos) + (dwim-join (mapcar #'(lambda (x) (js-to-statement-strings x (+ start-pos 2))) + (b-stmts body)) + (- 80 start-pos 2) + :join-after ";" + :append-to-last #'special-append-to-last + :start (b-indent body) :collect nil + :end ";")) + +(defmethod js-to-strings ((body js-body) start-pos) + (dwim-join (mapcar #'(lambda (x) (js-to-strings x (+ start-pos 2))) + (b-stmts body)) + (- 80 start-pos 2) + :append-to-last #'special-append-to-last + :join-after "," + :start (b-indent body))) + +(defclass js-sub-body (js-body) + ()) + +(defmethod js-to-statement-strings ((body js-sub-body) start-pos) + (nconc (list "{") (call-next-method) (list "}"))) +#+nil + (dwim-join (mapcar #'(lambda (x) (js-to-statement-strings x (+ start-pos 2))) + (b-stmts body)) + (- 80 start-pos 2) + :start (format nil "{~% ") + :end (format nil "~%}") + :white-space " " :collect nil) + +(defmethod expression-precedence ((body js-body)) + (if (= (length (b-stmts body)) 1) + (expression-precedence (first (b-stmts body))) + (gethash 'comma *op-precedence-hash*))) + +;;; function definition + +(defclass js-defun (expression) + ((name :initarg :name :accessor d-name) + (args :initarg :args :accessor d-args) + (body :initarg :body :accessor d-body))) + +(define-js-compiler-macro defun (name args &rest body) + (make-instance 'js-defun + :name (js-compile-to-symbol name) + :args (mapcar #'js-compile-to-symbol args) + :body (make-instance 'js-body + :indent " " + :stmts (mapcar #'js-compile-to-statement body)))) + +(defmethod js-to-strings ((defun js-defun) start-pos) + (let ((fun-header (dwim-join (mapcar #'(lambda (x) (list (symbol-to-js x))) + (d-args defun)) + (- 80 start-pos 2) + :start (format nil "function ~A(" + (symbol-to-js (d-name defun))) + :end ") {" :join-after ",")) + (fun-body (js-to-statement-strings (d-body defun) (+ start-pos 2)))) + (nconc fun-header fun-body (list "}")))) + +(defmethod js-to-statement-strings ((defun js-defun) start-pos) + (js-to-strings defun start-pos)) + +(defjsmacro lambda (args &rest body) + `(defun :|| ,args ,@body)) + +;;; object creation + +(defclass js-object (expression) + ((slots :initarg :slots + :accessor o-slots))) + +(define-js-compiler-macro create (&rest args) + (make-instance 'js-object + :slots (loop for (name val) on args by #'cddr + collect (list (js-compile-to-symbol name) + (js-compile-to-expression val))))) + +;;; XXX so ist das noch nicht korrekt +(defmethod js-to-strings ((object js-object) start-pos) + (let ((value-string-lists + (mapcar #'(lambda (slot) + (dwim-join (list (js-to-strings (second slot) (+ start-pos 4))) + (- 80 start-pos 2) + :start (concatenate 'string (symbol-to-js (first slot)) " : ") + :white-space " ")) (o-slots object))) + (max-length (- 80 start-pos 2))) + (dwim-join value-string-lists max-length + :start (format nil "{~% ") + :end (format nil "~%} ") + :join-after ", " + :white-space " " + :collect nil))) + +(defclass js-slot-value (expression) + ((object :initarg :object + :accessor sv-object) + (slot :initarg :slot + :accessor sv-slot))) + +(define-js-compiler-macro slot-value (obj slot) + (make-instance 'js-slot-value :object (js-compile-to-expression obj) + :slot (js-compile-to-symbol slot))) + +(defmethod js-to-strings ((sv js-slot-value) start-pos) + (append-to-last (js-to-strings (sv-object sv) start-pos) + (format nil ".~A" (symbol-to-js (sv-slot sv))))) + +(defjsmacro with-slots (slots object &rest body) + `(symbol-macrolet ,(mapcar #'(lambda (slot) + `(,slot '(slot-value ,object ',slot))) + slots) + ,@body)) + +;;; macros + +(define-js-compiler-macro macrolet (macros &rest body) + (let* ((macro-env (make-hash-table)) + (*js-macro-env* (cons macro-env *js-macro-env*))) + (dolist (macro macros) + (destructuring-bind (name arglist &rest body) macro + (setf (gethash name macro-env) + (compile nil `(lambda ,arglist ,@body))))) + (js-compile `(progn ,@body)))) + +(defjsmacro symbol-macrolet (macros &rest body) + `(macrolet ,(mapcar #'(lambda (macro) + `(,(first macro) () ,@(rest macro))) macros) + ,@body)) + +;;; lisp eval + +(defjsmacro lisp (&rest forms) + (eval (cons 'progn forms))) + +;;; if + +(defclass js-if (expression) + ((test :initarg :test + :accessor if-test) + (then :initarg :then + :accessor if-then) + (else :initarg :else + :accessor if-else))) + +(define-js-compiler-macro if (test then &optional else) + (make-instance 'js-if :test (js-compile-to-expression test) + :then (js-compile-to-body then :indent " ") + :else (when else + (js-compile-to-body else :indent " ")))) + +(defmethod js-to-statement-strings ((if js-if) start-pos) + (let ((if-strings (dwim-join (list (js-to-strings (if-test if) 0)) + (- 80 start-pos 2) + :start "if (" + :end ") {")) + (then-strings (js-to-statement-strings (if-then if) (+ start-pos 2))) + (else-strings (when (if-else if) + (js-to-statement-strings (if-else if) + (+ start-pos 2))))) + (nconc if-strings then-strings (if else-strings + (nconc (list "} else {") else-strings (list "}")) + (list "}"))))) + +(defmethod expression-precedence ((if js-if)) + (gethash 'if *op-precedence-hash*)) + +(defmethod js-to-strings ((if js-if) start-pos) + (assert (typep (if-then if) 'expression)) + (when (if-else if) + (assert (typep (if-else if) 'expression))) + (dwim-join (list (append-to-last (js-to-strings (if-test if) start-pos) " ?") + (let* ((new-then (make-instance 'js-body + :stmts (b-stmts (if-then if)) + :indent "")) + (res (js-to-strings new-then start-pos))) + (if (>= (expression-precedence (if-then if)) + (expression-precedence if)) + (klammer res) + res)) + (list ":") + (if (if-else if) + (let* ((new-else (make-instance 'js-body + :stmts (b-stmts (if-else if)) + :indent "")) + (res (js-to-strings new-else start-pos))) + (if (>= (expression-precedence (if-else if)) + (expression-precedence if)) + (klammer res) + res)) + (list "undefined"))) + (- 80 start-pos 2) + :white-space " ")) + +(defjsmacro when (test &rest body) + `(if ,test (progn ,@body))) + +(defjsmacro unless (test &rest body) + `(if (not ,test) (progn ,@body))) + +;;; single keyword expressions and statements + +(defmacro define-js-single-op (name &optional (superclass 'expression)) + (let ((js-name (intern (concatenate 'string "JS-" (symbol-name name)) #.*package*))) + `(progn + (defclass ,js-name (,superclass) + ()) + (define-js-compiler-macro ,name (value) + (make-instance ',js-name :value (js-compile-to-expression value))) + (defmethod js-to-strings ((,name ,js-name) start-pos) + (dwim-join (list (js-to-strings (value ,name) (+ start-pos 2))) + (- 80 start-pos 2) + :start ,(concatenate 'string (string-downcase (symbol-name name)) " ") + :white-space " "))))) + + +(define-js-single-op return statement) +(define-js-single-op throw statement) +(define-js-single-op delete) +(define-js-single-op void) +(define-js-single-op typeof) +(define-js-single-op instanceof) +(define-js-single-op new) + +;;; assignment + +(defclass js-setf (expression) + ((lhs :initarg :lhs :accessor setf-lhs) + (rhsides :initarg :rhsides :accessor setf-rhsides))) + +(define-js-compiler-macro setf (&rest args) + (let ((assignments (loop for (lhs rhs) on args by #'cddr + for rexpr = (js-compile-to-expression rhs) + for lexpr = (js-compile-to-expression lhs) + collect (make-instance 'js-setf :lhs lexpr + :rhsides (list rexpr))))) + (if (= (length assignments) 1) + (first assignments) + (make-instance 'js-body :indent "" :stmts assignments)))) + +(defmethod js-to-strings ((setf js-setf) start-pos) + (dwim-join (cons (js-to-strings (setf-lhs setf) start-pos) + (mapcar #'(lambda (x) (js-to-strings x start-pos)) (setf-rhsides setf))) + (- 80 start-pos 2) + :join-after " =")) + +(defmethod expression-precedence ((setf js-setf)) + (gethash '= *op-precedence-hash*)) + +;;; defvar + +(defclass js-defvar (statement) + ((names :initarg :names :accessor var-names) + (value :initarg :value :accessor var-value))) + +(define-js-compiler-macro defvar (name &optional value) + (make-instance 'js-defvar :names (list (js-compile-to-symbol name)) + :value (when value (js-compile-to-expression value)))) + +(defmethod js-to-statement-strings ((defvar js-defvar) start-pos) + (dwim-join (nconc (mapcar #'(lambda (x) (list (symbol-to-js x))) (var-names defvar)) + (when (var-value defvar) + (list (js-to-strings (var-value defvar) start-pos)))) + (- 80 start-pos 2) + :join-after " =" + :start "var " :end ";")) + +;;; let + +(define-js-compiler-macro let (decls &rest body) + (let ((single-defvar (make-instance 'js-defvar + :names (mapcar #'js-compile-to-symbol + (remove-if-not #'atom decls)) + :value nil)) + (defvars (mapcar #'(lambda (decl) + (let ((name (first decl)) + (value (second decl))) + (make-instance 'js-defvar + :names (list (js-compile-to-symbol name)) + :value (js-compile-to-expression value)))) + (remove-if #'atom decls)))) + (make-instance 'js-sub-body + :indent " " + :stmts (nconc (when (var-names single-defvar) (list single-defvar)) + defvars + (mapcar #'js-compile-to-statement body))))) + +;;; iteration + +(defclass js-for (statement) + ((vars :initarg :vars :accessor for-vars) + (steps :initarg :steps :accessor for-steps) + (check :initarg :check :accessor for-check) + (body :initarg :body :accessor for-body))) + +(defun make-for-vars (decls) + (loop for decl in decls + for var = (if (atom decl) decl (first decl)) + for init = (if (atom decl) nil (second decl)) + collect (make-instance 'js-defvar :names (list (js-compile-to-symbol var)) + :value (js-compile-to-expression init)))) + +(defun make-for-steps (decls) + (loop for decl in decls + when (= (length decl) 3) + collect (js-compile-to-expression (third decl)))) + +(define-js-compiler-macro do (decls termination &rest body) + (let ((vars (make-for-vars decls)) + (steps (make-for-steps decls)) + (check (js-compile-to-expression (list 'not (first termination)))) + (body (js-compile-to-body (cons 'progn body) :indent " "))) + (make-instance 'js-for + :vars vars + :steps steps + :check check + :body body))) + +(defun strings-length (string-list) + (reduce #'max (mapcar #'length string-list) :initial-value most-negative-fixnum)) + +(defmethod js-to-statement-strings ((for js-for) start-pos) + (let* ((init (dwim-join (mapcar #'(lambda (x) + (dwim-join (list (list (symbol-to-js (first (var-names x)))) + (js-to-strings (var-value x) + (+ start-pos 2))) + (- 80 start-pos 2) + :join-after " =")) + (for-vars for)) + (- 80 start-pos 2) + :start "var " :join-after ",")) + #+nil + (init-len (strings-length init)) + (check (js-to-strings (for-check for) (+ start-pos 2))) + #+nil + (check-len (strings-length check)) + (steps (dwim-join (mapcar #'(lambda (x) + (js-to-strings x (- start-pos 2))) + (for-steps for)) + (- 80 start-pos 2) + :join-after ",")) + (header (dwim-join (list init check steps) + (- 80 start-pos 2) + :start "for (" :end ") {" + :join-after ";")) + (body (js-to-statement-strings (for-body for) (+ start-pos 2)))) + (nconc header body (list "}")))) + + (let ((fun-header (dwim-join (mapcar #'(lambda (x) (list (symbol-to-js x))) + (d-args defun)) + (- 80 start-pos 2) + :start (format nil "function ~A(" + (symbol-to-js (d-name defun))) + :end ") {" :join-after ",")) + (fun-body (js-to-statement-strings (d-body defun) (+ start-pos 2)))) + (nconc fun-header fun-body (list "}")))) + +(defclass for-each (statement) + ((name :initarg :name :accessor fe-name) + (value :initarg :value :accessor fe-value) + (body :initarg :value :accessor fe-body))) + +(define-js-compiler-macro do-each (decl &rest body) + (make-instance 'for-each :name (js-compile-to-symbol (first decl)) + :value (js-compile-to-expression (second decl)) + :body (js-compile-to-body (cons 'progn body) :indent " "))) + +(defmethod js-to-statement-strings ((fe for-each) start-pos) + (let ((header (dwim-join (list (list (symbol-to-js (fe-name fe)) " in ") + (js-to-strings (fe-value fe) (+ start-pos 2))) + :start "for (var " + :end ") {")) + (body (js-to-statement-strings (fe-body fe) (+ start-pos 2)))) + (nconc header body (list "}")))) + +(defclass js-while (statement) + ((check :initarg :check :accessor while-check) + (body :initarg :body :accessor while-body))) + +(define-js-compiler-macro while (check &rest body) + (make-instance 'js-while + :check (js-compile-to-expression check) + :body (js-compile-to-body (cons 'progn body) :indent " "))) + +(defmethod js-to-statement-strings ((while js-while) start-pos) + (let ((header (dwim-join (list (js-to-strings (while-check while) (+ start-pos 2))) + (- 80 start-pos 2) + :start "while (" + :end ") {")) + (body (js-to-statement-strings (while-body while) (+ start-pos 2)))) + (nconc header body (list "}")))) + +;;; with + +(defclass js-with (statement) + ((obj :initarg :obj :accessor with-obj) + (body :initarg :body :accessor with-body))) + +(define-js-compiler-macro with (statement &rest body) + (make-instance 'js-with + :obj (js-compile-to-expression (first statement)) + :body (js-compile-to-body (cons 'progn body) :indent " "))) + +(defmethod js-to-statement-strings ((with js-with) start-pos) + (nconc (dwim-join (list (js-to-strings (with-obj with) (+ start-pos 2))) + (- 80 start-pos 2) + :start "with (" :end ") {") + (js-to-statement-strings (with-body with) (+ start-pos 2)) + (list "}"))) + +;;; case + +(defclass js-case (statement) + ((value :initarg :value :accessor case-value) + (clauses :initarg :clauses :accessor case-clauses))) + +;;; XXX DEFAULT exporten +(define-js-compiler-macro case (value &rest clauses) + (let ((clauses (mapcar #'(lambda (clause) + (let ((val (first clause)) + (body (cdr clause))) + (list (if (eql val 'default) + 'default + (js-compile-to-expression val)) + (js-compile-to-body (cons 'progn body) :indent " ")))) + clauses)) + (check (js-compile-to-expression value))) + (make-instance 'js-case :value check + :clauses clauses))) + +(defmethod js-to-statement-strings ((case js-case) start-pos) + (let ((body (mapcan #'(lambda (clause) + (let ((val (car clause)) + (body (second clause))) + (dwim-join (list (if (eql val 'default) + (list "") + (js-to-strings val (+ start-pos 2))) + (js-to-statement-strings body (+ start-pos 2))) + (- 80 start-pos 2) + :start (if (eql val 'default) " default" " case ") + :white-space " " + :join-after ":"))) (case-clauses case)))) + + (format t "body: ~S~%" body) + (nconc (dwim-join (list (js-to-strings (case-value case) (+ start-pos 2))) + (- 80 start-pos 2) + :start "switch (" :end ") {") + body + (list "}")))) + +;;; throw catch + +(defclass js-try (statement) + ((body :initarg :body :accessor try-body) + (catch :initarg :catch :accessor try-catch) + (finally :initarg :finally :accessor try-finally))) + +(define-js-compiler-macro try (body clauses) + (let ((body (js-compile-to-body body :indent " ")) + (catch (cdr (assoc :catch clauses))) + (finally (cdr (assoc :finally clauses)))) + (make-instance 'js-try + :body body + :catch (when catch (list (js-compile-to-symbol (first catch)) + (js-compile-to-body (cons 'progn (cdr catch)) + :indent " "))) + :finally (when finally (js-compile-to-body finally :indent " "))))) + +(defmethod js-to-statement-strings ((try js-try) start-pos) + (let* ((catch (try-catch try)) + (finally (try-finally try)) + (catch-list (when catch + (dwim-join (list (list (symbol-to-js (first catch))) + (js-to-strings (second catch) (+ start-pos 2))) + (- 80 start-pos 2) + :start "} catch (" + :end ") {"))) + (finally-list (when finally + (dwim-join (list (js-to-strings finally (+ start-pos 2))) + (- 80 start-pos 2) + :start "finally {")))) + (nconc (dwim-join (list (js-to-statement-strings (try-body try) (+ start-pos 2))) + (- 80 start-pos 2) + :start "try {") + catch-list + finally-list + (list "}")))) + +;;; regex + +(defclass regex (expression) + ()) + +(define-js-compiler-macro regex (regex) + (make-instance 'regex :value (string regex))) + +;;; conditional compilation + +(defclass cc-if () + ((test :initarg :test :accessor cc-if-test) + (body :initarg :body :accessor cc-if-body))) + +(defmethod js-to-statement-strings ((cc cc-if) start-pos) + (nconc (list (format nil "/*@if ~A" (cc-if-test cc))) + (mapcan #'(lambda (x) (js-to-strings x start-pos)) (cc-if-body cc)) + (list "@end @*/"))) + +(define-js-compiler-macro cc-if (test &rest body) + (make-instance 'cc-if :test test + :body (mapcar #'js-compile body))) + +;;; compiler + +(defun js-compile (form) + (setf form (js-expand-form form)) + (cond ((stringp form) + (make-instance 'string-literal :value form)) + ((numberp form) + (make-instance 'number-literal :value form)) + ((symbolp form) + (let ((c-macro (js-get-compiler-macro form))) + (if c-macro + (funcall c-macro) + (make-instance 'js-variable :value form)))) + ((and (consp form) + (eql (first form) 'quote)) + (second form)) + ((consp form) + (js-compile-list form)) + (t (error "Unknown atomar expression ~S" form)))) + +(defun js-compile-list (form) + (let* ((name (car form)) + (args (cdr form)) + (js-form (js-get-compiler-macro name))) + (cond (js-form + (apply js-form args)) + + ((op-form-p form) + (make-instance 'op-form + :operator (js-convert-op-name (first form)) + :args (mapcar #'js-compile-to-expression (rest form)))) + + ((method-call-p form) + (make-instance 'method-call + :method (first form) + :args (mapcar #'js-compile-to-expression (rest form)))) + + ((funcall-form-p form) + (make-instance 'function-call + :function (first form) + :args (mapcar #'js-compile-to-expression (rest form)))) + + (t (error "Unknown form ~S" form))))) + +(defun js-compile-to-expression (form) + (let ((res (js-compile form))) + (assert (typep res 'expression)) + res)) + +(defun js-compile-to-symbol (form) + (let ((res (js-compile form))) + (when (typep res 'js-variable ) + (setf res (value res))) + (assert (symbolp res)) + res)) + +(defun js-compile-to-statement (form) + (let ((res (js-compile form))) + (assert (typep res 'statement)) + res)) + +(defun js-compile-to-body (form &key (indent "")) + (let ((res (js-compile-to-statement form))) + (if (typep res 'js-body) + (progn (setf (b-indent res) indent) + res) + (make-instance 'js-body + :indent indent + :stmts (list res))))) addfile ./manual.pdf binary ./manual.pdf oldhex * newhex *255044462d312e340a342030206f626a203c3c0a2f4c656e67746820323639202020202020200a *2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78da8d51bb4ec430 *10ecfd155b2645f6bc7eae5bc443202138910e5144971c20dd052e82ff67e31014220a0a3f6776 *3cb35627d0f02ce30a7a9935f814d1ebc811d879d42eb083a1833d6c15650241b2988821da809a *22ec8eea5be287613d63f05ef6029280b400ab19ad28212f196b19c66482f09d46d6666482d8c5 *90e17995db93f221624a314d1196078137d74782f337b5558b10d524fea7c3e090e55d47c8cefe *26aca290448991c5a3b5e863f67856abcd2525300ec736d67b201134d6c24caadbc7e2be194ae2 *a2eb1f76c3ebfb475919af8bdba6ff6c0ee5537d9315c8a1756154f01a53185b679074c80223b7 *3b4c75776dd7b7cd4bae5417f5faa79247c3f6df1ff505032f6eb5656e6473747265616d0a656e *646f626a0a332030206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e74732034 *203020520a2f5265736f75726365732032203020520a2f4d65646961426f78205b302030203539 *352e323736203834312e38395d0a2f506172656e742038203020520a3e3e20656e646f626a0a31 *2030206f626a203c3c0a2f54797065202f584f626a6563740a2f53756274797065202f496d6167 *650a2f5769647468203536380a2f486569676874203536380a2f42697473506572436f6d706f6e *656e7420380a2f436f6c6f725370616365202f4465766963655247420a2f4c656e677468203232 *38353120202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d *0a78daecdd755c146bc33e7036e86e41108b105044450cec40c5160b030b45444cc40eecce832d *b61e540ce4181818200662d029126222480a787eb767dedfbcfb2a2eb9cbeceef5fdec1fcf739e *e7285c73cf5c33b3f7dc2325050000000000000000000000000000000000000000000000000000 *000000000000000000000000000000000000000000000000000000000000000000000000000000 *000000a24a4646a6499326c801000018425656d6c6c6c6d5d5f5e0c183e1e1e1c5c5c599999988 *050000ea8abcbcbcadadad9b9bdbe1c3875fbc78f1fdfbf77f7f636f6fdfad5bb741ffe9dab56b *ebd6ad4d4d4d0d0c0c34343434ff432ebb90240000d40a050585f6eddbbbbbbbfbfafabe7af5aa *a4a4e4df1af8fcf9736868e891234748d3999898a8a9a9912b32840c000095a7a8a8686767e7e1 *e171ecd8b1c8c8c8d2d2d27f05262b2bcbc7c7c7c6c646555555494909e10300c0ef9495953b77 *ee3c67ce9c13274e444747979595f169961f3f7e08a2b0727373cf9e3d6b6f6f4f0a4b5d5d1d1b *05004092912ee8dab5ebbc79f34e9f3e1d1b1bcbbf7ac8f5d4b76fdff897572d2a2e2ebe76ed5a *cf9e3dd5d4d4b0a50000240439e677efdeddd3d3935cb3242424f02fa6929292972f5f9e3a756a *c3860d313131ffd691b0b0b0162d5a904ac5e60300103f1a1a1abd7af5f2f2f2f2f3f34b4a4ae2 *df08dfbf7f8f8888387cf8b09b9b9badadadb6b676a3468dc845cdbf0c70e5ca95060d1a282b2b *639b020088342d2d2d7b7bfb458b169d3f7f3e2525a5c27b6be1e1e1070e1c707575b5b1b1a167 *dc292a2aeaeaea1e3972446877f92aa3b4b474dfbe7da43de5e5e5b1a1010044858e8e4edfbe7d *972e5deaefef9f9a9acaff505f5454f4f4e95372b477717169ddbaf5ef8f2fb1d96c7209b666cd *9ac2c2c27f19a9a0a060f9f2e56a6a6a2c160b5b1f008081ead5abe7e0e0408ed5972f5f4e4b4b *e37f542775f3f8f1631f1f9fc99327b76cd9525a5a9acf9f2c2727676e6efeeeddbb7f192f3d3d *ddc4c4048f5c01003041fdfaf5070c18b072e5ca808080cccccc0a2f37424343f7ecd93371e2c4 *162d5a70b9dc4afe2dcacaca83070f26175cff8a08f29bf6ebd70f0f5b0100089fa1a121a90c6f *6fefc0c0c0acac2cfe87ebbcbcbc870f1feedcb9d3d9d9d9d2d292c3e154e36f54515159b56ad5 *bf2268f1e2c5e487c798010010282323a3a14387ae5dbbf6dab56b1f3e7ce07f64fef6eddbfdfb *f7b76fdf3e76ec58737373369b5dc3bf5d4d4dedca952bff8aac73e7cee1192b0080dad5a85123 *4747c7f5ebd7dfbc79f3d3a74ffc8fc3393939c1c1c15bb76e757272323535ad7931d1c8c5979e *9e5e6464e4bf22eec58b17bababad5bb96040000168bd5a449931123466cdcb8f1d6ad5b5fbe7c *e17fd4cdcecebe73e7cee6cd9b478d1a656c6c2ca0896df2f2f2d6d6d615b6a4a878fffe7df3e6 *cde5e4e430de00002a534c262626a46548d790c6f9faf56b858b870705059116235d461a4d0833 *aec9a587a5a5657171f1bf62a4b0b0b076af370100c40639369a99998d193366ebd6adc1c1c139 *3939fc8fa8e42ae6c68d1bebd6ad7374746cd4a891f07f605d5d5d7201f2afd8c9c8c8d0d6d6c6 *80040020c5646e6e3e6edcb81d3b76dcbf7fffdbb76ffc8f9f1f3e7cb876edda9a356b860c1962 *646454b73fbcaaaaea8b172ffe15534f9e3cc16280002081a81b65cececebb76ed0a0909c9cbcb *e37fb47cf7ee5d6060a0b7b7f7a041830c0c0c98f38ba8a8a89c3b77ee5fb176fcf8714c560700 *b1c7e572adacac264e9cb867cf9e478f1e1514145478c7e9ca952b2b57ae1c306080bebe3e337f *292525a5c58b17ff2b0166cf9eada8a888610c00e2445a5adadada7af2e4c93e3e3e8f1f3fae70 *81bbb4b4b44b972e2d5fbedcc1c1a15ebd7accff05656565fbf6edfbaf64f8f1e347b76edd7e5f *c010004084908358ebd6ada74e9dba6fdfbea74f9f56b864506a6aaabfbfff92254bc8d15e4747 *47b47e596a0a62855785e2242f2faf4ee6a80000d4e482c2c6c6c6d5d5f5e0c183e1e1e115ceca *4e4949397ffefca2458b7af7eeada5a525d2bfbbbaba7a85aba98b9fc4c444cca9000026939797 *b7b5b57573733b7cf8f08b172f4a4a4a2a3cacf9f9f9797979f5ecd9534343439c0adac3c3e35f *893465ca14feabc403000893828242870e1ddcdddd7d7d7d5fbd7ac5bf987efcf8111f1f7fe6cc *194f4fcfeeddbb8bf11a719a9a9a153e6b2cae3e7efc88d5ff00a00e292929d9d9d9cd9a35ebd8 *b163919191a5a5a5fc8b293636f6d4a95373e7ceeddab5ab844c5d5654545cbf7efdbf126cd9b2 *65e404063b0b000887b2b272e7ce9de7cc9973f2e4c9e8e868fe2f4627ff2bf9ff9c387162f6ec *d99d3a7522ffae042656af5e3d117aab9420e4e7e78bfad78b00c064aaaaaae4da67debc79a74f *9f8e8b8b23d7447c8e48e47a8a5c55916b2b0f0f8f8e1d3be2091a92ded1a347ff95783e3e3e92 *7996020082a0aeaedebd7b774f4fcfb367cf262424f02fa6929292972f5ffafafababbbbb76fdf *1eb7777ed1b87163fe979c12829cc0181a1a623c0040f5686868f4ead5cbcbcbcbcfcf2f292989 *ff01e7fbf7ef111111870e1d727373b3b5b5c57b1cf837feb56bd75052147f7f7f4ca800804ad2 *d2d2b2b7b75fbc78f1f9f3e7535252f81f5e8a8b8bc3c3c30f1c38306dda341b1b1b5959590458 *49565656a8275e666666181500502e1d1d9dbe7dfb2e5dbaf4e2c58b153e6d5a5454f4f4e9d37d *fbf6b9b8b8b46ad50a4bdf548fa2a222b9ea4437f1dab3670f2ec00180a2a7a7e7e0e0b07cf9f2 *cb972fa7a7a7f33f7a141616868585f9f8f84c9e3cb965cb96782ab356a8a9a97df8f001ddf4cb *5ac1eaeaea181b0092a97efdfa03070e5cb97265404040666626ffc34541414168682839b99d38 *71628b162db85c2e02ac75e6e6e628a6df191b1b636c0048084343c3c183077b7b7b0706066665 *6555b822e8c3870f77eedce9ecec6c6969c9e17010a040916bd275ebd6a1957eb762c50a0c3f00 *716564643474e8d0b56bd75ebb76adc21b4adfbe7dbb7ffffef6eddbc78e1d4b4eecd96c360214 *267575f5f8f878b4d2ef626262c469e5460009d7a851234747c7f5ebd7dfbc79f3d3a74ffc77ff *9c9c9ce0e0e0ad5bb73a3939999a9aa298ea96bebe3e2ae94ff4f4f430420044118bc56adab4e9 *881123366edc78ebd6ad2f5fbef0dfd9b3b3b36fdfbebd79f3e651a346191b1b937f1d19326753 *ce9a350b7df4273366ccc020011095a3998989c9e8d1a349d7dcb973a7c2f5b43f7ffe1c1414b4 *61c306d2654d9a3441804cbee9171616863efa93478f1e61d61f0033b1d96c3333b33163c66cdb *b62d383838272787ffeefcf1e3c71b376eac5bb76ed8b061782faa68f514ffc5a6241c09075f51 *0130a798cccdcdc78d1bb763c78e070f1e7cfbf68dfffefbfefdfb6bd7aead59b366c890214646 *46085044d9d9d9a18cf86bd7ae1dc609409de07038969696cececebb76ed0a0909c9cfcfe7bfb7 *be7bf72e3030d0dbdb7bd0a04106060608503c48ecab7b2bcfd5d515e3044038b85cae9595d5c4 *8913f7ecd9f3e8d1a38282820a9fc7bf72e5caca952b070c18a0afaf8f00c58facacecf1e3c7d1 *44fc1d3a7408eb71010888b4b4b4b5b5f59429537c7c7c1e3f7e5c5858c87f7f4c4b4bbb74e9d2 *b265cb1c1c1cead5ab8700c59e8686c6d3a74fd144fc3d7cf850535313a305a05690b3bed6ad5b *4f9d3a75fffefde4f853e18b59535353fdfdfd972c59d2a74f1f1d1d1d042869d4d5d5737373d1 *4415ce11424f01d4e4be8d8d8d8dababebc183079f3f7ffefdfb77fe7b5c7272f2f9f3e7172d5a *d4bb776fbc5c1b54545450439599f24782c26801a8247979f976eddab9b9b91d3e7cf8c58b1725 *2525fc77b1c4c4443f3f3f2f2faf9e3d7b627a2dfc4255551535541924288c16803f515050e8d0 *a183bbbbbbafafefab57af4a4b4bf99ff8c5c7c79f3973c6d3d3b37bf7ee782129f0474e5dd041 *95815d0980979292929d9dddac59b38e1d3b161919c9bf98cacaca6263634f9d3a3577eedcae5d *bbe2ee045449fdfaf5d14195a1abab8bd102924c5959b973e7ce73e6cc3979f264747434a91efe *c544fe3f274e9c983d7b76a74e9dc8bf8b00a1da4c4d4dd14195d1b061438c169028aaaaaae4da *67debc79a74f9f8e8b8be3bf6a0db99e7afdfa35b9b6f2f0f0e8d8b1a3a2a2220284dad2a44913 *745065181a1a62b48078535757efd1a387a7a7e7d9b367131212f817534949c9cb972f8f1c39e2 *eeeedebe7d7b050505040802a2abab8b0eaa0c4c8e05f1a3a1a1d1ab57af850b17faf9f9252525 *f1df05be7fff1e111171e8d0a1e9d3a7dbdadacac9c92140100e3535357410e651808420a75bf6 *f6f68b172fbe70e1424a4a0aff315f5c5c1c1e1e7ee0c08169d3a6b569d34656561601429dc0f3 *539584194a20a2374cfaf6edbb74e9d28b172fa6a6a6f21fe44545454f9f3eddb76f9f8b8b4bab *56adb0561830a7a7f8cfdb01ea3b62f41488043d3d3d070787e5cb975fbe7c393d3d9dffc02e2c *2c0c0b0bf3f1f1993c7972cb962da5a5a5112030908686c6bb77efd044fcbd79f306df4f0133d5 *af5f7fe0c0812b57ae0c0808c8cccce43f92f3f3f343434377efde3d71e2c4162d5a70b95c0408 *cca7a6a676e7ce1d34117fd7af5fc7f753c01086868683070f5ebd7a75606060565616ffa19b97 *97f7f0e1c39d3b778e1f3fded2d292c3e12040103964dc92932b34117f5bb76e65b3d9182d5027 *8c8c8c860e1dba76ed5a72bef4e1c307fe63353737f7fefdfbdbb76f1f3b766cb366cd306e413c *8c1b370e4dc4dfc89123314e40681a376eece8e8b87efdfa9b376f7efaf489ffe0ccc9c9b97bf7 *2e3995727272323535453181586ad1a2059a883f0b0b0b8c131010168bd5b469d31123466cdcb8 *f1d6ad5b5fbe7ce13f1ab3b3b36fdfbebd79f3e651a346191b1b937f1d1982d8535656cecfcf47 *19f1f9ea198ba543ed16938989c9e8d1a349d7dcb973e7ebd7affc47e0e7cf9f838282366cd840 *baac499326081024908a8acac58b17d1477fe2efefafa4a4847102d5c666b3cdccccc68c19b36d *dbb6e0e0e00adf4cfaf1e3c71b376eac5bb76ed8b0618d1a35428000c4e0c183d1477fe2e0e080 *110255c2e170cccdcdc78d1bb763c78e070f1e7cfbf68dff187bfffefdb56bd7d6ac593364c890 *060d1a204080dfa9a9a9f17f7d8cc42a2929c18c74a84c31356fdedcd9d979d7ae5d21212115de *487ff7eeddd5ab57bdbdbd070d1a646060800001f8ab57afdedcb9732bfcf65632ddbe7d1b3d05 *bfe372b956565693264ddab367cfa3478f0a0a0af80fa48c8c8c2b57aeac58b162c08001fafafa *0810a0321a376e3c7ffe7c72eec77ff57e093761c2040c1520a4a5a5adadada74c99b277efdec7 *8f1f171616f21f39696969972e5d5ab66c59bf7efdc8a9200204a8bc162d5a9093ba972f5fa283 *2a03cb25492c191999d6ad5b4f9d3a75fffefdcf9e3d2b2e2ee63f54525353fdfdfd972c59d2a7 *4f1f1d1d1d040850252c16ab43870e9b376f4e4c4cfc7dff2a2b2b7bf0e001d9bfe2e2e2504cbc *c2c3c3353434307e24849c9c9c8d8d8dababebc183079f3f7ffefdfb77fec3233939f9fcf9f38b *162deaddbb37ce6700aa7da7a257af5e7bf7ee2d77754ab21b5ebf7e9d9c2eeaeaea4afd77bf9d *5c67a19b78797a7ae2e97e31262f2fdfae5d3b3737b7c3870fbf78f1a2a4a484ff7820a7797fff *fdb7979757cf9e3d71020350130a0a0a43860c3971e244767676b9eb529293c03163c6fcfeec2a *29aca2a222d413fd782f4e92c56fd7e8d0a1c3cc99337d7d7d5fbd7ac57f8eeb8f1f3fe2e3e3cf *9c39337ffefceeddbb633a0d40cd91fd68dcb871fefefee5ce89fdfcf9f3d1a347070d1a44ce21 *fff427282929ad5fbf1e0d4559b66c1939ac615c893432a4edecec66cd9a75fcf8f1c8c848fec5 *545656161b1b7bead4a9b973e776e9d2056f1c03a82d7a7a7ad3a74fbf79f366b9b7d3333232fe *faebaf1e3d7a54f245331a1a1ae55e85499a8f1f3fe2fc5914292b2b77eedc79ce9c39274f9e8c *8989e1ff0e50f2bf4645459d387162f6ecd99d3a7522ff2e0204a8454d9a34993f7f7e686868b9 *b3cae3e3e3376edc686b6b5bd5352a65656567ce9c899e9a32650a5eba2d12545555bb75eb366f *debcd3a74fc7c5c5f17fc8825c4fbd7efdfad8b1631e1e1e1d3b76545454448000b5cecaca6ae5 *ca957f9a551e1111b16cd9324b4bcb1ade3f4c4b4b93e4924a4e4ec6c2b38ca5aeaedea3470f4f *4fcfb367cf262424f02fa6929212b2b31c3972c4ddddbd7dfbf6b8910b20206c36bb43870e5bb6 *6c494a4afad3acf23973e6346cd8b056fe3a0e87e3e8e828e10bfae15d09cca1a9a9d9ab57af85 *0b17faf9f995bb0bfc328b959cad1d3a7468faf4e9b6b6b672727208104070a4a5a57bf7eebd77 *efde77efdefdbe3f1617175fbb768d9e555eeba7ac919191925952898989f866aa6e696b6bdbdb *db2f5ebcf8c2850b292929fcb717d911c2c3c30f1c38306ddab4366ddac8caca22400041535050 *183a74289f59e5e7ce9d73727212f48d293b3b3b499ee98771284ce45cab6fdfbe4b972ebd78f1 *e2dbb76ff96f9da2a2a2274f9eecdbb7cfc5c5a555ab56f81a114068c825ccf8f1e3c97e5aee82 *96d4acf28103070aed3e06b9a608080890c0922a292969dbb62d06a440e9e9e9f5efdf7ff9f2e5 *972f5f4e4f4fe7bf450a0b0bc3c2c2fefaebafc99327b76cd9525a5a1a01020879879d3e7d7a50 *5050b9cfc2935d78cf9e3dddbb77afe4acf2da356ddab40a9fd0173fe4ac1ec3b2d6d5af5f9f9c *65ad5ab58a9cfc94bb3aca2f4f58878686eedebd7bc284092d5ab4a893c10f004d9b36f5f4f4fc *d3acf2b8b8b80d1b36546356796d313535bd73e78e045e4c3d78f080c3e1607cd69ca1a1e1e0c1 *8357af5efdcf3fff646565f18f3d2f2fefe1c3873b77ee1c3f7ebca5a5253601401db2b2b222a7 *94af5ebd2a776f7dfefc393999b7b0b0a8c39f504e4ecedbdb9b7769e8f7efdf4bc82b14737272 *6a6bcea4043232321a3a74e8dab56baf5fbffee1c307fe51e7e6e6debf7f7ffbf6ed63c78e6dd6 *ac19165104a85b641fecd8b1e3962d5b929393cb9d554e76d85a9c555e13bd7bf7e65d509dd413 *3992686b6b4f9c3851127a8a1c33315c2baf71e3c68e8e8eebd7afbf79f3e6a74f9f2a3c07b87b *f7eed6ad5b9d9c9cc8d53aa6fd033081b4b4b4bdbdfdbe7dfbfe34abfc9f7ffe71717161c87b6a *ead5ab77f6ec59de9ff0f1e3c7d6d6d6d4ffaaa2a2b27bf76ef12ea9d3a74f63d0f2419aa569d3 *a623478edcb871e3ad5bb72a7cfb737676f6eddbb7376dda346ad428636363141300732828280c *1b36ece4c9935fbf7efdd3acf2d1a3473367894b72b93763c60cde9f96fce7e9d3a7ff722b4655 *55353838585c4b2a353515cf4cfd5e4c26262664ac6ed9b2e5ce9d3be58ee75fa6a40605056dd8 *b061f8f0e14d9a344180004c43cd2abf74e952b9b3ca3f7dfae4ebeb3b60c000a63d1ddfaa55ab *274f9efc7259f1a70787353434626363c5afa4cacaca3a77ee8c314cce4cccccccc68c19b36ddb *b67bf7eee5e6e656b854ef8d1b37d6ad5b474eccf0bd1e0063e9ebebbbb9b9fd6956795a5adaee *ddbbbb77efcec0f94bcacaca3b76ece09d20111f1fdfb367cf0aebf8e6cd9be2514ff4efbe7efd *7ac91cbd64585a58588c1b378e8c84070f1e7cfbf68d7f62efdfbfffe79f7fd6ac593364c89006 *0d1a60f70760b2a64d9b2e58b0e0d1a3477f9a554e0e7d6ddbb665ec3d794747c78c8c0cde07fc *57ae5c59c90567545454366fde2cea25450eb9d47f78f6ec99e43c374a8aa979f3e6cececebb76 *ed0a090929f73d65bcdebd7b77f5ea556f6fef41830619181860c70760be962d5bae5ab5eaf5eb *d7e5eed4e1e1e14b972e35373767f2afd0a85123724accfb63dfba75cbc4c4a4aad762a3478f2e *f77557cc575c5c4cafb3410ed4a6a6a6623c62b95cae9595d5a44993f6ecd9434eabcabd29cd8b *9cbd5cb97265c58a1503060cd0d7d7c72e0f2012d86cb69d9dddd6ad5bff34abfcdebd7bb367cf *36323262f82f42ae1a162d5ac47ba4cacaca1a33664cf5fe34797979d2da15ce4666e065948b8b *0b7d153c6dda34f11ebda74f9fe61f485a5adaa54b97962d5bd6af5fbf7af5ea617f0710213232 *32f6f6f6fbf7ef2ff7517a6a56f99429531832abbc429d3b778e8a8aa27f7e72a0debb776f0d67 *b871381c3d3d3d115a563d2222c2cccc8c5eb4e7f2e5cb623f8c3d3d3d7f09e1cd9b37fefefe4b *962ce9d3a78fb6b636f6740091a3a8a8386cd8b053a74e953b0bf7dbb76f7e7e7ea3468d62ceac *f20a696969f9fafaf2fe162f5ebcb0b5b5adad3f9f94dd993367985f52c78e1d233f2ab976a0bf *799184a374b76edd929393cf9d3b472ea57bf7eeada9a9897d1c4044696868383b3bf399557ee4 *c81106ce2ae78fc5624d9a3489f7d61ce9d9b973e7d6fae44372fcb7b0b0080909616643ddbb77 *cfd4d4545555d5c5c585be9c24571318f600c07cf5ebd79f3163c6ad5bb7fe34ab7cd7ae5de48c *541457c524c5f1e0c103de5fc7dfdf5fa053b6d4d5d549568c7ac02a3232d2cece8ebabd696262 *92979747fd73b25931f80180c98c8d8d172c5810161656eeac7272a45dbf7ebd8d8d8d88aef4a2 *a0a0407e7edec9786fdebce9dfbfbf70fe76520a4e4e4ee52e15254ce9e9e9c3870fa7bf809396 *967efaf4295d5e781739003093b5b5b5b7b7f79fbef77ff6ecd992254b183eabbc420e0e0ebcef *e926d7891b376e24cd25cc9f81cbe59282983f7f7e850b1a08c2d7af5f67cd9a457e00deabe0b5 *6bd7d24f8ab568d102fb0200300735ab7cdbb66dbc476fde1509eeddbb470e6b62f070bd8181c1 *850b17787fbb870f1f5a5a5ad6d5cf43ae59d4d5d5c78d1b77f3e64d213c69555c5c7cfdfa7572 *2947fed25f1e58eed4a953595919f57f9b3b772e760a0060021919993e7dfa1c3870805e768017 *39a90e0c0c9c3c79b278ccf822170eb367cfe65df4e6f3e7cfe4b763c87d4b521caaaaaa7dfbf6 *f5f3f3ab70659eaa22976c7ffffd77efdebdc95f41fea2dfff76f2cfdfbc7943fd9f838282b06a *3700d42d4545454747473eb3cac9316dd4a851cacaca62f32bb76ddb36222282f7d73c7af4a896 *9616037f5412bb8a8a0af981f7eedd5be10b5ef923ffba8f8f8f8d8d0da9212525253e7f29190c *f4a44d2cb000007545434363c28409972f5f2e2c2c2c7755e7c3870ff7efdfbf92ebd7890a7288 *26c76afa8e16111d1ddda54b17e6ffe46443a8a9a9e9eaea76e8d0c1cdcdedc89123a1a1a1c9c9 *c9644b914b5dde6d473628f987e47f0a0909211b71faf4e9eddbb727ff22f9d72bb3359d9c9ce8 *3f6ae8d0a1d8530040c8a859e5b76fdf2e7756f9dbb76f77eddad5b56b57519c555ea1d1a347f3 *cea92b282858bc78b18c8c8c28fe2ea47134ff43ce3748f9926b2ed5ff50ff81fc43ea7fadea69 *869191117d594d3a0efb0b00088d8989899797d7e3c78fcb9d551e1313b36edd3a1b1b1b71fdf5 *8d8d8d838282787fe56bd7ae356edc180383179bcdbe7fff3e954f424202ff7b830000b5c2dada *7af5ead57c6695930b8a66cd9a897102e48262c58a15bc77c6323232860f1f8eb1f13b3218e899 *f96ddbb645200020b8b3e24e9d3a6ddfbefd4fb3ca838383c5635679857af4e8111717c7fbbbef *dcb95384961914a6366ddad033e1972d5b864000a0d6c9c8c8f4eddb97cfacf2ab57af8acdacf2 *0ae9e8e89c3c79923781a74f9fb66edd1ae3a45c8a8a8a74a13f7cf8502cbf9d0480baa2a4a434 *7cf8f0d3a74fe7e4e494fba4ccd9b367478e1c294eb3caf963b158d3a64dcbcecea64320c9b8bb *bb93cb4c8c963f21a73774560d1b3644200050739a9a9a13264cb872e50a9f59e50e0e0e6236ab *bc425656568f1e3de28d82d4b49e9e1e060c1f83060da2e31a376e1c0201809a30303020970677 *eedc292d2d2d7756f9ce9d3bc575567985d7955bb76ee59d6c9f9898686f6f8f31c31f29717256 *432576e6cc19040200d5636262b270e1423eb3cad7ae5ddba64d1b89cd67f0e0c1a4a37997ad5b *bd7a35d6f7ae108bc5ba7efd3a7d9253c357150380046ad5aad59a356b785f7dfecbc480c58b17 *9b999949724446464657ae5ce18de5eeddbb129e49e5cd9a358b0aadacac4c2416e500002660b3 *d99d3b77debe7d3bbd10e82fb3cac971d8c3c3c3d0d050c283e272b90b162cc8cfcfa7c3f9f0e1 *c3f8f1e331842ac9d2d292fe7273c3860d080400f8939191e9d7afdfc18307c9c1b6dc59e50101 *0193264d62e65aa9c2d7b163c7d7af5fd3f9fcf8f1e3c08103e52efd0de59295957df5ea15955e *7878b8b4b4343201807251b3cacf9c39c36756f98811232467567985343434489bf37e4f478eb7 *1d3a74403255b26ddb362a3d72416a6a6a8a4000e0179a9a9a13274e249748e5ce2a279754870e *1d92c059e5151a3f7e3ceff5665e5e9ea7a72797cb453255d2ab572fbae85d5d5d110800d00c0c *0c66ce9cf9a759e5a9a9a93b76ece8d2a50b5603f89d9999d9ddbb7779e3ba7cf9b2242cfd2488 *73a48c8c0c2ac32b57ae201000204c4d4d172d5af4e4c993726795474747af5dbb164bfafc899c *9cdc9a356b8a8b8b791f131b34681092a91e7f7f7ffab58912b2881600fc09a91e7280253554ee *ac72525ba4bcf0d5007f7dfaf4494a4aa2432b2929d9b2658ba2a22292a99e2953a6d061f6eddb *17810048200e87d3a54b971d3b76a4a6a6fe6956f9cc993331abbc427a7a7a7ffffd376f7aa1a1 *a12d5ab44032d5666c6c9c97974785b97bf76e04022051646565fbf5eb77e8d0213eb3ca274e9c *8859e595c166b34995f34e80fcf2e5cbd4a953592c16c2a9362e97fbf8f1632acfa8a8282cd601 *2021949494468c1871e6cc99dcdcdc72679593ff89fc1ff05ed4ca6bddbaf5b367cf78633c71e2 *848e8e0e92a9a1d5ab57d38b4a595959211000f1462e8b264d9a442e9178df12cb3babfce0c183 *e4f24a46460659559e8a8acaae5dbbcacacae824636363bb75eb86646acecece8e9e623a6fde3c *040220ae0c0d0d3d3c3ceedebd5beeacf2376fdeecd8b1a373e7ce78cf513590ab4e7ab2345158 *58b86cd932147d6d9d00d06f76be75eb166e9f02881f3333b3458b163d7dfab4dc697b5151516b *d6ac69d5aa1582aa9ec68d1b5fbb768d37d21b376e346dda14c9d49613274e50c17efefcb97efd *fa0804406cb469d366eddab5e5ce2afff1e3c793274f162e5c8859e535412e97962c5952505040 *07fbeeddbb51a34621995a44f2a4e31d366c1802011075d4acf29d3b77fe6956f99d3b77dcdddd *0d0c0c90550d919c79cf01cacacaf6ecd9a3aaaa8a646a5183060db2b3b3a9848f1c3982400044 *97acacac8383c3a14387e8179bf22a2c2cbc72e5cac489133535359155cd696b6b1f3d7a9437e1 *f0f0701b1b1b2453bbd86c76707030fd6a634c3a051045cacaca23478e3c7bf66cb9b3ca737272 *4e9f3e3d7cf870ece0b585c5624d9932e5f3e7cfbc53f767cd9a85f50c0561e1c285f4221eb6b6 *b6080440846869694d9e3cf9ead5abe5ce2a7ffffefdc18307fbf6ed8bc966b5cbd2d2f2e1c387 *bc519f3b770e5feb0b48ebd6adbf7fff4ee5bc7cf972040220121a3468e0e1e1111c1cfca759e5 *dbb76fefd4a9136695d73a0505858d1b3792b37a3aede4e4642c2e27d0c0636363a9a843424270 *b90ac070cd9a355bbc78319f59e5ab57afc6ac72c1193060003907a0032727f9ebd6ad93979747 *3282b36fdf3efab66aa3468d10080033b569d3861c0f636262ca9d55fef8f1632f2f2f13131304 *2538060606f42b2428f7eedd3337374732023570e0403af0f1e3c723100046e170385dbb76ddb9 *73e7dbb76f7fafa7929292dbb76fbbbbbbe33b11216c88b973e77efbf68d0effe3c78f13264c40 *328256af5e3d7a25e4bffffe1b81003084acac6cfffefd0f1f3efca759e5972f5f260749cc2a17 *0e5b5bdb172f5ef05ebd924d83f085835ed9839caaa9a9a9211080ba45cd2a27278dbce7edbfcc *2a777474c43bf584861c18f7eeddcbfbcee2c8c8483b3b3b24231c3367cea41f9aeedab52b0201 *a82bdadada93274f0e0c0cfcd3acf203070ef4e9d307b3ca856ccc9831595959f486c8cfcff7f2 *f29296964632c26161615158584885bf71e3460402207c0d1a3498356bd69f6695a7a4a46cdbb6 *0db3caeb848989c9ad5bb77837c7d5ab571b366c886484465656f6e5cb97f4e21e383d0010a666 *cd9a2d59b2e49717e7f1de56f2f6f6b6b6b646507575785cb97225ef856d5a5adad0a143918c90 *6dddba95cabfa0a0c0cccc0c8100081a8bc5b2b1b159b76e1dfdace22fb3cac3c2c2bcbcbc8c8d *8d91551dead9b3677c7c3cef22bde492166b4cd5c986a0bf139c3e7d3a0201101c0e87d3ad5bb7 *5dbb769173f2726795dfba756bc68c1998555ee77475754f9d3ac5bb751e3f7edcb2654b24237c *1a1a1af4fb2503020210088020c8c9c9f5efdfffc891239f3e7dfad3ac72676767b23f22ab3ac7 *66b3c9193bfdaa0882fc67f24ff0b5605db970e102b521b2b2b27474741008402d52515119356a *949f9f5fb9b3cabf7efd4aced8870d1b8659e5cc41ae98c87513ef6622db885c5b2199ba3269d2 *247a5bf4ebd70f8100d40a6d6ded2953a6040606161717ff5e4fe49c70fffefd9855ce344a4a4a *dbb66de39d69191f1fdfb3674f2453879a366d4a9fe3edd9b3078100d4909191d1ecd9b3efddbb *575656f67b3d2527276fddbad5cece0eb78f1868e8d0a1bcdf18161515ad5cb952565616c9d421 *2e971b161646afa58c757d01aacddcdc7cc99225e1e1e1e5ce2a7ffdfab5b7b737be7f67ac860d *1b5ebd7a957793ddba750b8bf73201d971a82d525c5c8c3d08a0aa582c56dbb66dd7af5f1f1717 *57eeacf2478f1e2d58b000b3ca994c5a5adacbcb2b3f3f9ff796ac9393139261820e1d3ad0f760 *e7cf9f8f40002a899a55be7bf76e3eb3cadddcdcf4f5f59115c3d9d9d9454646d2dbaeacac6cef *debd58d49421545454929393a94d73fbf66d725a884c00f89393931b306080afaf6fb9b3ca0b0a *0a2e5dba8459e5a2425353f3f0e1c3bc0bc9464444d8dada2219e6387efc38b5693e7ffe8c6709 *01f89fd48d1e3d9acfacf293274f6256b96899306102ef8b51c8969d33670e5e59ce2823478ea4 *3790a3a3230201f89d8e8e8e8b8bcb3ffffcf3a759e5fbf6edb3b7b7c73298a2a559b366f7eedd *e3dd94fefefe0606064886510c0d0de927ac7d7d7d1108002f6a56f9fdfbf7f9cc2aefd8b12366 *958b1c7979f9b56bd77efffe9dde9a6fdebce9dfbf3f92611ab273ddbd7b97da46898989584711 *80626161b174e9d2e7cf9f973babfcd5ab57ab56adc29c58d1d5b76f5ffa1b7982b4d5860d1b14 *1414900c03797979d1ebfdb66bd70e818024a3669593e3159f59e59e9e9e4d9b364556a24b5f5f *ffdcb973bc5bf6e1c3879696964886995ab56a455ff3ae58b102818064e272b9ddbb77dfb3674f *7a7a7ab9b3ca83828230ab5c0c70381c0f0f8fdcdc5c7ae37efefc79f2e4c998decc58e40a3726 *2686da58a1a1a198d90292464e4e6ee0c081bebebee46055eeacf28b172f8e1f3f5e5d5d1d5989 *81366ddafcb23608d9f45a5a5a4886c97c7c7ca88d45ce2e1a376e8c404042a8a8a83839399d3b *772e2f2feff77acacece3e71e2c4d0a143f15585d85055552517cbbcd360a2a3a3bb74e9826418 *ae7ffffef426737676462020f6a859e5d7ae5d2b7756f9bb77eff6eddbd7bb776fcc2a17332347 *8ecccccce4bd4c5ebc7831b632f3e9eaea7ef8f081da6a7e7e7e0804c458c3860de7cc99f3e0c1 *837267952725256dd9b205b3cac55293264d6edcb8c1bbb9fff9e71fdc3b1215818181d4564b4b *4bc3bd77104b161616cb962de333ab7ce5ca95565656084a2cc9c8c82c5dbab4b0b090dee21919 *19c3870f4732a2c2dddd9d5e5fb15bb76e0804c4068bc5b2b5b5ddb871637c7c7cb9b3ca434343 *3d3d3dc96936b21263e4b0161b1b4b6ff7d2d2d29d3b772a2b2b231951616e6e5e5050406dbe4d *9b36211010035c2eb7478f1e7f9a55fefdfbf79b376f4e9f3e5d4f4f0f5989376d6d6d7a9d52ca *d3a74f5bb56a856444eb5a38222282da7ccf9f3fc7bbad41a4c9cbcb0f1a34e8e8d1a37c66958f *1b370e77b625e452dac5c5e5cb972ff400c8c9c9717777c7d78e2267f3e6cdf42edcac59330402 *a2485555d5c9c9e9fcf9f37c66950f193204b3ca2547f3e6cd4342427887c1d9b36771f92c8aba *77ef4ebf57c5cdcd0d818068d1d5d59d3a752a9f59e57bf7eec5ac7249a3a8a8484ebf4b4a4ae8 *919098984886019211451a1a1af4adfbab57af221010158d1a359a3b772e9f59e5e430d5a14307 *ac7b2381060e1c989a9a4a0f067202b37af56a3939392423a2e84517dfbf7fafa3a3834080e12c *2d2d972f5f4e7f9dfa8b972f5fae5cb9b2458b16084a32191a1a5eba74897748dcb973c7d4d414 *c988ae091326d05bd3c1c101810033916ba276edda6ddcb8312121a1dc59e5212121f3e7cfc7ac *7249c6e572c918e0fd6af2c3870fe3c68d4332228decd4f4abb1fffaeb2f04020c3cf2f4ecd993 *0cce8c8c8c3fcd2a777575c5d7e2d0be7d7b7229cd7bea72e0c001cce7148323c0a3478fe87517 *e5e5e59109300435abfcd8b163bc738969f9f9f9fefefe63c78e555353435640ca68fffefdf44c *306a4511525b48460cac5cb992fe86d1dada1a81409d5355551d3366ccf9f3e74913fd5e4fa4b3 *8e1f3f8e59e5c08b9caebc7fff9e1e24797979f3e7cf2727e148463cae914b4b4ba92debe9e989 *40a0ce9d3b778e7e2f27afcccc4c1f1f9f5ebd7a615639f0323535bd73e70eef50b97cf9728306 *0d908c785056564e4a4aa267c260d62e30c1993367788f398989899b376f262754189ff00b3939 *396f6f6fde67e5525353070d1a8464c4c9d1a347e91b2906060608049860d8b061644cbe78f162 *c58a15cd9b37472050aedebd7bf3cef92c292921e7338a8a8a48469c0c1f3e9cdec458ca1e1875 *928cb7ff001ff5ead5fbe5a23b3434140fca891f72f5444fa0225755080400988fcd66cf9831e3 *ebd7afbc936aa64e9d8a7bc262b9ade9af1d939292f0ca1500603e6b6beb274f9ef05e461d3f7e *1c2be7882b4f4f4ffad56078b80000188e9c4befd8b1839e994cc4c6c6e2fdade27d4e424f8f59 *b97225020100261b366c18efab2d0b0b0b972d5b86f7e289317979f9e8e8686a733f7af488c3e1 *20130060a6468d1a050606f2dee8bb71e306566e147b7ffdf517b5b973737331a50a0098495a5a *7ad1a245050505bc4f798f1c3912c9883d0707077aa34f9830018100000375ead4292a2a8a3e58 *959595edd9b347555515c9883d1d1d1d7af1ab73e7ce211000601a4d4dcd23478ef02e241b1e1e *6e6363836424c4d5ab57a9ed9e9e9e8e25ee018051582cd6a449933e7dfa4437546e6eae878707 *be43971c6e6e6ef4ab58ba77ef8e400080392c2c2ceedfbfcf3b5fe2dcb973fafafa484672346b *d68cfe3a72f3e6cd0804001842414161fdfaf5bccbe3272727f7eddb17c94814191999e7cf9f53 *03202222020f1d000043383838a4a4a4f0be9479eddab5784fab04dab469133506c82595b9b939 *0201803a57bf7efdf3e7cff3dee8bb77ef5eb366cd908c04ead6ad5b595919350c66cc98814000 *a06e71389cd9b367e7e6e6d20df5f1e3473c2623b1d4d5d5d3d2d2a891101818884000a06eb56d *db96fe1a829ad675e8d0214d4d4d2423b1fcfcfca8c1f0fefd7b5d5d5d04020075455555f5afbf *fea26fef10919191767676484692393b3bd3e3a17ffffe080400eacae8d1a3dfbd7b471f91f2f3 *f3bdbcbca4a5a5918c246bdcb8317dfbd7c7c7078100409d68dab4e9cd9b3779e74b040404346c *d810c948380e87131a1a4a0d899898184cf20400e19395955dbe7c79616121dd5069696943860c *413240ac58b1821a15c5c5c5d6d6d608040084ac7bf7ee71717174439596966edbb64d494909c9 *00d1ae5dbb9292126a6c2c58b00081008030e9e8e89c387182f7465f585858cb962d910c50c8e9 *4a6262223536eedebdcb66b391090008078bc59a366dda972f5fe886cacece767575c5810878f9 *fafa52c3830c15434343040200c2616565f5e8d123decba853a74ee17118f885a3a3233d42468c *188140004008141515b76cd9427fdd40c4c7c7f7e8d103c9c02fead7affff9f3676a901c3b760c *810080100c1e3cf8eddbb77443151515ad58b142565616c9c02f582cd6eddbb7e925f195959591 *0900085483060dae5cb9c27ba32f2828c8d8d818c940b9e6cf9f4f4ffeecd0a103020100c1e172 *b99e9e9e79797974436565653939392119f893962d5b16171753a365d5aa5508040004879c09bf *7af58a6ea8b2b2321f1f1f35353524037f222f2f1f1515453fa440ce7390090008828686c68103 *077efcf8419754444484adad2d9201fe76efde4d0d986fdfbe3569d204810080208c1f3ffec387 *0f74439103ce9c3973381c0e9201fefaf5eb470f9b891327221000a87566666677efdee59d2f71 *e1c205030303240315d2d6d6cecacaa286cdf9f3e7110800d42e3939b9d5ab57d35f7f13292929 *784910545e4040003572d2d3d3353434100800d4227b7b7b7a1136e2fbf7ef1b366c5050504032 *5049aeaeaef45b9bf1dc3700d4223d3dbdbffffe9bf746df83070f2c2c2c900c549e9999597e7e *3e357eb66cd9824000a056b0d96c7777f79c9c1cbaa13e7dfa3479f264168b8570a0f2a4a5a5c3 *c3c3a921f4e2c50b19191964020035d7ba75eba74f9ff25e46f9fafa6a69692119a8aa0d1b3650 *43a8b0b0d0dcdc1c8100400da9a8a8ecdcb9b3b4b4946ea8e8e8e8ce9d3b2319a886ae5dbb9695 *955103895c9e231000a8a1e1c387676464d00d555050b078f1626969692403d5a0a6a646af4bfc *cf3fff201000a889c68d1b5fbb768df7461f39b0346ad408c940b59d3d7b961a4b1f3e7cc0dbc7 *00a0da646464c84513b974a21b8a5c52393a3a2219a88971e3c6d1236ac08001080400aaa74b97 *2ed1d1d1f4f1a4b4b474e7ce9d781910d410b912a7678aeeddbb17810040356869691d3d7a94f7 *46df93274f5ab56a8564a086381c4e48480835a8626262f03c380054158bc59a3c7932fdca6fe2 *ebd7af3366cc60b3d908076a6ed9b265f4ba2538f30180aab2b4b47cf8f021ef65d4d9b367f5f4 *f4900cd40a5b5bdb9292126a68797979211000a83c0505858d1b3792535cbaa11213137bf7ee8d *64a0b628292925242450a32b38381857e8005079fdfbf77ff3e60ddd50c5c5c5dedede72727248 *066ad1e1c387a901969d9d6d6868884000a0320c0c0cfcfdfd796ff4ddb973c7d4d414c940ed1a *3a74283dc6468e1c894000a0421c0e67ce9c39dfbe7da38f1eefdfbf1f376e1c92815aa7afaf4f *cfcc397efc380201800ad9dada464444d00df5e3c78ffdfbf7ababab2319a8752c162b2828881a *69c9c9c92a2a2ac80400f8505353dbbb772fbdf827f1f2e5cbf6eddb23191090b973e7d2cf8977 *ecd8118100001f4e4e4e5959597443e5e5e5cd9f3f9fcbe522191090162d5a14151551e3cddbdb *1b8100c09f181b1bdfba758b77bec4a54b971a346880644070e4e4e4222323a9f1161616863322 *002897acacecca952be9735a22353575e0c0814806046dd7ae5dd490fbf6ed5bd3a64d110800fc *ae67cf9ef1f1f174439594946cdebc59515111c980a0f5e9d3871e7893264d422000f00b5d5ddd *53a74ef1dee80b090969debc39920121d0d6d67ef7ee1d35f02e5cb880400080179bcd767575cd *cecea61beacb972f2e2e2e2c160be180705cbe7c997e5b998686060201005acb962dc3c2c2782f *a38e1f3f4e4e6e910c08cdb469d3e8e7f27af6ec89400080a2a4a4b46ddbb6d2d252baa1626262 *ba75eb866440984c4d4df3f3f3a911b875eb5604020094214386a4a5a5d10d555858b874e95219 *19192403c2242d2dfdecd933faf971595959640200464646010101bc37faae5fbfdea449132403 *c2b77efd7afa4cc9c2c2028100e0dcd5cbcb8bbec74264666662256aa82b5dba74a1d7e39a3973 *2602019070767676af5fbfa61b8a1c1f76efde8d153ea1aea8a9a9a5a6a652a3f1dab56b985c0a *20c93434340e1d3af4e3c70fbaa4c2c3c3dbb4698364a00e9d3973861a8d1f3e7ca857af1e0201 *905813264cf8f8f123dd50b9b9b91e1e1e1c0e07c9401d1a3b762c3d26b1241780c46ad6ac5970 *7030ef7c093f3f3f7d7d7d240375ab61c386393939d498dcb76f1f02019040f2f2f26bd7aefdfe *fd3bdd504949497dfbf6453250e7c8b5fc83070fa861191b1baba0a0804c00240de923d24a7443 *91b6229d459a0bc900132c5dba941e99ad5bb746200012455f5fdfcfcf8ff7465f707070b366cd *900c3044dbb66d4b4a4aa8c1b970e14204022039381c8e8787077dcf9ff8f8f1a3b3b3339201e6 *505454a45f1943cea0d86c36320190106ddab4a1579ea156f23c74e810569c06a63978f0203544 *b3b3b3f162680009a1a2a2b27bf76efa897ee2f5ebd71d3b764432c03443860ca147e9a851a310 *08802418397264666626bdefe7e7e72f58b0405a5a1ac900d3e8ebeb7ffaf4891aa8274e9c4020 *0062af499326d7af5fe79d2f11101060646484648081582cd6cd9b37a9819a929282a5ba00c49b *8c8cccd2a54b0b0b0be9864a4b4b1b3264089201c69a33670e35564b4b4bedecec10088018ebda *b56b4c4c0cdd5064afdfba75ab9292129201c66adebc79515111356257af5e8d4000c495b6b6f6 *b163c7786ff4858585595959211960323939397a89fec78f1f73b95c6402207e582c968b8bcbe7 *cf9fe986cacece767575c5b327c07c3b76eca0066d5e5e5ed3a64d110880f869debc79484808ef *65d4c99327757575910c309fbdbd3dfd2a99c9932723100031a3a8a8b869d3267a8519222e2eae *478f1e48064482969616fdd084bfbf3f0201103303070ea4df734a141515ad58b142565616c980 *a8b874e912357a333232343535110880d8303434bc78f122ef8dbea0a020636363240322c4c5c5 *855ec2ab57af5e0804403c70b9dc79f3e6e5e5e5d10d959595e5e4e4846440b4989898d0c378db *b66d0804403cb46bd7eee5cb977443959595f9f8f8a8a9a92119102dd2d2d24f9f3ea5863119d2 *b8590d2006d4d5d5f7eddb474f8b22222222dab66d8b644014ad5dbb961ac68585859696960804 *40d48d1d3bf6fdfbf774437dfbf66dce9c391c0e07c98028ead4a913bd74bf8787070201106926 *2626b76fdfe69d2f71e1c2050303032403224a5555f5cd9b37d460be7efd3a8bc5422600224a4e *4e6ed5aa55f48a67d40ad20e0e0e480644daa953a7e81749d7ab570f810088a85ebd7a252424d0 *0df5fdfbf70d1b36282828201910694e4e4ef4a81e34681002011045e40cf3cc9933bc37fa1e3c *78606161816440d41919197dfdfa951ad5fbf7ef4720002287cd66bbb9b9d13b32f1e9d3a74993 *26e1063e88c7f0be7fff3ebdb4176e0e00881c6b6bebc78f1fd30df5e3c70f5f5f5f2d2d2d2403 *e261f1e2c5f44dec366dda20100011a2acacbc7dfbf6d2d252baa4a2a2a23a77ee8c64406c9062 *22f5440def458b1621100011326cd8b0f4f474baa10a0a0ac85e2c2d2d8d64406c282a2ac6c5c5 *5123fcdebd7b78211a80a868d8b061606020ef7c09f25f1b356a846440cc1c3870801ae15fbf7e *6dd0a0010201603e72b9b470e14272e9443714b9a47274744432207e060d1a448ff3d1a3472310 *00e6ebd4a953545414bde7969696eed8b143595919c980f8d1d3d3fbf8f123fd82690402c0709a *9a9a478e1ce15d48f6c99327ad5ab542322096582cd6f5ebd7a9a1fee6cd1b5555556402c0e41d *76e2c4899f3e7da21beaebd7af3366ccc017ca20c666cd9a45bf7dc6cece0e81003096b9b939fd *7823e5cc993358d60cc49ba5a56561612135e0d7ac5983400098495e5e7eddba75f46323444242 *42efdebd910c88375959d957af5ed137b7b95c2e320160a07efdfa252727d30d555c5ceceded2d *2727876440ec6ddfbe9d1af6797979c6c6c608048069ead7af7ffefc79de1b7d77eedc31353545 *3220097af5ea454f169a32650a020160140e87336bd6acdcdc5cbaa1debf7f3f76ec5824031242 *5353333333931afc172f5e4420008c626363f3fcf973de8564f7efdfafaeae8e644072f8fbfb53 *e39fb415e92c0402c010aaaaaa7ffdf5575959195d522f5fbe6cdfbe3d9201893265ca14fa240d *f385009863d4a851efdebda31b2a2f2f6fdebc7998e00492c6d8d8980c7e6a2fd8be7d3b020160 *82a64d9bdebc799377bec4a54b970c0d0d910c481a7262f6e4c9136a2f78f5ea95acac2c3201a8 *5b323232cb972fa71f6324525353070e1c88644032ad59b386da118a8a8a9a376f8e4000ea56f7 *eedd636363e9862a2929d9b46993a2a2229201c964676747bfe573d6ac590804a00ee9e8e89c38 *7182f7465f484808ce1e4192a9a8a8a4a4a450bbc38d1b37582c163201a81364ef9b3a75ea972f *5fe886fafcf9b38b8b0bf64a9070f499dbc78f1ff5f4f41008409d68d1a245686828ef65d4b163 *c7b4b5b5910c48b8d1a347d33bc5e0c183110880f0292a2a6ed9b2a5a4a484de19636262ba76ed *8a64001a3468f0f5eb576abf3870e000020110be418306bd7dfb966ea8c2c2c2a54b97cac8c820 *1900369b7defde3d6ad7888f8fc73c2200e19f285ebe7c99f746dff5ebd79b3469826400288b16 *2da2e7bbdad8d8201000a1e172b99e9e9ef463f5d4326523468c403200b4d6ad5bd36f555bbc78 *310201109a0e1d3ad02f77a35e96bd7bf76e151515240340535050a09f1fbc7fff3e9bcd462600 *42a0aeae7ee0c001faa539c4b367cfdab4698364007eb16fdf3e6a1ff9faf5ab91911102011082 *71e3c67df8f0816ea89c9c9c99336772381c2403f08b810307d27bca983163100880a0999999dd *bd7b9777be849f9f9fbebe3e9201f85dbd7af53e7efc48ed29a74e9d42200002252727b77af5ea *e2e262baa1929292faf4e9836400cac562b1ae5dbb46ed2c6fdebc51555545260082636f6f9f98 *9848371469ab356bd6c8cbcb2319803f993973263dbfa853a74e08044040f4f4f4ce9e3dcb7ba3 *2f3838b859b3664806800f0b0b0bfa2d366bd7ae45200082c066b3dddddd737272e886faf8f1a3 *b3b3339201e04f5656f6e5cb97d45ef3f4e953696969640250eb5ab56a45f62fbaa17efcf871f0 *e0410d0d0d240350a1ad5bb7523b4e5e5e9e8989090201a85dcacaca3b77eea45fe246bc7efdba *63c78e4806a0327af6ec493f57e8e2e28240006ad7f0e1c3333232e886cacfcf5fb0600197cb45 *320095a1a1a141ef41972e5d422000b5a851a346fffcf30fef7c892b57aee0d979802ab970e102 *bdcaa59696160201a815d2d2d28b172f2e2828a01beaeddbb743860c413200553269d224fafb5c *7b7b7b0402502b3a77ee1c1d1d4d37546969e9d6ad5b959494900c4095346ddaf4dbb76fd47eb4 *63c70e040250735a5a5abebebebc37fa1e3d7a646565856400aa8acbe5868585d1f38ee4e4e490 *09404db058acc993277ffaf4896ea8ecec6c575757f2cf110e4035787b7b53bb52515151f3e6cd *1108404d5858583c78f080f732eae4c993bababa4806a07a3a76ec483fc7317bf66c0402506d0a *0a0a1b366ca05f2a4ac4c5c5f5e8d103c900549b8a8a4a727232b543ddbc7913372500aaad7fff *fe2929297443151515ad58b142565616c900d4c4f1e3c7a97dead3a74f7a7a7a0804a01a0c0c0c *e8673a28414141c6c6c64806a086468e1c49ef56789403a01a381cce9c3973e8b9b2c4bb77ef46 *8f1e8d64006aced0d0303b3b9bdab30e1e3c884000aacad6d6362222826ea8b2b2321f1f1fbca9 *0da056b0d96cfac5d6f1f1f18a8a8ac804a0f2d4d4d448259162a24beaf9f3e76ddbb6453200b5 *c5cbcb8bdab94a4a4a6c6c6c100840e5393939656565d10d959b9b3b7bf66c0e878364006a4bab *56ade879b34b962c41200095646c6c1c1414c43b5fe2c2850bf5ebd7473200b548414121262686 *dac51e3c7880934080ca9095955db16245515111dd502929290e0e0e4806a0d6edddbb97dacb72 *72721a366c8840002ad4a3478fb8b838baa1be7fffbe7efd7a72ca8764006add800103e87d6dec *d8b10804803f5d5ddd93274ff2dee8bb7fffbe858505920110d01ef7e1c3076a5f3b7dfa340201 *e083cd66bbbabad2cf6e50cfc24f9a34096bb600080efd22d1d4d4543ce201c087959515fd0601 *ea8d6c478e1cd1d4d444320082e3eeee4e3f8ad8b973670402502e2525a5ad5bb7d22b33135151 *519d3a7542320002656e6e5e585848ed74ebd6ad432000e51a3264485a5a1add500505058b162d *92969646320002252323f3e2c50b6abf7bf6ec19763a80df191919050404f0ce97080c0c6cd4a8 *11920110822d5bb650fb5d7e7ebea9a9290201e0c5e572172c5840f60ebaa1d2d3d3870d1b8664 *0084a3478f1e3f7efca0f6be69d3a62110005e1d3b767cfdfa35dd50a5a5a53b76ec5056564632 *00c2a1a1a141ce0ca91df0f2e5cb08048077ef3878f0207d16473c79f2c4dada1ac90008d3b973 *e7e817e26869692110008ab3b3f3c78f1fe986fafaf5ab9b9b1b9bcd463200c23471e244fad18f *3e7dfa201000a259b366c1c1c1bcf325ce9c3953af5e3d240320644d9a34a15f30ba73e74e0402 *202f2fbf66cd9ae2e262baa11212127af5ea856400848fcbe53e7af488da13232323e5e4e49009 *48b83e7dfa242525d10d555454b46ad52aec1a007585ec80f4ced8a2450b0402924c5f5fdfcfcf *8ff746dfeddbb74d4c4c900c405d69dfbe3dbde4cbdcb9731108482c369b3d73e6cc9c9c1cbaa1 *debf7f8fd70400d42d656565fae64650501016760689d5a64d9b67cf9ef12e24bb6fdf3e757575 *240350b78e1e3d4abf80405f5f1f818064b2b3b32b2b2ba34beac58b17eddab5432c00756ec488 *11f48e3974e8500402128bcd66536fe5c8cbcb9b376f1e97cb45260075cec0c0e0cb972f54491d *3a74088180846bd9b2e5850b170c0d0d11050043ce1eefdcb9433f12a2a4a4844c000080393c3d *3da9922a292969dbb62d02010000e6b0b6b6a61fb15fb66c1902010000e69097978f8e8ea64aea *e1c3871c0e079900000073fcf5d75f5449e5e4e4346cd8108100000073383838d013d1c78d1b87 *4000008039747474debf7f4fbf980081000000a35cbd7a952aa9b76fdfaaa9a921100000600e37 *3737aaa4cacacaba74e98240000080399a356b56505040f5d4860d1b1008000030878c8c4c4444 *045552e1e1e1d2d2d2c80400009863d3a64d5449e5e7e79b9a9a22100000608e6eddbafdf8f183 *ea2957575704020000cca1aeae9e96964695d4952b5710080000308a9f9f1f5552595959dadada *0804000098c3d9d9995e7aa26fdfbe0804000098a371e3c6b9b9b95449eddebd1b810000007370 *389cd0d050aaa4222323e5e4e49009000030c78a152ba8922a2e2eb6b2b242200000c01ceddab5 *2b2d2da57a6adebc790804000098435959392929892aa95bb76eb1582c64020000cce1ebeb4b95 *d4e7cf9febd7af8f40000080391c1d1de989e8c3860d43200000c01ce4eae9cb972f54491d3e7c *188100000073b058acdbb76f5325959898a8a4a4844c00008039e6cf9f4f9554494989adad2d02 *010000e668d9b265717131d553cb972f47200000c01cf2f2f2515151544985848470381c640200 *00ccb167cf1eaaa47273731b356a844000008039faf5eb474f441f3f7e3c02010000e6d0d1d1c9 *cacaa24aeaecd9b30804000018252020802aa9b76fdfaaa9a921100000608ee9d3a75325555656 *d6b56b5704020000cc61666656505040f5d4c68d1b110800003087b4b4747878385552e43f90ff *8a4c00008039c805145552e4928a5c5821100000608ece9d3b979595513d357dfa74040200008c *a2a2a272fcf87152520101014803000098c9d1d1515b5b1b390000000000000000000000000000 *000000000000000000000000000000000000000000000000000000000000000000000000000000 *000000000000000000000000000000000000000000000000000000000000000000000000000000 *000000000000000000000000000000000000000000000000000000000000000000000000000000 *000000c371a5a494a4a45a49b1c64871bca5b8e7a5641e49c9e1830f3e82fe844ac91d92925926 *c51d2ec536f96f4f0480df194b49917ada2e251d2225f7424a2e524a011f7cf011f2e7b194dc0d *29d915ff15963a8e4a00ff1fb986b297629f9092413de1830f433e615272aba5b856522c168e50 *80cb2829a9e9529c1034143ef830ecf34a4a2e504a76242eac40b2759062e1320a1f7c987f61a5 *8fa315486a499d9492c171001f7c18fe7989aa0249bddd770225850f3ea253554ba4b8f2387281 *244d9c982ec5c1ed3e7cf011a14fb094ec4029360e5f2021eca5d89838810f3e22f73921256388 *e317e08e1f3ef8e083bb7f007587fbdfc3bcb8e3870f3ea27bf7cf460acf5481987f33b55d4a1a *3b3b3ef888e8e7b994dc74290e0e6520c65a49b1f0cd143ef888f4e780948c128e6520be70d30f *1f7c70eb0f80c9bc71d30f1f7c44ffd6df704c5007f1751e33fdf0c147f4d7fd5b26c595c3e10c *c4d423dcf4c3071fb178904a018733404ffdf2e1aa444a57e5c3551699bd9ead54b55f8d7c04fd *2355f5e7a9ea0f497e656ee53622f97f0a6113d4d5e8e22855f9afaec687fc15e42f6229a2a700 *04d753312ddb26cd5f90b2794b653f9b3625bacf8aaadf44044a4a493b7ee4d894f51b2affdb25 *af5815d7ab5fed1e76fef7c35288b5ed9cb4645915d22eef9334cfb39cfc598a512aba312d6de3 *873b252d5a92b27113bf3f64c3c6a4c54b13264c89edda3bdac83452564d409b20c6ac65e2ecb9 *299b3657617479cc896e6856fdbf54568dfcebb1ddec13264f4d5abea20a7f75353e9b3627aff4 *4e9ce616d7db21ba8979a4ac3a7a0aa0f67b4a592779ddfacc3709efde2655fe9311179538ddfd *e79924934b8aa518d7b577fad3b02afd6a99a9896fcff9453730114849b5ef927afa14f92baaf4 *23fdfe49f53b1bddc482f70f8f52ad17d76740f2c64de921f733e3a33353122afc353353e23313 *62325e47bc0d0c209d15dba947a482662dffcaf29ae44fce4c8eafda2648884e5ab0305246b5ea *0da51edbae3339e97a1b703923f24566626c550776353ee4af207f5146d4cbb41bd792962eff19 *a3bc067a0aa0167b2a5abfc9db0be7abbc6fa6c427af5a5d9d238970eff8258c9d400ec555fded *c8a13ed6ba1d634b8a1c84e3fa0efcdf2b3eb622b9864a5eb92a23e269b5ff70b241d3c31e262d *5b1163d5b616af25a3d4f4de1c3a548d23ff9bbd3e553dda471b9924bab9a7ddbb437e17417713 *9f9f3c3df44192d7a2e8a696e829805aeb2983a66f2ff957a7a7bc45a1a7c64f62444f09aea464 *54c97f4dbd70ae562e1cc8667d7bf962fce0e191326ab5d553a987abd553fbf755a9a762acdba5 *ecdc49ae6beaaaa1fecfcf9f14fbc6f708d9e2e82900f49468f494004b4a2d7ec8f0b4bbb76afe *27f3de0f4c7ff43061cab448452d51e92952526f8e1e15c22dbeaadd3dbe7821b64357f414007a *8ae93d25b892e228c70d1892167c5b1087d98ce74f13a74eaff9ac0021f454b491e9cf2b292695 *145d55e4aa2adad8123d05809e626e4f09aea4a41462db757e7be5522d5e49fd7e5515ef38aa86 *df5509bca7e43512dd676526c532ada4fee717498e4b5ee51da9a48d9e02404f31b1a704595251 *ba4629dbb60bf422e2e79dabc080581b3b26f7546ca71e690f82995952ff33969e85c5f51b849e *02404f31aea7045952e4f78a1fe19411f55208b3d75276ec8cd23264684f296a27af5acdc03b7e *bf66b86b57946a3df414007a8a413d25d09222077f83a6a9c78f0be88edfaf5f5445bd4c98e852 *ed652b04da5331addba73fbcc7e492a22fa962bbf5464f01a0a798d253022e29f25fe3870ccf88 *7e25b4c900a9e7fca21b9a32aea7384a09935c32136398df5399c971490b1757693d2ef414a0a7 *d05382ea294197d4cf9b5d5ac91b370ae762ea7fb6755c54a2eb8cea5d5209b0a794757e4ef313 *620e35eafa9327aa74eb0f3d05e829f494407a4a082545b69771f3b45b37847d98adee425282eb *a9e8c6cdd2aeffc3fc92fa9f11f52038c6b2357a0a003d55973d259492fab9626177fb8c98d7c2 *be22887d9de03cb91a73d405d753b1361d335e868b4a4f65bc8e88b3ef8f9e02404fd5594f09a7 *a4a8df68dcc4cc84e83a7864f5c081aa4e5a13604f91beb61f40dab3468bc7c64767843f26dbba *c24f46f893ccb8a8cc37d5dfb899893164c3a1a700d05375d353422ba9ffd6a0489a3d373339ae *0eee5c8585c4da76624a4f912d3b6a6cb5fb3a23f2c59bfdfb13264f8deddc936ce88a3f9d7a90 *9649d9bd9b5c16557b2a45a2dbcc9fafa9424f017a0a3d25e49e126649513d357f41555f93f13f *07e798d769b76fa6dfbffbf3d2a0ea3f6d66526ca2fb2cf20330a5a7aab565a9924af25a14a569 *50e5ce55d74f749d91f1e259357b6ae62cf414007a4ad83d25e492aa414f65c64526af58156dda *22a679eb448fd9e98f43ab73ebefd0a148655d91eea99f7ff2be7dd528a9ff7d59db9ab5d578b2 *183d05809eaa839e127e49d5a0a7c865d4cf174b517f889c46d29cf9d558138fc412d3d256b47b *2a2e3261e2949a0c2ab2a532a25fa2a700d0534cefa93a29a91af454dacdeb3f5f2e4fafe4d0aa *7d7ae8832a6ff484e884c953ab34eb8f693d95fee4516cc76e35195431e6d6e98f1ea2a700d053 *8ceea9ba2aa99af614cf03502aba297bf654f5e7a796aaabd2bbe919d753355eb931c6b405b938 *454f01a0a798db53755852b5d85324998953aa315f2eedd68de8a616e829f414007a8aa13d55b7 *25558b3df5f3d65fbbf4b0902a6ff798d7f1239cd053e82900f414137baace4baa567b2a4a5dff *cda14355bef547b6fbda7591b26ae829f414007a8a593dc58492aad59e227f54e20c8faacefafb *f9f2c48bfe517a8dd053e82900e6f7d49bdd7b629ab721bbadc03f262da21b984469d48f9456ad *dae1bdb68e660c29a9daeda9ff5e869bf1fc69959f937df12caeb7037a0a3d05c0f49e4a4dcc88 *7c917e3f98ecb382fea4ddbbf3363020f5d8d1a4a5cbe3073a461b1a577655845a3a9ac5da7662 *4449d5764f45e9364cf53b5b9db7292d5818c955414fa1a70098dc5375f50aef8ce8976ffd2f24 *4c9dcefb3490408f663116adde1c3a58f3979bd74249d5764f454aab242d5c4c2e8dabfc9a8f13 *277e5edea2a7d05300e8a93f5dcac547a51e3f16e7303852464da03d15a5df3879c3c6cc146694 *54adf7144b31aedfa08ca82aafae90fe3834b66d27f4147a0a003dc5bfadd21f3d4c749d418e84 *823a9ac969903f3f333e9a292555eb3df5f36d83e66937ae55e32d15ffbde157113d859e02404f *55f8fab99f6b5fabeb0be26816d7bd0ff90f0c2a2901f414e9829f178c555f98e28d8f4fa4a216 *7a0a3d05809eaacc6b1a123de644caa9d7eed12cae47df94addb6a3877a2964b4a103d45221a3d *2e333eaaca7fe09da068532bf4147a0a003d55b9c54543e31d47955307d53e9a853e2097691911 *4f99555282e82972e06d61539d3569635fc78f1c8b9e424f01a0a72afff0698cb9756d1dcd329e *3f2599d4e4624a202525989e8a52adf766dfbeea2c4cb17e43850b53a0a7d05300e829fa6db349 *8b97feba3e46b5df52941c5fbd77c50ab6a404d353e4e099e8363333b1ea0b535cb914a5df183d *859e02404f55fe1b9318cbd6b5f57672269694807aaada0b53bc0c8feb3340d27a2abaa1d9db7f *ae56e33c2ad1c595fcd8e8290049ee29724590e8eef17f96aa107a4f09b6a404d653825b9842fc *7aeae7d30aee1e69b783c81f55f94feaf16331adaaf0f7a2a7003d259e3d959af8e6d0a148659d *baea297241f7f3d163c19594c07a4a700b5388614f918f82664cb396e4cfa9eca7a5edcfc5beaa *f257a0a7003d25963df5f3687cfbe6ff798b9f107b8a5c5c24af5bff73a55c81ae002fa09e12d8 *c214e2d95382ffa0a7003d25ae3d9511fe38d6ae7bddf4544a7ccaa6cd9579f495893d55938529 *a64ee77309899e424f01d4614fa53f7df4f6e285b7feb5f7090c487f1c92991457fd9e7a191ed7 *b36f5dddf74b7f169630c659b0efe412584f557f618a3d7bf8b4337a0a3d0550573df5f3f261fd *869fdf4d2869d7d6274ac728b67d97a4a5cb480356efd9a5baeda99f4b0e86dc176c5509aea748 *56639cabb330c5ed9bd1c6cdd153e8290006f694a0dee72baf9930d125e37544ddf654f58a52e0 *5525b89e925288b1b64d7ff4b0cabf72ccebf8114ee829f4148004f51439b8691abc3970a01a4d *515b3d9599189b1117c9c4ab2a41f614e9946ac4fe7324ac5df7a78529d053e82900b1ec297214 *faf9428dc498baeaa98c6761a97e7f57759eb630aa4a903d45fef0c4191e9949555f98e2a27f94 *5e23f4147a0a40827a8aa5183f6048666c645df5d4cf7568e77aa63f0b63dc775502ed292985d8 *2e3d4986558efdc5b3b8de0ee829f4148044f5545cdf0175d95321f7e3baf44a5ebbae26af9b17 *485509b8a7a2ea354c3df7772d2e4c819e424f01a0a704d4533f9711686b971674bd26aba6d77e *5509b8a7c8cf99b464592d2e4c819e424f01a0a704d753a414c8bf9ef1ea398326ab0bbaa7588a *f1fd876444d7dac214e829f414007a4a803df5dfbb997e5e5f244433a5aa04dd53643c34b1480b *ba519d85295c6744b215d153e82900f494307beae791d6d03865fb8e6a548340aa4af03d1529af *99b269737516a6f0f1f97d610af4147a0a003d25e89efa199171f394ddbb19515542e8a96a2f4c *71f756b499157a0a3d05809e127e4f31a8aa84d053d55e98222e32c1c9193d859e02404fd5494f *31a5aa84d253d55d98222165e3a6485975f4147a0a003d55273dc588aa124a4f45729412dd6666 *265679618ab4c080682353f4d4ff6befcc9f9b28e338fcb64d536c4b29720b22500141051444f1 *1845663806a84711288ea878500ead8020d613414e95431866a4030832a3720b56607400c18e78 *140abb6992e66892a67f87bbad4251699b4df6dd6cf33cf3f9b54db3dbfd3efbbefbeef7c55300 *78ca2a4f59af2a399e12d9ee47c645ab7e8ff9f82b97bc539fc653780a004f59e8298b5525cb53 *6a8f7ea16fbf36f25ff1c10ac5998fa7f0144032782ab86e9d89fdfd261526ada7ac54952c4f29 *8e3cff5b6f1b684ca1f7a4bd65009ec25300d67b4aab24e5e52d5592f8faa57ba7cf6af0ba92d6 *5396a94a9aa744b667c294a87229e65370e5a2b7b0e89aa76eee1ddabd1b4fe12900f99ed24bdf *890a57bfc1a65ca7ce7cffdbef18d85643a6a7ac5195444fb9fa0e0a1f3b6a4031c18d1bd5ee7d *ff5ee23e7858e4e40f780a4f0158e2a9869a2bbe574ab4ca99f08bb4e69e07c215c72ddccfb7ed *d54cb6aa247a4ac9ca0f7cb8c240c7f8a85b09ac59ab0dc7dc631ef52d5a62a0eb149ec25380a7 *12e3a9902ff2e3296fd14c25af87563794b49c78a3fd1267be26a9e0a64dc636d490ef29d9aa92 *e9a9b41c6f6151d475d9c8d7097ab51f8caad50d018f911f6feac284a700f0545399ed5d103e7c *d07875fdf3b7e0962db52fcdf54e79ca3371aaf14c2af4ce78d65ff6ae369232bceb93259e92aa *2a999ed2be57ff21114303db38d3b84a677df37583780a20953da576e913dabb27ce02ab558c06 *b7126fbcaae1addeaf6d2cfbf8444baa992455c9f5949295afdd39c479528c1c8780c7bf64694b *53ca780a20953ca5e474addbba55fe3db319a9af3ce71ef9a055d54c86aa247b4a647b1e1b1ffd *e3826c4fb915eff459ad34cbc55300a9e3294747ffb2e5f2ef99cd48f8e861b5577f0bab99e9aa *92ee29b553cfe0e6cdf16c6a6ce47ee3dce99ae1a3f114009e6ad6fca130aa56db5d527a1fd4f5 *1baeeb836a4535335755d23da5a465ebab29aaff94771e43bebaf21dfae21c3c0580a7ae2df91b *183ab85ff23d73c2a3bf615a343319aa9989aa92efa9c69e12c14f3f33bcb825f6fd4154dfdcf9 *fafa4f3c0580a79a553fdfabf30df47f48a2c1947613be6be7d5d74b2daf6666a9ca0a4fe94fa9 *c64ea83f7f56d2e4eda183ae01435bdfcc114f01a494a7b4ba5a3034b4ff5bfb0ea9a2177ff716 *3f9754d5cc145559e429252bdf57ba48c29d4cd475d9b7b0547f930e4f51ce004ffdf7a5ce678a *a355bfd97230e5f704377ca276ea996cd52cf1aab2ca538d93c375dbb79b7a27a30f8a77ec68de *c6164f01e0a9eb17a877f32f7d2bea516d37e317daf755cd9df72667354bb0aab2bb58e5297d53 *aad10f878f1c324f55911315eeb113dad8a9184f01a4a2a744b6daab7fe0e3d5061ab25928a9f0 *b123d7bddb9b7cd52c91aa7a7e8efee2ad459e52d2f426eae15327cc5055fdf9b3ba885b9df1c3 *5300a9ed295d55bd0b022b5719ebea26bfbb4e68ff379ef1936fb8362c69aa59c25475a152338e *81a57789f154e321d55575607f6297ff45cefc543be75525b353dbff0c3c0590b29ed255d5adaf *af74717de5b9645e561155ab83dbb6d58c7aa8a505ccc954cd12a52a63824898a79a1ada8f1c13 *dcbc255a7339feff9006bf277cf080b768466c8df7f114406a7baa717d57676d9c52b77d7bf4ca *c5863a5f524df469d5297cfc3bdf6ba56a8f7ead57b3e2d946aad9f9b33523ee4f78f14988aa0c *0e582a8ebb7a1724f0bba8ddfbd6be3c575f23ea518cd94a1b0ed7fffa4b60f59a9abb47b5f2b6 *d4ff9ed967671b98a0d6cf6ccb9d2ef014805d3cd5548bbaf6f116cd0c6ef93c72e6a7a85bd16e *7db5da624d021ead28d55fa80cedfbcabff84d7dd544469b1e64b81f1a1bf9f9746c9fe57787f6 *7ca926b4aaff5b553eb7d4a3e755f5f6e31d12bdf9727aaeebb6c1b52fbcacddcf444effa8dfd2 *f8ddfa996af93cfa3d51e552e487ef036bd7e973b6395d0d2eea78645cfdb933b19ed9baf272b5 *673f3c05d06e3cf57772bbb9868cf03e3ddd57b2c05ff66ee0a355b2f3fe87fe454b6a9f7bd13d *e651b5ebad6d34d43fdd0bf33ce3a7f89797b5f5b356acd43ecb3dfa61f34a90abe04eff1b8be5 *1dbd151ff916bcee1a30c4ac6fa40d8572bbbbee18ee9930a576f61cdfc2d21b1e6dedd82e2ff3 *bd52e299fca4ebf6bb94acfcb83e3733cf33716aac67d68c61329e02b0de53cdee9ff527dd4e2b *12e7aec131fdd98e8ea617a24c5b1dbd989c95d1e23f8923afad2bfa6c7a66f114406b549aea29 *428894ecc253d07e29174eae71426c9d2ad1619970a453cea09df29e7070991362774f3d29d014 *b45ba689f40b4cfd1162e71c155903a965d07e1924c44991c5954e887db35e64f2700ada310e21 *3e60ea8f103b4ffa1533e9072930f5f72b537f84d8330798f48314a0b3102b85e332aa22c46ea9 *141d4a4406a3294805868bb4ef794a45880d9f4ce552bf203548136206b37f84d86dc66f18c50b *526ff6af1a551162879c65c60f52925b5015213691d43c91e1a06641aaaaaa4c38cea02a429277 *bacf5982a420b5b949884291be4738195811926cabfbd68bcc6182d7a50074fafc33b0aac25684 *24c1cbbc4dc3a88ed42680eb0756f789b47922e30be16c1216ef581122d34d5a8e8a2c6d0c3553 *a40f6418057063721a85354da4bf271c7b8593106276760ae732e178a2514ff4ee03683b1d1a2f *19428884307a020000000000000000000000000000000000000000000000000000000000000000 *000000000000000000000000000000000000000000000000000000000000b8ca5f29d02e1e656e *6473747265616d0a656e646f626a0a322030206f626a203c3c0a2f466f6e74203c3c202f463139 *203720302052203e3e0a2f584f626a656374203c3c202f496d31203120302052203e3e0a2f5072 *6f63536574205b202f504446202f54657874202f496d61676543205d0a3e3e20656e646f626a0a *31312030206f626a203c3c0a2f4c656e67746820313439202020202020200a2f46696c74657220 *2f466c6174654465636f64650a3e3e0a73747265616d0a78da7d8d310b02310c85f7fe8a37ead0 *985c9bb659053d7013ba89937a4e0afaff078be271e0212110785fbee71e105cdbf6b883dba865 *52ce25a344258ea9443c2f18b077f2060412857228c821114bc6e9e6b83918fd88f82fe327d0ba *bad5560cc2646ca8c38fa99e0f8b6e79ac3bb7a9a34b992958fc5b17b450d2d47a8dca1cc1f0a9 *6bbd21cea59f776df7247c011dcf376e656e6473747265616d0a656e646f626a0a31302030206f *626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203131203020520a2f526573 *6f75726365732039203020520a2f4d65646961426f78205b302030203539352e32373620383431 *2e38395d0a2f506172656e742038203020520a3e3e20656e646f626a0a392030206f626a203c3c *0a2f466f6e74203c3c202f463139203720302052203e3e0a2f50726f63536574205b202f504446 *202f54657874205d0a3e3e20656e646f626a0a31342030206f626a203c3c0a2f4c656e67746820 *313635322020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265 *616d0a78dadd9a4d73db361086effe153c4a07a1f826704cd224d334d3b4b5a797b607daa21576 *24d2a528e7e3d717248105ec081b9f1a2993c9d0b2d678b5efa30596002ffe2d58b171ff5f176d *41dd3f654ba26869cac24845a8d446167d5ddc16bf5db02980155610cb4c510a4d282b8b9bdd05 *7543d0e2354408658856cafd7ce4cd95549ca85214ab6484e757173fbc92bce0928cda57b74145 *73450415c5d5facfc58bae1dea76d82fffbe7a3345334a2cb563342d565a12e3061b03d972c528 *a58b5fabbe6e2f6ffae66e58aeb8a28b9fdaa1efd6879ba1e95a176315330b350fc76c321cd344 *68f709992046c9794c328e2ae83cc8d2fd611c48947641962be5de3cd78bf3e0e2e5154092b224 *ccd9afa4265af0e31c7dcc2a099a383eb0f2f148a397ea0b39ff9540e5c2d7069563ee476e58a1 *042765693d3aeed1bdaaabe130c1abf7cb5549f5b9637b1a44ef050e310621101357f310313980 *88c901446688e5ca43141ee2eb7a189a763357b42bf1096752e6e29c51f98c7154310841957867 *b2a8303940f548eec1c4eba769395e9599d4786ef6bd5a326e1787a1eb9b6aeb7ec54aca17f669 *d32f87e9f708f171684be3c846b173842f0d258c4a1c7e1294871f8246e76c0e3e2a17e0a372a1 *4ea5d6c47fd538ccb59769991eeee6ebf0beced62d75afee9b79696d776ea15fba8f61fe2fefe7 *1470eb2106713e5a91371ed102df112db0dd050babbdef617a7c367bb96f76775b6f76bdbbaed7 *eb7aed5f7dace6b7a4352754038c682d21a7e320e6985512748cc4c391a6c5836659607a0003d3 *031ac21025b9a721038df51a8aa06ae76bd36e9b3657074adad383e253c3a1c420044a62126359 *28981e40c1f4008abba1d0c67a280a3a88b6eeab383b55f3e54d755fa5d3d15f94f2b14eb4e4a7 *b764783f7d7e3899188490499c623c4b06d30332981e90715723c2a2a11f4e5e475787fdb659d7 *fbf7dd0777c3c5f4a92fe9de559f25ce2706217c12bf98ccf2c1f4800fa617f8b8f98e58779df9 *949ecf8bc37ee876cd67281d58d0133a9a9f2c8f9015ca2309caf348fd61d9a51ed50b3c1eeb1d *6bb045c90965734727720df6dbaadd1caa8d27f27b7d5bbb801bf7922925d5828ba7f5da02efb5 *8fa8cc41a39266f614302b43d8579a881883409e63a61a1059c688182046c4a0e2a424826a8f00 *dae8a11aeaddb4ede59b08dfc6bdfc78e77732f64dd7ba778539d9652aa4860389410891c42404 *09a6074c303d802228717fe1a1841efbf2d3eebadbce1c6ebaf6beeef7d346a0b4fc2c371fbcb7 *3e579c520c422825aef1ec6285ea01254c8f0945dccc58b87e80286b03a569fe92d3e4b4affbfb *70e3f373fde94337d5ccda958bb2e5c982f0e9e0206210022231060181e901084c0fca85ba5e41 *2a0f22dc04bd6d06d76ffb7ab9afb68771f7555bf5fd6cb47ab77df638b71884704b7ce4d99d56 *540fb8617aa180b831c45816b84101fd72d85dbbe57d02b79d294eeb903d2b2e213b944b1294e7 *92fa94e782ea052ea81e702915a1a2042edc73b91c7a68c12317559a732c9b90248e2706217812 *bb103c981ee0c1f4008f668419017884c7f3acefab4f8fe9686ecf928ecf11a71383103a895b08 *1d4c0fe8607a40479644700b74a4a7f3eefa9ffa66788c470a7696787c92389e1884e049ece23a *8b07d3033c981ee0110e4a09bdc2b43b37376d9bc3b6ea8fdde57c5152fadb7aef33c0bd8f4188 *f78917bccc7a8fe981f7981e78cf2cd13caef7da7bffa053db4f773953699c594df8ec702e3108 *e192f88470c1f4800ba617fa674e15297558efc37ef51f4b775f59f54d75bdada71bfdf23b7f6e *c19befcdc031c6200463622bcf9e86a37a8011d30b189965c4b2d01784cded5787d63f3034ed1b *54dbede33d9d5d3dbcefd60fde9f76fabe3d8b9011ca2209cab348bdc9b340f5020b540f589486 *5015ba80b091fdee6e3c01eafacc5e9ab1e559954a4812c71383103c895d3cbbaf8dea011e4c0f *f0687757434317603c9ee7dddaf7cfb75dbf1b9fd53ae3dd82afa0f306e0e86210822eb5327be2 *8dea013a4c0fd0294a840a4d843d3acbfd588fa7a86de37f63e53993f2f9e2a46210422a752e7b *0c8eea01294c0f48094da40d6d05a36e821b0f5bdd6cb7f14fda68feddd697cf1da71683106aa9 *8b796a981e50c3f4801ae744cbd045303653bb6cda4d78b0673e9edb1c668653cf9e1c1749ce4e *168a4f0d8712831028a949d9e71630bdf0b4fa8abb9bd6e36746fe107665950393f940bca444b9 *201f331fd4663e4e1c2748fd07ab7d9dcc656e6473747265616d0a656e646f626a0a3133203020 *6f626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203134203020520a2f5265 *736f7572636573203132203020520a2f4d65646961426f78205b302030203539352e3237362038 *34312e38395d0a2f506172656e742038203020520a3e3e20656e646f626a0a31322030206f626a *203c3c0a2f466f6e74203c3c202f46343220313720302052202f463139203720302052203e3e0a *2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a3230203020 *6f626a203c3c0a2f4c656e67746820373133202020202020200a2f46696c746572202f466c6174 *654465636f64650a3e3e0a73747265616d0a78dad5d7cb6e9b401406e0bd9f6276850593b95f96 *ade55caa26bd18b5aaaa4aa536712d39906222b56fdfc13003b1c349d44d6245912df28bdf73be *0c86c96f44d1cafd9ea10211f723adc69268a391111213a18c40558eaed1c709dd0528a28262cd *0dd25c6142355adc4c883b0741672192f84c3208bd492727a7d4224ab02516a5d707674a97df22 *117f4fdf9e9c0a31c8316bb010d69dba494cdf5fa5b3ab74de0427b334944a4230b702fc5c3ef3 *c8e7920653c2902612336976ad1c531627869068be2e569b3c4e98245156c5d444abbb9bbca8db *23f99fdbddb17cbb5d97459c0849231c37c5cff7b23728612c16ced52fefa141f94c32081d0e6a *ff4cbb41b15118a0af8781fa3c8cb2ee1fa739d4c2f016665a16cb75eda69e6d5a8b799dd57943 *b37501269fdde1492a7e6da0ca2034ae726f4a7c4c05ea0b2a605f50d1ee557914d1a27c8e2d73 *db649dfdf47b66992f365995d5bbed61847a612c4f436a970a1b850c403418d9b8d078590f0494 *051f25b0a2d403c916e8a2ce3d46a3b3288b6d5dc526ba5b34db4650f6a27d1e61ea560c3bf521 *006a383b312a05f4f554505fb0921413c5bc956aadd25fdd1efa317d3d9fbd6adf6ffd552e4eb4 *66c7e5d3ad12f6e94380cf705e6ad407e8eb7da0bee0c3dd7d120d3e7adfe7cb457a7ee8a3283f *2e9f6e95b04f1f027c86f31af701fa7a1fa82ff8308eade2dec7ecfba49f62aea3af0f6c212e8e *f24ad7ad1796ea4380d470727a540ae8eba5a0be20e50e092abc94dd933a4f2fdfb5efcef2a2f9 *a62aab26618f4ba75b23acd387009de1b4c67580be5e07eaf33ad22a6c94ec741869752eb3c5ee *21a7dc94abbfee26819b63b849f87f3f3f05d06f101af7bb374f33e607f5053fb02ff8198e79b8 *2967746f777d681f60f362bea8d6b7dd23ecb4bcb95d6ff2aa7978d52f5da65b1f2cd3870099e1 *a4eca80cd0c7ddcc95544db1c1843f78716c33d2bd1ffcf11f069f8430656e6473747265616d0a *656e646f626a0a31392030206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e74 *73203230203020520a2f5265736f7572636573203138203020520a2f4d65646961426f78205b30 *2030203539352e323736203834312e38395d0a2f506172656e742038203020520a3e3e20656e64 *6f626a0a31382030206f626a203c3c0a2f466f6e74203c3c202f463139203720302052202f4634 *3420323320302052203e3e0a2f50726f63536574205b202f504446202f54657874205d0a3e3e20 *656e646f626a0a32362030206f626a203c3c0a2f4c656e67746820313432342020202020200a2f *46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78dacd185d8fdb36ec *3dbfc26ff36117cdb22d7f6c4fddd0762b5aeca3f7d61698122b89aeb69546cea5b761ff7da428 *7fa471500cd8c3a14845f14b24459ad42d3e053cd8c2ef65d00611fc1365ce4494177950a48245 *6956a4c141059be0f705770c3c281356f222c8938c453c0fd6cd22021551f072e04844c1322100 *9e212e5311339127c172a2e1c7bbc5772fd238882396654970b7e94fc9928889a40ceeaa77e14f *3bb9efd4e166198b28e4371fee5e914ccad05e90894079c90a9e3af6dfe441b56fd707bdef48e4 *97b63b98eab8eeb46907699eb224cdbcb4c84155e2a439e3374b3e2fc6cb8047ac8c4a2f160b96 *801ffed01b5e84e3c1499c85dad22a69b1bad9d70ae13cac65bb3dcaad224ab7935ea436e6e3b9 *546d7a92fee8855f6bbbbf25e4eae8a972dd1d655d3f0e2783c568234f9848298eafe4831ccc4b *8a50b7b89661a5edf6a86f78681523ccb35e19e73cbcf5dcbd94259e2fb5a966a5aa4a5553dd85 *73029877c67a36b49dcd1877b743c571918727399c8bdbe939b8dfbb409bed41365e602d5b0256 *0a5708b4924dadacc568205eb79d02fe0e8da33dad921634c91fad5633a6c9fdbed66b897980f1 *890518eb2f6e624c83198ac4ca28db7ee3af65271f14a13b4318ca136b0edd395e7a69bd41868d *f2f9e4f5d8c7b6939f6fe7ac6b31e4e0f5d98514225c9b4a11c505080125ad762902f04a11db56 *b5cac706d127dded8c4baac259afdb2dc11d248821f0cc052499a95dc299b5360d45cd051dcac9 *7607a70b617f261696db1b5fdc7fbef8f58f37cf6ef234bcfb8630eaf3de9f6681db52e6f08c95 *4976168567a8292b815f5291c519a52a224f60e98ec0c6903a6280baf3729216f4ddba8822f944 *cc151ceba8eeda11d898ba36277227a39c76862d672c3bf7006fd3d7509cd39d17703f754d084a *06344c1130f35dc9c3f7719c607c758d3907d10244ca48c0a7663e2759f492cb993c3ad7068e25 *49d81d646b37e6e02a0df72e00497ae11412b55f2f0e2622ba86a2d2b3a94f47fd206bc8f05b42 *ec8e8d6ce72c2375b2922b77b117594138edd7b10c5cb22c9edf0d2d8847058b4aec53d06462ee *ba14cbb04fc1ff63a782d3e1f02243faa7c5bb0f515041377b05bf7bf89d16c805ad4c8042ce4a *c8776c948bb78bb15512755072d10a39b4910c9ad0726209b5c2322859499d109a10585b0ed662 *28de4722bab757fd4ac19e2cfb8a5ff9ffe157fe15bf464b2efd4a0413d9606cef56a53647b842 *01dfc08d312b482207234912b802985ff51d068688f3a7e0fb68c9a5ef298c3ef1606ceffb4175 *c7433b3afc2d8153bfa7bf996904181907cd50492c11996fa9be5c7cad1ceb6ef802df4395d8c9 *8ca4edf7d7221b17292bcaf409447662c9d56ae9793000905034bd4db2cae5d3ed34a1004cc3bf *af7a9fc7f0492f9f82f7a325d76aaa67715fcd494ef944f269b5fae1aab3192454f124ae7ab4e4 *fa557b1ef4f69fb99a4860982ff8594dbcf4cdc40d933174de611c80dd4e5a02564ab5046df543 *0fba0686ebceb3ebb682eed58f3180a0c10100f300e30df674dc8ced4bd7ba7bf41c9b51d965c7 *9bcc64e72d8df638d9b1f9970ce4419ac7fe2513fb97cc0bf0f77850f6bfbf62629184f6b8dfc3 *006569476e893e0c488710a80622d173b82800f0c5ec46c84abd8fa2b825d720d28f841eb43d5f *cf8d00cde03f2fa330ce6202e0e8b6229b2b46281ae61df1b15999dad266b867dcac4d0b17e4c2 *8b5bbc5887968daad7d2aa5bda8fdfc8399368c095ad8b92f0033a0e8a22ed1f3380d695921ec2 *0716819dfce8920ac00d3d201a927baddb7bc2535c04ccb59d69b521f21b488bbf9457f25ae94e *9ab9a7d4cf6a486a31f1dc6d68d9a8533f48b971d9fa317c43ab7f10893e8604bbfc9fc9c616c2 *d6e725c6152ffba299f8677d29580c0fedb9d2f71ccb91c515fe59b6c679c4c4a8069d155f9ed4 *ff99e1f2a87f0170da31a4656e6473747265616d0a656e646f626a0a32352030206f626a203c3c *0a2f54797065202f506167650a2f436f6e74656e7473203236203020520a2f5265736f75726365 *73203234203020520a2f4d65646961426f78205b302030203539352e323736203834312e38395d *0a2f506172656e742038203020520a3e3e20656e646f626a0a32342030206f626a203c3c0a2f46 *6f6e74203c3c202f46343220313720302052202f463139203720302052202f4634392032392030 *2052203e3e0a2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a *0a33322030206f626a203c3c0a2f4c656e67746820313932352020202020200a2f46696c746572 *202f466c6174654465636f64650a3e3e0a73747265616d0a78daed5a6d73d34610feee5fa1c917 *9cc6beea4e777a0985810281302dd0e07ea2cc4491e544a92d19494e084cff7b776f4f2f7e91d3 *763a451f3a8ce3bddd47e7bd477b7bbb12834f16b72ee1f3d24a2d1bfea9c063caf67ccff2a562 *b6747d69e5b135b37e19700de016979c798e6f798ecb6cee59d16260c31cb6f5b2868c2bccb805 *fa7132f8fe840716b7596007d664b635d364fa61e81e7e9cbcfefe44ca364e4826c0255b239ebd *7afa6ef2e2ec702c943de4ec70ac6c7bf8ee3010c3a7672fdebc7f7676fa6e42c6d33793b3b7cf *7f7d36397dfb06a71dbc98d42ec245cc09e4de55385232e90b106ce6a94063988b28f8dbe06c00 *30e5bb68ff34f8f0d1b6a630d76bf85cc3e7768028c19402ea380b94d2840ede0f1a4ac95a4fb2 *4da7f299741da0d3564c28bfa6530656c002b0204b9e6081b02a0852f59badeceb625c66e3a2cc *93f412b8126af860966517e1211fe660e787638703578f1e93f1401bf3834dbeb8522ce0c27203 *8739b6d3032e5a9e74715141f673316e93215cd0b6c9f8711f193e678ef4ef21c3fb37c8f0ee21 *a3f1a4930c03b98f8c3190f1646ce8e0cadba0e36979d6cd871bc0a672fac047e349271f06721f *1f4ff60647b9273a94c7a4d38be8683ce964c340f6b0f15d98e7e11db0b12b6d3c455b37157098 *48bf1781d178d2498581eca3621196570ca898cdb3cc04876ac7c6cf68d7c6033ad0d60e3ee08e *711fdc129c49dbd5bf745a02a5420cc37991a1e40c8bd57299e56561f4d3695226591ace699c94 *711ea282c05196828787fe701595c58820f921f787f13c896fb4e7082baf62b22db531bbccc3c5 *22ced147bc0b1c180446d09f6c06f11e28ba42047278b1d2974ce3940c04909523f80b5a7d03d3 *6949874bc108753ecb40edc9e103320235cb824c516866bc88e9fb364fca927e460e57453d35ba *b2ed68b42aca6c11e67774e89f3f7ffb80a4e22e2dc3cfac2b2695e731ee7a3d38c95a9e74c564 *056962b273592e9cfff0fdedb75acb93ed65f97032fbb5b3d5b2a619ed1f94f193d0d06eb4491a *cd6894e0b6d35baf8b09e54025e4f58189c6932d26841d30e534ded677b8597398c766cdb0a55a *8bdf89c0d32adf60682f4b50843b762fe2a5f164074b52db2a4cc5127e1e3f32cba52f6edfbb64 *0127bfec4560349e6c6f11285e7dc96b6fab2587f3382f9b5b7f644e1cb3faa430e3354e0e9ae0 *48a7245fefc45fb743662f87dc83ea897fbbec49f6b1b9bc07491cfa2ee9b87b93b881e09d7c48 *7c47d96299cc637313caac8b6e09c1207dfeed42f6efd0fd5fec1c208329b197ee0a8274ebeaa3 *da323761beb63b4cfeb0476b3be3513ba17e483e3e5cbbe6872ad93cdc35d5d151b27b323d5393 *bbbf76de6f684e94c7fb4074e349d7295e4190689d9d90e48e8474b446d7d17a7a4a81ebbde9e9 *a895a51e767207ad8ccbdd3e70d778d219a40682dcfdf1175b85772155f6e9fb284f9625f6a536 *d4c9984550a28a1d849f92628912379d403885d21c4af01199c3f93cbba5e21a467a87a0d0c2ea *f1228ca857d0a53c4c765a56d763a7821264b1b8d8519adf26e515d6e2d8ada0738a0fb3db9434 *f5b4348cd39b84c6e9224ecb11a15b2e02e62a2bca8d8b0b1a8778aae105dbd48095d2ea66db90 *c59f133d9fc7b5a3d9ca0c92143a9a594ced5e6545c9065aa22bd265c0b22693d1f86495a36691 *d1ef8f48bbed0e28f59d6a39a4b43fc410178621ee5467434eea365f602cee8a325e8cc8d6a209 *4c7427516d268a6f7433059a197969e6d78d53f285bac8dd1da0e3faa66704e1324e9b9ed3f56a *c0ebf026a40532529ca00728c49fc3c5728e6cac4d74ce8f1ed014edb6956cb8e3f5375e38dee1 *1686473ca516af6a0e410ce96b4700b442f8b82b6738d267aeeac3038a96275d39a382d45d533c *bb2e708da67be247cd5907c1b0d857c7398ecbdca00f5d70cb93ae83a682e0c2cf5bc5ef085769 *d6de2e5c377329340faeac72a9eac8a58143fbc93c9da89f7f44263152fc23ac7a02d2c4bfd15f *5cc75169ae4f0c38a421e6e43bd2dce2c334ce753aae1f746cc7fbeff1dd2d651513f4e4f1e50a *3742d1f9784340f51338bc0737b6e54957445790fb1f6f08a83502cfedc3b21a4fbae2b58254cb *8a72089f9802f5789665cd83e4ce27a7027ece167d28045b9e6cb7e74231219cda5b5cf0f1c53c *340b04e9e0be86524897d9aefb7f8753f3ed4806e961efb631907fd0500a2118ff968d73dffa77 *01e784d84bb60620d55f89dc7a031fb7f6f1a88b701ef84cc83eacb4e54957e2aa20b8da7a1b1f *b77633897ffcd3439607d070402ea4570a18ada809e9ebd5e4e79f483205675615daa8fb954a3e *14f5d18c42112e2a493ff337d3151bb0739c79bc5d7abf7cf1065f19f86ab80ca3dfc34b3cf07d *49c73b284ff230fd3222f9348dd888cc49492a7a7d0182f136a6d15a5100f0eafd11dae2cf4bb3 *f0028a093ac3374efdc91516c2c2719b62c4f14c698f4a1a47f358ff3a68b06bb9acaa735468f7 *014374128434db350f18a36caabb16b02750934303584fb3a3b1cb13f3c6877ba6428209a12c4f *b255415a6ac9408873aabdf5dfb179ef949a4b6a5600d86e2f708c1e118a2cf3f91d1966d90a26 *dff64aaf0f0aa4763fb2b91bf57f39818087f3cabc8fdcd8278ec2e25a81dc32fe09db15e12865 *6e6473747265616d0a656e646f626a0a33312030206f626a203c3c0a2f54797065202f50616765 *0a2f436f6e74656e7473203332203020520a2f5265736f7572636573203330203020520a2f4d65 *646961426f78205b302030203539352e323736203834312e38395d0a2f506172656e7420382030 *20520a3e3e20656e646f626a0a33302030206f626a203c3c0a2f466f6e74203c3c202f46313920 *3720302052202f46343420323320302052202f46343920323920302052203e3e0a2f50726f6353 *6574205b202f504446202f54657874205d0a3e3e20656e646f626a0a33352030206f626a203c3c *0a2f4c656e67746820313735362020202020200a2f46696c746572202f466c6174654465636f64 *650a3e3e0a73747265616d0a78daed5a5d6fdb36147df7afd00c0c70d28821455212dd34c03e9a *6e45076c8b873db47d502c39566b4bae243bc986fdf75d7e594a6c3a2830b41a10048a28f28a3a *e75c92f792c9e09347bc6bb85e798587e1878b08711cc59117338e300b63e6559937f37e1b1065 *403c419120b117d110611279d3e5004317d87bb5b5f08d89dfb1f97e3238bd60cc2318092cbcc9 *ec613f93f4ed88a0001df911c7a38b97df1d456c34f9e3f7979747ef27af4f2f88e8bc4b394501 *7c4bbe14c9f6c1cbc9f6f38c078847f42042ca18627100058c222e940d0aa515fc6eed3018201e *87b2fdd3e0ed7beca5d0d76bb83ec075339056f0314e3c4290e05c6935b81cb46ae9d66d273b40 *08900a1900893047018f5bad84279008a9a44b02f085109eb591b4df618e3fd40fb9131c8325f1 *42509762da035e1d24bbbc28473cdc82b5b4d26cb62e8e7c1ef05192a67e9a6ff4836c2b926526 *9fd8685e65335dbfc88b8f7e93dd3660409c8ac40451163fa248f45f28123da2488b6457110663 *36d882dd2a524ed7cbac68d04d9537999362281015b40f145b24bb14394c73dea2b51ce7cd72d1 *fa595ee3ade7c779aa0be0fe2332ca0e3a9a4788d15e38ba45b2ab421ca1188ad646aa309cccb3 *7644eb525e8f7561e8e40b0b358b7be1f516899bafb1b15e577e4e8c97db292d4bcac9ed0407bf *db39beef72ca430179107dbd9550b7fbe6f51e2cc80181f0181c0c34d6467ae9b9f6c1b45caef2 *4556eba7a674ea8d050a49f4f586e3e7e8fd2566854ca9c2f0b0ded646ea0db16fdae4651b007f *cc3736f29db4a1efa49d1a131bfa54cddf2ecff098a308477d90a445e2ca09ac8954e47ef4935a *0ccf4c6860a33c7df18e50361c6af6cfb67122bb57315446e78756d8b3a45d7b749fb0e438975d *c8302173243d98d01d243b6a0622402cda82956a3e6b59ee53c84d38242812611f08b7489c848d *4987b09d29f7499f9d26e767a729783adf9c0fe52c7aee14800914b35e78bc45e25e528c8d54e0 *9f3d5b289f124462b95e7244b056ea675874024147657544e2519a55fa11167b759f279b4c9712 *7d9331619135a6f226bb32adabd5229f267a119315b30aa6e34d597d34ed9b245f24570bf35e6e *acdee4f5ea44229552129001684954bf260a4e565c4eab7c05fea3448c92450da86880472bd55a *6ef2540627d5a61beaec76e55f257596eaeafaae68925bdd36038aaaf287cb4b5df30ee300c21b *d2d593f9ba3eb9d71b70f5f780b3fc99e5cf1ef2676c34cb92665de5c5b56eff69f2cb9b135d54 *9f57ef14a9b67d0dea58a2b2c12e7eb57e9c26c51e14570081083cbace8aac4a1ac9583eae6bf5 *4d5994e2ea9296e1443f248b4579b3356ae6a61fa3e935f86d2947816a2c6da7d9c32e97c954bf *5077b171054d0d9e381ecd926923450f62312ad78dae541f9405ede1745da44931cda52365ad16 *055ed003ed366fb64de54cdfff3c12c148090f0f9a1ad2ef5ce8af41b7b789cb75d20b5c539377 *2b9f7e4af44dbb080a79014b88692bca34b3b5f7aca56f75c93a6eec5a4f1864a62c8a7ab09e74 *9038d7136bd3ddaef9755365b023534be971dd80bf924aaea53e7878b56e8e9dd4657e19043d48 *453a485ca98835b9b751751183ec97877dc8b13a48f69c3260888e5bb096d8f810332a5354d207 *977590b8ce4fac49cb2c4b5227334835611bde07662d12e7b189b5b1d4a675dd9e9a1c9b8df455 *59a9e8ad521cb2bad5a9725d2eec39cad522997e1c1eda37539932e23e643b1d24bbaa441162d2 *e1c6667b60966fd0d50257d74690595934fe2c59e68b3badc5b0ceaa7c7658019943b23e24bc1d *246e058c4df76065988c21eae69bcc6c8ee0795e969bac923b9b76c7389e968bd28e163d324c43 *9dff65f64bc300e36f879f7bf84221098d04793a0cd87a924628a6e1c1486b6d3a872f37f37c3a *d7c55555a6eb69e63cf9a7d04b1c3f49de4a0e299f081e91dcd848c9cf64143c3f9311e3fcac6e *ee16660634772b79f4fc62284f214f61d91d9e3b7d8001741f12bb16889bba3651ccbff17d17a5 *406084491fce2f3b489ca4ac8d6475fcc8b15810c13decc1406d81b8123663a1767c2ac28f4d6c *e73bb11d86aaf320230843d8f2f7616e7690b87d696cb607197b297186087f5af4b6c2b20011f1 *88b0c6461db1decf97dc93856214d03efcbdbc83c4395d8c893a556f13c0b14afddcb383c42888 *591f28b648dc4e34368767070e110dc4d3f4b0ca12c1108d0e2b6b6da4b2368f3eb109f423d384 *c4016244f481698bc4354dac8924aa76026315419c13844418b190f5815c8bc449ce9848727237 *3396fb1837351e238ee31eccfd0e12f708353607e7be3c11e19cfe3ffefefd45060d65888b4794 *35365259df77e6f92408a0cf3efceb4507899b94b151a9fea9dad9ec3033ff9427380415baef93 *14c65c085071b7f15f2afb927f656e6473747265616d0a656e646f626a0a33342030206f626a20 *3c3c0a2f54797065202f506167650a2f436f6e74656e7473203335203020520a2f5265736f7572 *636573203333203020520a2f4d65646961426f78205b302030203539352e323736203834312e38 *395d0a2f506172656e74203336203020520a3e3e20656e646f626a0a33332030206f626a203c3c *0a2f466f6e74203c3c202f46343420323320302052202f463139203720302052202f4634392032 *3920302052203e3e0a2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e64 *6f626a0a33392030206f626a203c3c0a2f4c656e67746820313037392020202020200a2f46696c *746572202f466c6174654465636f64650a3e3e0a73747265616d0a78dacd575b53e336147ecfaf *f0db3a338d22c9962f4c67a72c0b2cdb2e50701f3acb3e28b192787164afadc0e4dff7e862e312 *4cfbd099328cb174cee7a3a3ef5ca44c7e78c45bc373ee490fc31f4b63c4709cc45e123284c328 *09bd46782beff7093100e29190a03848bc38881026b1b7dc4e30d8c0de790f997598d900f4219b *cccf48ea118c529c7ad9eac052967ff593e9b7ecf3fc2c0c87381a220a2e618338f9747c9d9dde *4c6794619fa0e98c61ec5f4f53ea1fdf9c5ede9edc5c5c6756797199dd5c7dfce324bbb8bad466 *27a759ef227c8482347c75174118a230a130c02866a9c1a048a3e0ff130e0300b124d2fa1f93af *dfb09783adcff07c87e771a251143106d411943266089ddc4e9e28b5dadec8219d2c416114009d *9821ca929ece30f552948246b314539452af8368aa7e9e6f04cfdf3fdf3b610ca5847a511aa000 *076f605f034fc6f6d541dcbed4b67cef52854222a1208c3478161044121d3b8620753598a0603a *233a1fce8552855cdbe4b8e68d90b7cba6a895b5f3b7d484bd538602121913809d92c4eff1c6c0 *924b3b5808fbae168a1752e476b6329f545b3b531b07faf0eba54bdd76b778104d5b54ce8c5da2 *aeda4255cddecab81a8d1d4e100da2b710bb274f0e6307414b42d27babc96c1fe4d17cbeb8970d *9242cd55b393f7f3c594f82099b7cd72febd7d2120334611c1d48485e170242c61e2e79568f528 *f665d589442d646ec7866d5072b9b7829a370e56adacca8508246a53edd61b64277fea1653ed2c *c606df2cf72867da5f4d3901ba60fbdab7b2e22e115ac9eb7653a9d665c9aacfbfc39ce2ea59ba *3c8a45cdd7622c0b1834691ad3379005034f46b3a0c3687e364ad5c334a87539b690056315f952 *02548d6569d7f665cddb7c352b64ab7859a231dac214ba836da3afd016ff17b4c5afd336f0e490 *b624411121bdb77ac77798e1e1168fdc1b4e411afaef2c8b864240929768a4601f2ad1d2c88cd1 *e395129a499c9a74d6a96bf90481cd44185c436c383452d7a7244c6ff574090397c0806aab9dd1 *2fc5b2cac54f4e289c76573f337a7cfbf14c8ff4075235bc3495342391f571504f76d575d12ad3 *1b63ea2fcc1b9cca9db720e3f6d5eeb765017ec97b3b57957ddf511ad45ddd599a10b009e21059 *63d946488bddb5c20e9c8fa0eccc98da3e2cf96715ad2d9261db20b1bfe57b2b7de452d991310a *2a91179dc4b00303b73228ef30a6a5187e903846b6d583b098fe33dbee845cee5f70b23b6dfa0e *735c96626dcfaa56340f4efa29fbf2dbf9e9a53bcaf8b2280bb59f1242fcf1a2828b479cb237d0 *8b069e8c1795c30c8beaa8aa5a5d48cc7f67a63ace3348a3aab6d2a37f515e618492f89f8e29dd *d8b93b0f1e9b4229d15d25dcb9ff85cb9d28edf80a4299f34d895c64c4c8f5c32ec2979bee0632 *7e7908588402b825fdfffd6fe0c9e8b1d16134975b43cc2fddb171b041f38b026cc04193042f2d *1dc0ca11b88c87cabf00d8800e9b656e6473747265616d0a656e646f626a0a33382030206f626a *203c3c0a2f54797065202f506167650a2f436f6e74656e7473203339203020520a2f5265736f75 *72636573203337203020520a2f4d65646961426f78205b302030203539352e323736203834312e *38395d0a2f506172656e74203336203020520a3e3e20656e646f626a0a33372030206f626a203c *3c0a2f466f6e74203c3c202f463139203720302052202f46343420323320302052202f46343920 *323920302052202f46343220313720302052203e3e0a2f50726f63536574205b202f504446202f *54657874205d0a3e3e20656e646f626a0a34322030206f626a203c3c0a2f4c656e677468203132 *35362020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d *0a78daed18cb6edb38f0eeafd06d6520e2f2214a62f6d47db448b0872e62600f6d0fb2455b6a65 *5195e478f3f73be450b663c74e0b146d1658048aa87971de1c7af23960c10a9e37411350f8932a *2592a6591a64b124344eb238e874b00cfe9a3047c00225886259908a845096068bf58482081abc *d951089991444a583f818c62c9894c45101d48f87536f9f975cc034e49928860b61c7749042552 *a86056bc0b7f2bf376d0dd34e292867cfa61768b3c31b1fa020f05e18a642c76e46ff34e37778b *ae6a0764994d1957e166305d95d73b76161311279e5da6204b38764ed8346296ef4b043115304a *14555e109744806956d0acac7ae06349b8d819c0643802737cf5a5e9065c56cdd04d59169a62b3 *803d1e907e18f7733483c137e8664947fd08426f06e4294dab979bba7e40f0b6aa9dba56412688 *8cd1afabea5ea3610f66838bbcc17755e81c57a5d9e2e26847042e4686b997b4e975e145788c97 *f367d5b7b8daeab9c7b46d5d2df2a1320d793a2c4212a6c6b0701f963b3d0c55b3f2fb79a143a9 *776a3e565137f755679ab56e86674376033a0b9181341b2521d4cefb5788d86a043b8f3a0818ec *294b8d90b710d07c5e7bf0abbad62b0c6bafbb7b3dca99bbafcef34e5968708944a7c142f1b138 *c807fbe59c29e2f8b1331deaefa9e2a167422d81ccee54faf5abbbdf5f23ba7fe807bdf6f20dbe *6b93174837374389306b4cf454263d3630559048052e4e1355a45978e3a9fa7eb3f61c2e07eda2 *cc51480629d40f396c591cc92cccb6b1ea01e2549753877395202f57e95e9fdee9737584fed4b8 *7c0710263e805cc9c11b5cc8c0fbad87965ef20212ab73e5095094bdaafa01caf74037e9545b1a *dfc49ce7213a2eed277fcc764d92d18c50059d14fa191789eba324b19d14feef7ba92d0d223387 *ff3c79f7810605f4db5b783ec2b39d582a68b6120432a26077dbca2777937d3347ec4ec849b366 *502209946374a009366b1528a2b057433982b66aa7adb5f13d9534ef8be5b531504292cbf027f7 *69e31519f0608bd0ebdc4507c8d959278894f08cfd3827203ef2ec97d548bf851ae933b1b0ad8a *3f130b4f6363f10bba9a10828bda0c3e266689ef8559b7556ddb90e471683643bb19f64ce7e202 *192d52f6e31cf2e2e2421989d93371f1345f5523ad3dccb0515d2a149e291227ff8d3af91e3d8b *a776989517e331d27ca33a391a2b22c108cbac6b1849f9380fc28901e3ccc109cee00cc051c2c2 *e71edfd6f9c29e79766da7284b55598d2c008e3e4f952f3ee52b7de5a594d5a244c4d68b794f29 *effa013ff050b594f638b390425b82469f2d730ed35712bf84fa3ad0e47c3c3dcd585f855e7a0f *f95afad847e878a82f9cde9f349a0b92a89760f34e915393c154998caa8e065fbb19cf990ad9ba *364d54bb91db41c0e6460f24f7139177885f584c39ac6bb2d28dee72f0916d36171b0e98970af9 *ff0930468b290517c88b09ea49c670554d74293f47ef5fec2bd9beafd8a9b2d1ff8cd73248001c *69e10366e8ce768f47d7a4830b88fd34cd11bec55b29ac324ae9d91ec1e0e2ac987a013dff4093 *f321f034630c9c67c6a3d68c4b6bf017b91fdbfa78cde2890cfdddc27e2421de24008ac0bc7840 *b8bb4f00d8579b6745cf037ad7b62df436bfcff1e214e9c65e2a0b2482f0b5903a3d526d7a7b1f *3ebd0a9ddcbd8ea2e87f6b5112c66cf1a47b3d45b42771ce7de4149e5222f762ecc6ea78a7f1b7 *9fd3adfe0544655524656e6473747265616d0a656e646f626a0a34312030206f626a203c3c0a2f *54797065202f506167650a2f436f6e74656e7473203432203020520a2f5265736f757263657320 *3430203020520a2f4d65646961426f78205b302030203539352e323736203834312e38395d0a2f *506172656e74203336203020520a3e3e20656e646f626a0a34302030206f626a203c3c0a2f466f *6e74203c3c202f46343220313720302052202f463139203720302052202f463439203239203020 *52203e3e0a2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a *34362030206f626a203c3c0a2f4c656e67746820313838392020202020200a2f46696c74657220 *2f466c6174654465636f64650a3e3e0a73747265616d0a78dacd596d8fdb3612feee5f216c3fc4 *0b445c927aa58b7ed8b649b341efba97b8e887a6c0692d7aa546961c498e9b7f7f331ceac52bdb *49ef8aab11381a0e47b3cf3c1c8e86d2ec83239c47f8fde0940e877f818a58c0a33872623f60dc *0f63dfa9b5b376fe3513c64038c2172cf26227f242c645e4ac36330e3eb8f3436fe27636eec8e8 *dbe5ece6a5508ee04c71e52cd7134fcbf4d7b9e0d7bf2d5fdfbcf4fdb16110b058816bb4f8eed5 *edfdf2c59b6b57067c2ed9b51b703ebfbf56727efbe6c53fdf7ef7e6ee7e4993cb9f97d7229eff *f4e6eef647f43a7bb1ec21c24dcc53fed9283a9b4914be04ecccf3c3832878c064101b8c9279d7 *ae400cb704a5c937db4293ac370f3a4d756a477f2466ca447d400f77c08085b1342e9719dcee49 *3e7fc7b9ac9b960669b5da6d7469477b6bb2cf8b82a4475dea3a69ad3e6fe89ad0a50385f2abe5 *3f7e3c74f9dcfacaf25586e8108ff058e02b8367ad93765723bf1abcca50a05719a2d7f2d1840a *aaecd356d7455ebe6734f74ba64b9a5915f9ea3d5892becd0e6fb816f3f2fdf3915b317f9d7c4c *deaeea7cdbd22d5952ba635881419516ba86f93898575b5d36242674d956dbdd16457f9e80594b *da7d5ea6d5be93db8c24020442d3d68412e477527aaf745154e4645fd5450a3a9fd1f41273b022 *799dacf222778ff0d69ad59042d8bf218071fd5117d5d6928e537b3b430b891a70d85635c9d5ae *a569eb41d8d543955df0bc2aed1fa9489fd0b0d1dbc4e4c39105dd952bbc0f2144e13c2953121a *dd1ada2222123440bde51906ebca0a0406845d5d90807cddb43bc09d278540a69e931fca296363 *2304a94fd529b457cbe53d6423aeba4e525d631a63662044d4ae1293efa1e51485f50e73684544 *a0e2dfe36a209e31d2de82554ba2dd57cf6954416e1bdf1d2d4760a595497dd8c465d5669026ec *6995c1c2a5847482c863504b4d956121d619f87fa834e016bcc6a6c07c98fdfa1b7752a846afe1 *f73bfcf633b49290e2e0503005a98e2579f6763614659aed9d4c0b721003000f6ada80844a9972 *14533083952c924c0d6031c4773ce0a9060ea0cc4ad816dd62d210676b0d147ea0312430a8c449 *1642c102b89e6721fc2b58083fc3c28064ca42ec3128e79dc9c0c2aa4820d83ef0fcb1acba71ad *7b0630a19084b344f80a90469740c480e42411d6048928f3e26c5c5ec442fe372e30cdbbf6f60b *d86df800f7a3b3bbcd9a7479b6dd3d147993513a2db6496bc52b534921bbccfebb3ab904509f42 *252f21f601c924762940545e8f16835facaab2850ae2b6d003d8985bfd477b93e196da145f936e *9525353c92beb97bfb931bc78172cf70c1b1338b2e818b01c9692eac8de1a27fea9898bf7a8699 *51249b8734190a10e682feb2caebc78a45b1b880823342326542794c429bddd9745b02db32376b *dbad5beb665b958d1e3f7e0c03fe6719882216cbf0121818904c18f038ec8728eed14e1978a8d2 *4f93e8c7cf9d93048470868a2e220506245302e05c253cd5a3ed0878d2783ccdfbf1ef1a5b39e2 *e1c981cac5920bc73919329fd346fbd69c60aa7d639a7ca1b8695a91e9c5cd4d51416399554dbb *8839e7879d2c193759b52b5292e92c0467a292c689bdeacdb6fd44a269d3a77de43679d47886e0 *e1fcae7d862d258fa0a5dc93aacd379a54a697070d76aaa66bc6d92cb73740ef9c99a61cb4e891 *b4f648033a5b5e19e9ef13c25bf6672a303938d34d71e2b13194f34db222d668d866494b52d7c1 *3734b4e6dd09ead0769594243c68baee1a9ddafbbafbad45d28287875d6b0d3f26c5ce8ad5fae8 *61c19c854c579eeae6644fee453ee3dcbf80a7c308c9a92ea133f9d29efccb8a2270c838fcb50b *a0604072aa0fed4cfe6c43deda8270968880330ecfe0bfbf388e909c24c29a744464d01c9d0ccc *8ba19ec69710d880e44860310b85e8d176912dce8606651c18b984e41d904c43839e26f6458f76 *084d27e990bb8b366f8baeeb85da8c75d9f4fa589ac7bb7c4143d158bd7d7d78f5d90c8707ab94 *97f0066284e4345bd6a667ebb0ed5964e2902ae0895ee47c29552769e292c9e822926a40326d94 *3dcefcc0ebd1f6346d3b5a0a9d745db279d36a99c9accebe61a5c1832eaa3dbbb227ce87fa1437 *5271e6894b48a11192293781605e14f4683b6e0c3ff6f4b4c86abdb6547dd5055e95c814f0f27e *48b4df1b372f8bbcd427398962060fa60ba8af2324d3ae3a965057bd1e6dc7897d0d6e78b02fb6 *51fe055f6c5f1df4d4a7c20fa995be80f0072447522264210f7ab418fef9789fc63e3948407d8a *c3f0ff759430fb16857505a0f7fd1fc0567731591bf33d4a39d21ca58263b479a13964b9f8794b *4d160794312d0e1330bd99c938842d15d97171b040b0c4900b228a4fba3137716763256b7de805 *fb9a08165bc5068ef3c12412ce7557e31d4f854ac153143531a48c5251377b73b791cef715381d *7dab9490f881322f06adebff1a227ed6610ad42eddf63fb1e629065b087cc2a40c8ebfca1411e3 *b067e1681383101cff84da59754698882ff3477b88ebbe918a05492f0ebe3c4e8f80879f23c749 *e54be0c4194199e2c5e63414b8e3797474b36235502c8c8e16770f36720894f0f1e47f00bbfbe8 *e5656e6473747265616d0a656e646f626a0a34352030206f626a203c3c0a2f54797065202f5061 *67650a2f436f6e74656e7473203436203020520a2f5265736f7572636573203434203020520a2f *4d65646961426f78205b302030203539352e323736203834312e38395d0a2f506172656e742033 *36203020520a3e3e20656e646f626a0a34332030206f626a203c3c0a2f54797065202f584f626a *6563740a2f53756274797065202f496d6167650a2f5769647468203436360a2f48656967687420 *38320a2f42697473506572436f6d706f6e656e7420380a2f436f6c6f725370616365202f446576 *6963655247420a2f4c656e67746820333738302020202020200a2f46696c746572202f466c6174 *654465636f64650a3e3e0a73747265616d0a78daed9d3f6853dd1bc73b74c8d0218343860e2d38 *34e060c1c1824b0b0e2dbc83810e061c2438487090e220a18b0487121c2438487010e220e41d0a *e920a48b10871fc441a88310870e191c3274b8c31df2fb9e9e78eec9fd97736f6ed2a4eff74391 *9b9373ce7dce9fe77b9f7beeb97130208410420821841042082184104208218418b1144c2a95ca *ac66f676f7aaefaad685756d9adc3bef1dbc38d8bcbd995a49a9666edddb2a3e2dd63ed4babfbb *9c15f4089dc4aab60795a30ae65bf23593b91ae8e806e0a36559673fcf3043d2e9b44ccc6432ad *2fad6bd0d5f54f7539edb31bd9e649b3dfef2311ffa2753bf77766d9f98d7f1be91b69fce1802e *306f5d9ab833b6bfb5b3b7b28861aed0cdc90c067af253f77abdf5b5f5e117cb4b9dff7516ba87 *61bf6a262e2bde0cb9fddccc3a1fe2202dc1c155cd9c694cb92b9cc6f3d0a5bee0360a714be373 *23f19aa9e1d74f7541f3b8a9be4234b8d03d9c7b90535710df0cdd5f5daa2e5537f156149e14e4 *5d155597aa6b726aebc272567a57520bddc3ca2be7a121887caefc76f89aa9ee3c74e98c6ba6ea *5275e7bd87979d669efd38e3ccb966aabb10ce48d5a5ea8e3d35c206f5d5deee9e4aef7cef1c3c *3fd8bcb3299eb82d5fee04c86476b6772a4715ef8607efe342e429bd2c6537b2ea91aeaef39537 *95ad7b5bb266fc8be3eadbeac01e53274cca3fcc675633d29eadbb5bcde3a65e0416aacca8b6fc *aa6caebda80a95afdf5c1fee7c5849c1f8dc7e0ea6767f75233533e8e1a9375d3ee393fd00e371 *3ad7d2fa52288623ee5bd0dcc818c6e076bbfcba8c017286f8ee1652d46d78d499137eba487335 *dc23300d104ba378f3a4393d37c78c1206dfde948fb36130265eeec198c91655404c1c4d789387 *d261a977de73a524220bf047dd8531ca7052d88356179e14c433a665e17ab05377ed188e631870 *9a0851e2aa8bbe0d7a9a26b701b4bfb6ad4b70804932dcf0b09af1dd7fa59f257b2b8bd1e9ffe9 *a369e84f755e8c9a1c68cc6dd48906e25fb9328022bd5e2facce8d2c460dc6149f1555a23e3af9 *4779ef00613ec38b431e14a213a0093233663e72e21430ecece7993a51d46686f4b99e8e0933ec *846f6d75c9a87faccf2cd63531326a9de840d916d1ba6fa27522657598e23b109377e92473d577 *910aa64e49755ba72d7541293c2e48f3d0deeabbaa4c4f64e8cd1d4d7f062d4d721cea611e6391 *6057a32c0c434154ab12a1e1bee9ae982a86e384746054219a7c2678778ee174ae9d6332b6d453 *a078aa12a853f859f6fe71c266cc28795e1ca8592dae297fc1b14cc4b526a44ef98c58840abfbb *2a1182e98410bfbbaa7e1ff95d5bafbdaf79af7790656fa8af90d3205233cd054db7074ea72e7f *ae0d180ba4ba98aece10bf7386182d55330d1d1575e68cb57692b9eaabbab11fd88ded73255322 *b0b746e2433907261ffaa88e86b0443f918cf3217a700d97851376b55a9097cfb5cd5d3b9ee304 *75600c219a7026382c2f457d4b227c05d83b706e057b71e0bbb34b1f385741bd4ee702640ff477 *3d5c81abdc1e16849818da1d046e70c26d96b75a919a692e687a6c800e71e28d27850555ddc021 *d65a873c51674e8c7e309fabae0537f9c0ce156825d9e7dad307712f30aa9689a86e6447b30788 *36f548123373184f262a0b6a8909623e36dde5da311c27a8036308d16c9694c5d2dcabbf4b7366 *2b4b23dde88967803eb2bacee35c2a3dff281f68b91d21e2c2d51051933ec315953715c7a45b59 *1f5537ee4cdf66461034dbffb126628c0555dda021d65b873cc976e9847375c68f6ff4a554080b *eee86b1f6a2280b4137b1814c3d15ceb0ce8c9e2b362e2b29058ba99e304d516a37f66a0ba88ff *d56a895c7231a967ec59025f96d4625743c1316c11bab4feb1ae966dbd5e3f62929d64674e2268 *2157f93957dd90f761835a3761974e69ae4ecfd7d4628bfb0dfd9554fe61de75ff1ecfce188ee6 *5a67400ddefbdf64bb3aa9f418532b5eff4c5b754594a81e179eb60ceb89a4ba81bf0eb1924a50 *757def29f47728e648756daa6e9c2e9dd25c9daaaf358f9b9b7736835ca0fea99ea0ea1a3ada60 *743b936b597e1a5d9d98eada13a9ae79ff4c5b75e5ee29ef82ff8433590fec2794b8a0ad4dbdf3 *5ed08289b36cb59af15d6108b9b79d96eacee70a837d952b0c519b33a5b93a035febf57a103a71 *c37e6fcbf5d837c1150643478383208ed5dd011debf2a664bb7a4e561892da2736f91cd397431d *abec4967b2be2dc4bbc9443ebe74b96454d52dbf2efb2f3568abf4fa8a4de9b0a46f02f47d9416 *4f038d9ea6fdbae2a769fa455ff9916bafe68c9fa6456d4eb273d5d9af3bbda7697eb1c1489cb9 *bc34e1d0c770343845f1591186e9d2bab3bd333d599824ddd071029fa645ef9f19a8aebeb945f9 *4efb6b7b42d515db8afe2ec2578e2aae6f8b4f8bae3d2131541773c6f7cd08dcb5a97b107dc8c4 *ceb1bf3b9673fb39df952ed7ad5682aa6bb801467f7221b5515edf911e3e8e630bea2bde6afa35 *3e3742da185ee7c89e9c583bc7a27669b27375063bc7c475e7f981f70184be7f75c2a18fea68cd *136793986bd9591fc464bb7a92f409778ec510a219a86efd63ddd96ab59fc340c325f53e8f7dd7 *a6763543fdd05dc2012fdf4c91ef23185eaa425457d68c0856be4f81ca71f9aebc19feeaa9d896 *7cdaf25eda54d36086101f5b8c8bdc54e695e20455d777b377ed837bb8f5b73f20896897bc1c78 *bb2b6a41fdb78f1082ca8ddcfafd97b78d63ebf4be25a15a67f29644d42e4d76aece4675657789 *f0c016b1220ed40f37410df4ed64b187dedcd1d06399d5914d62ea37515deb0cc976f524e9868e *13525b54218a3d0722692f8243d19fcbc36dbde864e895f96ba42167e9f7fbb8be8817f16ea465 *fd8836f30ff3ded734ccdf6695e99803e8795caa5039ea747ed53c93c144aabead7adf48557749 *98d268a328057d5e164eb7b7bba7366f476a667836d7de54dcc40d5f48bc91966fc6f92c8f5c88 *7776d44bb2f2554a2992e183685210c28b88575d95c4cb95df3b216d34a973e48de0a5686f04c7 *e8d204e76aecfdbae62ff0c2b5311561a4e8437d8a6eefe042efdabe187be80d1d6de4fd94dd3d *7dc16daa5d6deed7b11d67ec58180a11b9064cef390e21741c42387908a1e3104e1e42e8388493 *871042c721d39b369c4284d0710821841042082184104208218410420821841042082184104208 *2184104208218410420821841042082184104208218410420821841042082184104208218490ff *0257fb1f0f453a7b0c5363b72e6a4193fcd36e2c21640ed555924ea7f30ff3bd5e4f7d75b586a9 *e3ad7b5be6990df3c46e5d24c3e2d996606642c87c0aaf3ce89df78acf8a4a49e64775a7a16c89 *a8ee946ca3ea12f21f515d6059d6d2f2923bdd1e408d1109a75652389069f54ff5f59bebc8bcb3 *bd03b99689cd936676238bc4ecad6ce3df46505917e5d7e5cc6a06a536ef6c0e4b696777dd5387 *646e9db664e6c6e74650485f78525029cde366fa461a7f4e7e036b7d0d93c73e151ad8a68c41bb *52a994b0d00e3366645c9e16f1ed30833d3463e7fe8e18ca0b3194dddf5d1c6732192e4d10b240 *b16ee9b0947b90eb5f024da81c55e4b7103da874f55d756f774fe684e0b4bfb5e1fef84a16f72d *ab8394dcbec820abd275cc6b6178e6fe9f3ea4b8f6be6618eba236d4232e1f6beb212d0da9c775 *3cacf0a353a1b96de879795e34b0f4b214628c332e2f4bb23786a50e4b383b541ae7c2b718021c *a397a43e4378d5c5911072e5aaabd675e1bcde755dc460ca61e1e0886347cadb0344682aa71016 *dbf9724cd9d10c63c52d2433823a84d99050f31506d823ed376de938d5f556686e9b944a80cc30 *23c4185f6b71204b151e172a6f843e43a8c505f11f714144202d0f0821f3b6c210722bad901a0b *474644a71265cecef70e6e6fc553b94779796feb5b76e42ccb4b63ad722c09ce0c515abfb9de3c *699aabae614bcd5537e8389a6df6b09941c6f8de0ea8ce697f6d4b7ddeba2bee5944d46d0f1033 *b7beb438d5095914d54510655d58ae6fd337d2c2916d9f1a10b6e176183a1354d615eb4a7d368c *758332777f75cf7e9ce13e1a07b15577acb5f154d7c436df58d7d718df585795924a5bff58972b *d8b8fc353e371069739e13b240aa5b3a2c159f15a100f8c3ddebe69d4da1bae9b408deb4255c59 *442622e2822c0795d529bf2e8bc5c93f974bb56fab2a83af888dcd0cb541a4876fbdcd41ac78f6 *f32cb5920aa97facb5f15477ac6d41ebbabec684aceb0e7be955598cceb108ad21b9507bb9e620 *036019031342ae50727d9f6e8fa4db8383e7077064b96341469bd29d2162f07195b3fea93edcc3 *b0911dded2fa957501b98044230304c1b52ee1b5d09b1936c80c8827d502b5f72ce2717f2a25a5 *29b0fe71d606150c3a36b14ded6d10fd994a151e3b7b18bcc6b8ac75f6303c2daae574e4443d52 *dea1d8f876b8e04cd525841042082184104208218410420821841072bdc8652af8f31e5f950d26 *e98410325712aa2b9537c5b794eff1d8131ddc1fbe157bb05d2fef8bdf81e9f72c933386db6092 *4e0821f323bc51852b86ea0eac41fe667570f98a80d5b70eeed5d447fd2baa2e21e43fadbaf6a0 *76d82a6c54a18a3818a3bac8fcb2859c22f3cb96fe1b381204b79d53b1d5bf73d2ad1fb69c8fa7 *5d19f70655222361942adcaaea8b1b4e9117a248f14eadf3a54bd525842caeea368eda95274d84 *a6d68550b6e6bb4e88ead65fb72b4f2f33f72d1ca0acab5a14af5f4a37e414122a3ebe121ff1af *aa39a8129ca5fdf9acf7abef555da7c885859aa9ba8490f9575def9ffcaa78bbd63f1fdef98b65 *81ed7a88eaea997180c8d375a2decffec1b648c4bfa8cdf978bf8ee3f04a701628bfefa5a170bb *ea14f963517509218b1bebe65647a438bf5609515d64d62bc9affaa81f44b5fba3af9ea9e123f4 *56d7e7a04ac28d0c6f0e21842c8aea420f5d11e624b12ea83e6f951f35d412313e561e35f0af2e *cb41b16ea091a30139559710b2b8aadb386a432121bc963568beef9476c35618c6aeeb82f64957 *3e171b7e3c161fdb27ce4f7b85aceb0619a9adeb0eb8ae4b08997fc90ddbaf6b8b475d620fc35a *a5bcdfe89ff75d195c99c3f7308858f4422c1a40219d8f6ba30bb6c17b18428c44b49c5fab22e8 *95324ee1258410420821bebb17aec71f0797104208218410420821841042082184104208218410 *42082184104208b9f6fc1f732ff469656e6473747265616d0a656e646f626a0a34342030206f62 *6a203c3c0a2f466f6e74203c3c202f463139203720302052202f46343420323320302052202f46 *343220313720302052202f46343920323920302052203e3e0a2f584f626a656374203c3c202f49 *6d3220343320302052203e3e0a2f50726f63536574205b202f504446202f54657874202f496d61 *676543205d0a3e3e20656e646f626a0a35302030206f626a203c3c0a2f4c656e67746820313932 *332020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a *78dacd5a6d6fdb3610feee5fa1b9c0ea00332d4aa45ed2344096a659da2ced1a171dd00e886231 *b112597265a55eb03fbf3bbe588a6d2645310c42e088224fd4f33c248fc7b37b5f1dea5cc3e7d8 *291c17fe781c12ee8651e8448c13970511732ae15c397ff4a834a04eec9398464ee807c4a5a133 *99f55ce8c2758e5716436d326cd9fc3aee8d5e33e65097c46eec8cafd6fb19a79f071e61646718 *727770f0ead5c9d9f1ced0c3f299ba9e9c9d9e9c1da9f2fb9dd81b1c7c383a3b3ffc70f27ebcf3 *d7f8cde8358d5bddfb2c24210b0010f64c299af48ec62b908c7b8487fea33c7cc6088b3c28b824 *e4b1b421015ac1ffc6ce0503c2a300dbbff63effe53a29f4f5063e37f059f6d00a5ec6a9432989 *39978af6ce7b8da6aa75d5c906100abc0206404297138f478da2b1139338f09131f560c4e2d831 *36c87b6f5acff2fdbda948d2fdbd3aab73b1ff3ea976e84014e7932a9bd73b43eef1417d579755 *96e4bbea962e74bdf83b99cd73b137528fae6b48dd08de489d00c6d277fd0ee8d34262d5c7d848 *7d46521a2bb188129f454f100bff0b62e113c41a247662da4612bb2cd37b18788ae3dd1e6cf6f4 *60c34356418298f8b1df05411a247641b48d1464beff3e17c94228b2933c9bdceac93fd5757906 *0ba3d0b597222f9764efb21ad9c5e021617e27664783c42e86b69162248ae4b412572ffbcffa56 *86b009b0a813c3dd20d964c8c03dc72bb048b02ce400bfecdf24df92859cfcbb498e7eafaabfb8 *dcfdf9eb5d59bff84de479a994f8545679aa6aa19dbee8efaf37eec1d3a3c43e197c60e1855df0 *810d12fb64d036ca07ceedac3c0abba4d705560d123b2b6da358490f6825e6c624a06117667683 *c44e4cdbe82d0bf77415f240079481d30fd07ae85342238c5b38bcdc44543b432aa3a834cd8a6b *153d2585ba66459e15424754ad6d62339a023d008aaf219cdfcde7257a522f6083a5be16e55257 *2445ad4a75a9aed3e49b364ad4e55a14a282f5a86e201e890642d40a1fd45cdd15933a2b0ba26e *df15e655c9fdc38ed312b1223a0a4a837288ae9e660b688ef9405db539dc2769aa0ad2e5634be3 *1ef41385b654cd172abc7cae2a452e66a2d09649adfb565d419fe55c15caabb596dfc6bf9f6ec1 *394fae0530f42336184bc87ea420634d5a2269acb95b485db052f68875176fce872b68d8324b26 *52c552b52fa7d964aa5a96599eabca6b81db1be85eeb5eb0bb4d58859888c522a9406a1f7cdf9f *801d0a014c9a54d54cca9992016beb0adcec4235a0ccd200f6d922bf5706627629f4836f406c35 *c3886afb8451bc508d12670b8d9abf6a6aa4e28beb7a66a69677952a5c8c3f8eb1fddd87938353 *fa5c559ab963667aaa0ba9296833b154055801b78b5d9b9b60a1477c9f77c04db49058dd84b141 *e570974b05a8f130c2a7ea165b2bf15505843098b8e75935085cd28928a701b2a900babcc0406d *f84f72706b0de5ecba28cdfd3afd47256011615e27a64183c42a8236312ae076612506a75f1674 *e164db42620bf08c8921b6fb28338f114e5917983548b6300b88ebadc036cce0546a6546f1d59d *18b306c926334e89c71bb42b6a3295a09660ffa9b3a987eebb7536ed3fba485d80e5b22e2cd206 *895d176d6374b9590c17abe86b1b3d3f8aa0f7b803f45a48b6d083351a3568b76c45d7958af586 *9324cf2f13084acc491c0d1f1b613f0c48107761845b4836250802128391b1311224391c3ef5c4 *5f3f5caa894d0766237a54858091f0c90df9ff58ff2d2436cf664c56cb1f4f655666dc2361d485 *3c620b8975051b9bc669d3ed6e0da32f18db1ff76c3eec7f91d789116f90d875d1362b5de64616 *5bfe0df3322605f730ffd65737bb9795551b2f2251d88514550bc9a6361099c36785d66823f5d1 *c9b85dccc669a99e19e22a910502b55c246c15e6e46eaad67ceae4f6bb1c090de457301d90ae41 *b245ba9030f424da06a5b3f84f1b4f97c9ce3ac0b341629f22da0679e2bc5713e2c0f88b59727f *29ccc2c16cc146e6ba2ecbef58375eec13d7ed42beb285c42a8ab1e9c4baf1224a5cde85a4680b *8975dd181bb96ede16a571bbb7587c74dd78410cd74e4c9106897d8a681bcbbab9ca0a18e27b75 *93ac1610cc902a6df69eef59383c2494791df0262d247655b44d37160ee384465d48bab790d817 *8eb659df70eaa9a854bcb6edb325793e8c7c38133178ab4f22aa3cbbcaf8d2d8d5095a2ca9ac38 *6667f14e267bb17055c2ab9732098cb7329b2c4b9840fec5740251d4c3c764e235c5dc2bde35b9 *d76d29df6c2264be36f4078bac5689783ff4069846c5caba9c13551a63ca36b915aabd28652e19 *eaa798fdc7c2c5f187a3a3f1c9d9f1f0f0e0f4f4d783c3b7cf95ed3259288b49590cb780f806a7 *23831633c9789d2433914f2068d434653a170bf2750fe8e6d9627eaf8a17af8e5e7f3c7bae9549 *b4cef0da6daf48be439f87396595554cd4171496994e7944b8db8588bd85c49a3736363ffe8b91 *f5e3cc53bf18c1d321e75d38e9b590d8f5d136529f455b85fbb978d9afc5dff5e826f90622e92f *93fa76e23e233cee42ccdd426227ae6d90f868a438effdf4f9f0d5c1f8e0b395a2e7c11bba106e *b790d8296a9b87ebbc9da73ac41d0ec7566e722a41250dfe595740ffa42de6c4d3598c35683e2c *b40028b9edc67f0175fdc10f656e6473747265616d0a656e646f626a0a34392030206f626a203c *3c0a2f54797065202f506167650a2f436f6e74656e7473203530203020520a2f5265736f757263 *6573203438203020520a2f4d65646961426f78205b302030203539352e323736203834312e3839 *5d0a2f506172656e74203336203020520a3e3e20656e646f626a0a34382030206f626a203c3c0a *2f466f6e74203c3c202f46343420323320302052202f463139203720302052202f463439203239 *20302052202f46343220313720302052203e3e0a2f50726f63536574205b202f504446202f5465 *7874205d0a3e3e20656e646f626a0a35332030206f626a203c3c0a2f4c656e6774682031363236 *2020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78 *dacd595d6fdb36147df7af10b2873ac04cf39b529706c8ba244d566c59e2a10f6d80c936632b95 *254776eae661ff7d97226529b1e9a0ed800841208a3ca2cf3df74324d5b90b483081ffd3200b30 *fc8948218155a882900b84b90c7950e8e026f8ab434a0009082748b130504c224c54309a7530cc *8183d335a457617a0dd0af834eff844401c128c25130b8d9986930fed82574ff7a70de3fe1bc09 *140285114c6d106fdf1d5d0c8e2ff77b54e02e45fb3d8171f7623fa2dda3cbe33faede5e9e5d0c *ece0e0efc13e09bb7f5e9e1dbd37b3768e076b8af0106211df6905132192428239110ab7211843 *c0b367662ac7ef3a1faf713006dc79c776aea08d1189a260d6a11198ab94bb4f3b579d5a541cf4 *228a22e59fa67c08c334b6e5d08f67618881e760242ce709eee0b76439565dcbd9b9e2288a4266 *9fe2e62612d570ff6cc682df7298b5e1731a2a008124ebb9bf9b63cfc8c0a0bb942dfa31d90447 *544630270c52b1d5899446e02415f424a688f942b1425520136827c9e4be3001a4ab58a3af6deb *2c4b93ccf55ec416935d8d8a64beb49dfa6b3c9ba7fa69d07142910c45d0a0b2c9570129c39721 *ace43608e18828083b4650084e3408f0eea4f4f16933a21812a1dc1038b885ff5260881421603e *822221ca347f24ae1d5d4fb299e4901e5cb2a027a442902b6b6539b81e45306252373441195410 *a36b9cea62f9090bbcf74ea7690e094c45f7435ea4e33de825bf3c55cd647f446820e0ca712b0c *ae996c1aac20ea6bb2c6e07fbd16715340c2672c52ff8745ea198b6a265e8b1cc458d4ef5baf5d *5f1f7a6d83f0e4116b836d3513af6d0e626c3be82fca4cf65b06af03c15ae1b59a89d73207b196 *4d753cf6db85e1dd1fd236e457cdc46b978394760df3f1c3e1c1941c4231ae0bb1a0bcbbbc5fe6 *4512a7af6dbcd26c6c1bae408322c4ab078f049254b5408f06139f1e15a4d4637e7891ea78a1ad *ada334197db6cde5d4f5a5fba49b64ae77a8d37c850e8645dfaf059471a9da101b0d265e2d1ca4 *d422b6364e0b7df366efa73daf810a561944b520a91b4cb6bc4d61454ac89aadb130cf4a07bfd9 *bb8dbfc4b674bd9e807b0bad974936791ba7e9301e7d362fdcf2f5ba77f8f4b57bd08ffd8e1711 *5292b641979a89d7f10e628bc2ae70e60a85b815deae9978ad721063d55155c066f1c35057499d *2c5c56af537a090190e7cfe434835d15b06c414ed74cbc2238c837e53465b06d946d30b066e2cf *6987f9be9cfe3dcbab22ffd93477e6b4b187b7c2f13513afe31de4d99c86cd246c4ee5cbe5b41d *efb9c75fbeb430082ccc768a5b411e95969b2483f87ab037f1bac614e3474b87ddb58529b9debe *beb00a3513af0a0ef22db58549d885b7613d5413f1561607f9e1c502ac1e0bbdabb030411191a2 *0daad44cbc5e7710bb339afb8de218d13614cb9a88d7248bb016959b22af513444b41d55aa66e2 *35cb41dc1e76394b0fdd21313587618c4b0336e7612434c7b6218a302fd1c062bf47cc89dca9ce *74119b18b72774b1bd9c431a340fee3e614cedb9dd93034250844a044cca7907d3f2f44fc2d669 *b1b4ad55fc601bcbdc5e936ca927f0930eb9e59cb0c4946865f9c8eefb6431b7ad783e874c05c6 *79e6b08bc7f34fac452559438f80d856233397a48f6d93acb2ad1cbb29c9e4333bb2c90d20a37c *ac916d0eca15e6d3394671663b87eb8ed1548f5ddf83ed332a1433dd6bb204171b9ae3c48a4378 *776ee97c4df4e267db139bb71125acbbd2c3a11d5d2d74b1b0a3ab3c7bb5b4cd69fcc54d520a03 *576b4b9ac763d70ff56dea3075d9b3f7c648db029937296ab0088695e8cee389fe92e895f9ce80 *6cd791b9c8ee62095ce3342f0f84a1fb91ec706f6552c2ca04d7ca7163fbfcfdc206a572db73d3 *98c5236bf3164eff9c5ff54ecede1fbf4236643f184aee307a95a4a96dcdef8769b298da1b3baf *69b8e390edc17f9f8d75e1f28052d6afd0e87601f71cf98a090929e2246a41316930f115930a62 *a434afb9b1beb9cfdcfbcdd94b7a3749aaed01928114face9d1a65e6dc9a7875501868f036e850 *33f19dc857905a87511a176e4b693a92499657f74d05209b8c083b85001e02872d786736987885 *70904a88db8575bfcf362ee1c7dbf015a2c1c4bbf4ab305ba27de2d67cbd9159f48157e36a0359 *adfebc12308e44d48603f006934d09603f881559b3ad24283f3f5943b77f806afe7b25a01449fe *925f372452949bcf85886d8d13fbf15ad88fbad5e07f601debe8656e6473747265616d0a656e64 *6f626a0a35322030206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e74732035 *33203020520a2f5265736f7572636573203531203020520a2f4d65646961426f78205b30203020 *3539352e323736203834312e38395d0a2f506172656e74203336203020520a3e3e20656e646f62 *6a0a34372030206f626a203c3c0a2f54797065202f584f626a6563740a2f53756274797065202f *496d6167650a2f5769647468203437350a2f486569676874203134350a2f42697473506572436f *6d706f6e656e7420380a2f436f6c6f725370616365202f4465766963655247420a2f4c656e6774 *6820363236322020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a7374 *7265616d0a78daed9d3d681bc91bc65db8509142450a152e2c4861418a1852c490c68214365c71 *8214274811440a23521ce28a20dc0491c2882b824811c415814d61508a805c0494e64029fea014 *01a530e80a172a526ce1620b15fa3febd9cc8ef64bb3ab0fcbcaf34398d16876e69dd99967dff9 *903c1e13420821841042082184104208218410420821841042082137958d7052a954662b737870 *d878d3b02eadb5a9f2f06258f9abb27b6f37752b25abb9f770af7c546efed31cfc3760afe08850 *9931c3c1f9a0f1ba51fca398bb9b4ba7d31b9b4b1a5973af08fbc0b51880b79665f5bff7eb2775 *bbff5c91c9643a9f3a6bd0d4c67b03c30135caede4da676dd3341189bfa85dfe517e998ddffad0 *4adf4ee3850087c0aa35e91c07a3c80482dcfb5fcfbaa2fb6f37bf9f7747d6e7ced28636b9114d *1756f47038cc6e679d0f3637d0a36e740bc37e594d3c71fc090a8f0b4b6b7ce886b00481ebea39 *8be872d7d88d57a14903b32a3d2df9e331299323abffad4f41a620eb14ddfed8961fc187bcd12d *5cf8bd208740d8ec92824c419ebb2007ae836182268b40cfa4205390758ab62e2d7755f956ea46 *b7b01cb0ab5091d6e9f5cfafd74c9057a149f5314d531631fb1384824c41be792dbce956737193 *c41bd473d64c906fd8601c29a56c6eac9faa50901751349c0df9d1e1c1a18cef7ded55feacecde *df75378e3399fc7ebe7e52f76f1cfb772d91a6faa29adbc9892d36b55c7c54ffbbbef7704fe48c *bf08375e37d081a3f38449c53f8a99ad8cb067efc15efb635bbd0416ba3e493a5d7b59d3976564 *85ccb377b2ced98c5b29185f785c80a983f341ac6a86ede1fae3c556a36807188fe23ccbf81b91 *68def1c00bf58d4c600c9cc3daab1a6e907b8b1fec2146ecb126e839d1c5c5eaabd12302dd00de *2c2e6f9fb5671c74c38ba12c22bb9d9da5630bba5fba85df0bf634f0aa49d173d4559158aaa233 *066d7b7c548fab6abd44cc5c140343556d0474008c5fd883d1577a56b2b7ba36ed51093bd5c649 *30a634dd541d8d9abb20a36dc336f5c44185eebf5db971bc7b6fd7d938deca042e9aa9a5e4eee6 *7077cc1f26aa86f694e5e2ae891b8d7e853c5141fc154b0db864381c46e5b993c35d8331e5e765 *19a9de9de293a2ff06416331c023f62bd108180272ad4fec95c3b0fef7be2c286e3523da5c8d47 *87711ae14b573e4d8c77c6d23c641d23e3e689061475b16bf7c5ae9d1db3e5c404de88d99b7496 *be1ab8ea0553671c74b88fb20874a4593a3668bc69b87de6cbc4c089db37f4c7a0ba4beed9bb84 *78e236cdf12ee05a18860b91ad8c84bc07c67b1a27c1988ae80371356a7641f61f7b43719e636f *e2c1adc6a0cf446f52a8a51cfee63adb185ca25c046417b21f37b2b3bd763a1b1e431179b64e9d *9543dc5c19092d958911efe9a213cabc9d6dbe6dfa1f85506cff044122ba41ac6aea6b9d6a8f1c *71f6a6fce411911b24c8e8aeee2d7ee3de62d454f6343454dc9e33d5da59fa6aa020cfbeea2be5 *087e1d1efab3746cbb3a9b917d46bb6fc41d837066d422c4c4017a885163fb2df3bb0b725f40ec *bceb374eb23115d6071268d48c82acae6bc53dbe1ebddaecbf715e71fbab12782c4dbd719e0bd5 *3cdd6793b23a87d98dc7dd1567dbc2b03b8632efc0b428da6631418b554d7dad53dd063488eb8a *3c2bdd50410ebdc54aed90266ecf49d00efa7dd5b38227f60d03170df491fd0aa5079e438ed5b1 *e19a06b6aa47bb740c8b3d064763f8a8aaff894eeb78a173550cb99c059d9f1aef19f509c65458 *1f48a051cb59beb697015ffe5c06d45bc09c68469f1704d43bab3e02d4fde8e29362a8e5a3187e *1a1e94f0b5d46d3e49fdefba6bd2dd5cc0b8d06eccc06ac6d0ba51f0ee2adc8f1b2ac861b758ad *1dd2ccb74967ecab73dfb2916a8c4959d82e46ac8eedae2b7a5a7552bb746c4b30063d0b176864 *ff0acc7cefc24cf17a632a2cb704edb30441c693572ebf88351c9d7ca69622b769bc0914c74053 *8b346b842635de197289d82f0813268de6d998b3685d8403b0e2821c7a8bc36b3763932ea8af26 *03c3561e86874b1631f18cd5f23aadaa59910463d0b370811cfcf59aef5d98577c825e97ac7d16 *2dc8b66f29772d9509d71c0539f417366ea5e628c8813311f50cd20a09f288829ca44917d45713 *d0fed816a2b47b6fd7de774b746b9629c89a63703c7916cbb33bb088bb3037411ecd24c8faedb3 *68411647bf1cbf5d59ba9fb193abd38119d52fec5c967ff7c43fe3c86c6502972c2226cb8b12e4 *d55cb2185de79245dcea2ca8afc6768caf762e305bf78b95286e968ebda0250bcd3188dae141a3 *8e14ff36e57cefc28a2c59cceb90dbecdd4f5d7a75ad1acddac9d5832bfe63306217d5335ae30a *72ed552d78ed42e9baea1250f5b8aa9e600cdcd14b268f5a9b7ae7d7bca9a7fa03721c790e9a2e *79532f6e75e6db57dd73c8da9b7a989e0bc1c45df31fb49e8b20cf73532ffe18c478293f2fa357 *a8aa9bdfcf2f4e316689d71c53a19b7af1db6709822c4feca81da0fb6f774641b6cf44fd5cf0af *9fd43d9f968fca9e532b0904197d26701bc5786fc8998b7acbec636f3fdd0f3839814b671e9f67 *8e82ac794447dd2511b2291efd888fbe8f532f5457d765f76b9db622ea189de7c4a9a144c7dee2 *36e97cfb6a82636f811bc753b7b462756cf5d89bdaaa098ebdc51d83ed33f7849bbc897e4be67b *1766899ff1d85b028d5a8220ab67da2153187118ad6a9b279e06cad3da104634973d36afbe8c23 *8ec46b3ec5220459e40cbf579cb447e678b2d7ffae0b57d03e6eed3b83a4560d66d8ba34b2ef8b *d82bf7abf41c0539f0107bf31fefed56bff002b544bdc493c2df5c712f547f5a0a8eab38a0aece *dafc759c9aa7ff8b21b2763a5f0c89dba4f3edab49047963e1823c9eeb1743f4c7201a33b33571 *c24dfe86ad67e162be77619678cd3115915b5c8d4a2cc5b1ee1d5c4abb3d379de3ca68644899fe *f76d234ac1b40e8f1efb6b89575f02c50b3e6af18fa2ff9b29fa5ffb15f1e80368793cc59039f2 *747fa03e9341476abc6e84cd28d1e0d016d4d1be0ad2bd698fc7c3834379283d5635a39379cedc *62eae77c3df3765a7c4f3060bde5d2fe9a92fc36b1f862a9d0cfe89ba8732134197eb27c60d95f *35fdda8ba8a34e9e135f9dde88f7d5e9044d3ac7be9ae01c725c414ed0b1a5504c7c757adffbd5 *e9185f0fd1188313dfd639385417f7167a17f45b26f1989a7a8f34358aac010b3d014b08c71421 *ec3c84704c11761e4238a638a6083b0f211c53640dba0dbb10211c538410420821841042082184 *104208218410420821841042082184104208218410420821841042082184104208218410420821 *841042082184104208218410420821bf32d7fb9fa762959ec0d4c4b58b7ba14efa4557961072b3 *8457904ea78b7f1487c3a1fce87a0d93e1bd877bfa8935d324ae5d2cc392d936c7c484901ba7c9 *2230bc18969f97a5c8ac8e202f42f4e622c80bb28d824c0805195896b5b1b9e18d1f8d21d4f09f *53b752088838e3bd91bd9345e2fc7e1e4a2e22db67eddc4e0e91b9bbb9d68756d8b51e6aaf6a99 *ad0caedabdbfeb5ca594ee99a44724ee7cee88c4add356d844a0f4ac2463da1fdbe9db69bcdcf4 *1ad6061a26c201196ad8268d41bd52a9946de128ca9889fb7254c6a74e82916346fe51debe9597 *f6ad1cfc37403893c970ad8390f5f090abc7d5c2ef05f30ac845fda42e3e851e42c01b6f1a8707 *872225b4a8fba50b65c047e2f2c06b551053786c271059a912e7b7303ab1f9c3844a37df36353d *64e4867cec27cb7636a2a611f978c24e86efdc0cf56d43cb8b7251c1ea8b6a8431ee7d795115ad *e15c755c45e9107094854f710b10462b09e98626cbe7262164950559ae21635cfbd790e1b9c9b1 *8cb10fef77e2fad1187e9d4c696bcec8fd70cab59309a6ea5e4462b88270cea1aefa4b16b047d8 *af5bd36982eccf50df36a1a200896146843181d62220ae2a3d2dd5ffb6a51b1a6e3f2b7fb39f95 *70bf4580107283962c22e6e61221bf18e3f00365a448d9fbdac37cd9de1c7c521493e5c06b274a *d9dc986a956b497862e855f64eb67dd6d61764cd9aea0b7258389e6d23a79a61c6044e2264e374 *ffed0ae9de7b60cf746c5f7d3486a7ddf9d4615727640d0419ae977569793e4ddf4edb637c1490 *039c3dccaf214161d77a3c6421dd9a1e7258e2c1f9a0ffad8f893902890579aab5c90459c7b640 *0f39d098400f595e2544d8786788d5723c195ba72df8e7ece784ac8720578fabe5e76588035e98 *0eefdedfb505399db65d3e65b9585c2222e1a741b1c3ae55a9bdaad90ba13fae96855f37648240 *7d9b9a184204ff109ffaab030fb3ffbd9fba958ac87faab5c90479aa6d616bc881c644ac213bad *f4b266df9d8fb6430e35c683402c6208b75978ce8490d554e3c0fdf789f8d1b8f26705635c9ca9 *103eaa18e9d0370c7f99d2786f38a72c7672ce1c39e85a0f5012a83712402b3c0b1d7e0bfd8961 *8348002f542e86fb4bb10f24a45242b542f39f666dd88561611ddbe4e90bbb3d53a9d253f79485 *df188fb5ee298ba3b25cba474ae423941f628e4f9dc56d0a322184104208218410420821841042 *08218410b25c0a993a5efef075d9a0134f082137455d5511f3c7045e15189e5a50e591f3f5e1ca *be517b6cffcc8e39b4744a8cb641279e10426e8426c7d5b404823cb6c6c53b8df1d5b7222cd3aa *3c6ccab7ea471464420805393866346e1e774a3b0d082602530419895f7490d24efca2a3fec490 *002e71efb3fded86ded9c038eeb86f3f0f84b71c9689f09f7155e96e435d2d712ff9cbbea47cbf *d9fb34a0201342d652905b27ddfab3361c5aebd216bdf69b5e84201bafbaf5a3abc4a68500aef5 *648bcb8d2b5587d2425dedb72fedb7f82b730ecb04a5744ffbc373d32fc8ee25971672a6201342 *6eb420fb5fe2a3f2bda679e12c25d8eb0cfb468420ab891180bfea2968f8ddacecdb91f88bdcdc *b78f0c84a33341297828043e354af71aee253f2c0a3221642d3de4c2d6844a17b7eb11828cc46a *26c5ad006184de0ebe99726b0f6f21c5aa748765126d6474750821640d041952e9f14b67f19041 *e3cf4eed494b2e47e36dfd490b7f55c50ef390438d9c74e329c88490b514e4d64917e2094db6ac *71fb6daf7a10b56431750d1974cf06627bce79fbd17edb3d737f542d620d39cc48650d79cc3564 *42c88d56e3a873c8237bc7cd3e65b15daf3d6e9917a627812771f4290bdb83bdb45721209eeedb *edc9c5e1f053161146c2c72e6e37e02a0b85a72613420821849019dde3f57bf1e6124208218410 *420821841042c8b513f80f5257b694d9f3899bc372da8710b24eb4cfdad08dc07f09ada339cb51 *feb95c1896cfdec3bd0419ea5ca56339459b102239fced30bb9dadbea8feb282bc384b28c88410 *7d86c3613a9dee7ded653219f5db1c62baddfed84edf4ee3d53a757f21b3f4ac944aa5325b197c *1a2826eab548d6f9d4c1e5221f448a34c67b237b27bbb1b991dfcf0f2f86f22aa417cf0875be2f *72c3472817a53b768ec6e5e765189fba954220cc0c605fa2e4e3a9915a10260bb99d1caccaddcd *b53eb422c4d3635e705bfd4cdff9dc1169d48f828d44a58ecaa891532959537f242164eda8bdac *61b08b09b84782a012f593ba6559c63b032eb48884235d785c30af8038847977eeb5ef0d08294a *116188b04c80e210d978d3383c381462b87b7f577c8a78282d1e163231ca1285a274e1cc578fab *85df1d4ba066284ec7439656c91aa9c920a7dd2f5d281e6c0b7bd68485fd6d25d3983f4c54adf9 *b639d543569bd7aee971352c9210b27e402de11e0b9735ff28ef110a2880f0d0a468c091160ead *f0ae230459bdd69f8fcb680cbf571ad3ffd647009ea46a8c9dc30fe7273a07ff0d84178dbfd212 *e40f9f564790032d716bb795b16573a4b5bce00987e50c83e175a37975f2542b8580bfa6329210 *b266a84e299404fea1bab517283e9aabb211c2e514fdb10d4f524ed81dfff0b82a161fe033ab0a *36510a146f73439dec0ba4aa470b727418cf263c08e09c179f14037739a7e6e00fe3498179019a *3aaec8db6f7fd6d41f4908593330e5f7c89abab517e643ba7ee90f33b12043fc3b9f9c9f0f9291 *c8593c14208998fe4ff590adcb29ff8a2fae20cb7ad54fea72756546411e9c0fe0f6636681402c *0f39702e20230921eb84d8ce5375afffbdaf6eed058a8cfe1af214414ea76da7d1b75a0b07154e *7be969c9935be01a3222a1c978d5ffaebbaebe02dc66542a752ba56995bd37776555f7df2e1e0d *7311641130de197095d5d60e34527f0d79efc11e5eecc684ac07c225c600973198a7cb05047531 *6162616134865a8a5316add356e0771fc2ae55c3b816e20f15aabdaca999883c3b9f3b9edc9cf4 *a994add53fcf1e54feac40d8c5518dc01506fb70422a25144cc72ae3bde19cb2d8c9d90e7cfc7a *a961d44e84e1218b00ac8d3672e240c551d0298b9f91146442c8a2b10fe0714a4e08212b003c40 *1eeb228490555842c134dc393f46082184104208218410b20074fe9bd2e2fee312ff971321e426 *6aa610aef2fda608f73e0de698ff5cd22cae74420859294d1681c137b3b2df1c9e9b8bc89c824c *08219aaae5a8f17fa6c77986b75cbadbc0ab7bf6d36d1e8d9b2f3ac53b0dbc10905feb6bbdee95 *ef358b5bf5ea81d1fb995864deff3214b9b999f80cf0a4595ae98410b252823cf83aacec1be685 *e9ffa8fda637b6c6ddd37ef981f3d391c6ab6efda86d99165e08b44eba8844321189c49d777de9 *9a8a80f5c3824e76def7239e08fe34cb299d1042564a904bf71a817a858fac4bc72f2d6c392a07 *47d4bc707e900181f27d5b2af157467a72407ce561b3fba11f6140609ae5944e0821abe6214393 *bb1f0781beab272cb55150bc7a5bdcaa87655e7964941f367b9f07110604a6594ee98410b25282 *8cbfc37313ce27e6fb532531ae8f3afccf1c7e3721f8ea02b54e9ae5944e0821ab26c88ebe3d68 *b65e77a3253170151757d59f39abb8ed7f7ad503c37355f7b45fd96f8ead28033c6996533a2184 *ac8e1aab5fa0307f58957d43bc553f9a481676cee1a45bbadbb0cf39fce6ec0f2281b80a3eaa08 *94761a1e03c2d22ca77442082184104202dde35fe7c59b4e0821841042082184104208214b23f0 *3f9c0a9aff3433994c4482b8f9cf9855e28acc9843dc9c175a4d42c8ead33e6b430402ff6bb38e *8004c6a76ea506e76e867b0f13fe7f6435fff92a9527b7b0ccf52d0fcb418dd7c98d824cc8afcc *e16f87d9ed6cf545927f2daaa342f392cd6b11e4e537050599905f96e170984ea77b5f7b994c46 *7ecf42ce9ddb1fdbe9db69bc5aa72de783d1b8f4ac944aa5325b197c1a314f0795bf2a812b0ffe *6c8df746f64e76637323bf9f1f5e0c230459e480d2c5a324708e1f969bdf42d445c6f8adf25bde *fad042022752a329d42ae8b4834cdff9dc714a543e2284ac37b597b5f25159cca6a1361e25a99f *d42dcb32de1970a145241ce9c2e3827945f97959d32df4e8aa3f5ba175886cbc691c1e1c460872 *fbacbd7b7f57c4203d9e2678a6f84b0fcc2dda42c7aaf7ae557e036073ff7b5f4426688aa9ed20 *d3983f4c54b3f9b6c92e4ac8af03bc3bb8c7c2abcc3fca7b940452235c41a92470a4a5cf09254c *26c8fe6c5d4663f89cd16a069bfbdfecdf4182f7e8b1393ab7680b03adf284ad4bf71731123485 *4e3b88f5fcdc4e0e7784fd93905f07d5db842c60eeac6eed052a89e6d26bb420fbc398bcc34b94 *2b09d189abc75578a4f692c5c161a06a85e5368b8553eb9e4090c3c2b9bbb9ec9d2cee0ebb2821 *bf0e85df0b1b93a85b7b61dea9740b31ad9e97dce159d0f9e4fc58d0d4c430403c3bd2e934a6fc *fed2c3729baf2027680acdf0e07c8029003c70f5a40a21648d11db79aaa0f5bff7d5adbd60ef74 *1e6bc801829c4edb0ee168dcfad0d251adfca33c7cfbd2d35260e961b9a9a45229d437752b9558 *90675f438e0e1bef0cb8cae206ed3dd8c38b9d96907545b8c4901419537c5294737c75be3f31f7 *1f8d2183e26841ebb415b826e0592b08cb4a0d232b3c0b208fb597b5e9365ca547b8f3b91358b5 *c0dc3c948fcaa845f5b8aa6961c00248cca6d009c3661186872c0278b850900921ab8c7d4eefea *e41b218490eb05fead706e0921845c1762228ff9bb73668c104208218410420821e4e73f7ef287 *67c987104288ff9fcde9fcfb394ffa58c545bc2584106af2d4180a3221845cb3208fc6cde34e69 *a751bcd340608a2023f18b0e52da895f74d45ff2f4f8decdbf3a32a6f76950badbc0ab7b368828 *545cd83bb3133b2586d84608216b29c8ad936efd59db322deb720c156dbfe94508b2f1aa5b3fba *4a6c5a08e05a1d0fd9ced31a773ff4cb0f9a530bed9ef687e7a6c8242c192184dc6841f6bfc447 *e57b4df3c2f9a50b485f65df881064353102e5fb4d1d41869c0a77b7b035bd5027716432420859 *4b0f1922a9aa7471bb1e21c8525105c5adba8e20272b3422192184aca520c3cb559dd268214de6 *21272b3422192184aca520b74ebacde30e74cfb2c6edb7bdea41d49285ce1a72f14e63786ee26f *443e3a8546242384909babc651e7904763e3e5d54986ed7aed71cbbc303d093c89a34f59003bc1 *765d6875443ed1853a0425238410420821642eeef17abc78430921841042082184104208218410 *420821841042082184104208218410420821842c81ff031ed8ba52656e6473747265616d0a656e *646f626a0a35312030206f626a203c3c0a2f466f6e74203c3c202f463139203720302052202f46 *343420323320302052202f46343920323920302052202f46343220313720302052203e3e0a2f58 *4f626a656374203c3c202f496d3320343720302052203e3e0a2f50726f63536574205b202f5044 *46202f54657874202f496d61676543205d0a3e3e20656e646f626a0a35362030206f626a203c3c *0a2f4c656e67746820313736322020202020200a2f46696c746572202f466c6174654465636f64 *650a3e3e0a73747265616d0a78daed5ac172db3610bdeb2b38caa1f68110400024e0d89e713b4e *62374dd358d31e921c2889b665d3a442d171329dfe7b170448509221b9d3b4c5a1e3a145918fe4 *db875d6077c5c1a7800457b0bd0c8a00c31f9709e238114920184798c5820555165c06bf0c4803 *2081a44812112434469824c1f46e80e1163878d9214203097b98efc783d10bc6028291c432185f *aedf673c7bbf17218ef6c384e3bd97a76f4edf9dec276c6f7cf6e6e57e18c1b113fd717eb24f08 *d9fbb5f97f72f1c3bbb3b7637de6c5d9ebd3fd8fe3f3d10b227b0fa22c41098b819a7a06a10a32 *381d77741987e72674ab459431c444043b18255c3618142b14fcb7380c00c445acce7f1abcff88 *8319dceb1cb61bd81e060a050fe324200449ce1b6d071703abae3edbdd64830801bb62064412cc *51c485d5560612c9982a8b4904632765d06294dd1f30c78bfb493e5f5eef873ce27b078bb436bb *c3517d5f97d53ed99ba7394137cbe1ba46040bb823096218358aa907f6f7986cda9f4408b68ead *b2ff605a167556d461fd759119b3ebec4b3dba49c1eecfe9725acd17f5737d667a9d56cbac3e3a *bbf8391482cb90b815110451267628927c0b45921d8a58266e450ca651e4f2be98d6f3b2d0363f *fb4eb9489ede4d66a93ea2be2ba7c83ee9efa01e1c224e256289a8a43e2861996c2811c1bc4665 *d2b16d63e3615e5f87d775bd08ab6cb9288b656645000daaa78ac013c4a817ee60996c8ac03912 *3ce9d86e8a3029675f7b5ed0b31ec4d82a00e8cb84175e60996c0a10c788c2ead3625a019a7950 *4d82e1e53c371ef088f1eb9b530c0a3ca3e4bf9b2ef5f9d05ceec1ac1d11586ba3adab568b69c7 *6496c144a547a01b9e0dd7643b03134b1493c407bfb44c3635a01cf1b8236b2598e669d59b91e6 *574559adfa67a7c03615547e17c791072af498b8546821ad0ad7f55dee344c7094601f86b7c764 *d33006e9a3ecc8b6861d6cb52ca19072120f82b7c7e411cb20798e3ab2d6b22c9d392d8b09a811 *fb609965b269192790445bb69d69f5bc6e9788e15b88cee2a24921752cb633d58106d06a66d690 *2fe9dd22cf865b839449249817236e99b87531985697469b652705141a795a5cdda75799566678 *9e7e4eb55443035856d39542a4ad429eb2c4729a2021621f02df3271868781743ed4a4592ecb60 *3d9494f8609965e2760383b1914f1e8f0db58a431af537c2835024132f46dc3271eb62309d2e8b *56963c4bdb22639acfa7b7469c6b5571e9fd7c5e98a3932c2f1f501b2f93caa90d8e949f793073 *74449cb5a881accc1ba6f23cb8aeb24ba3d3b3d6eab25032813ab7360fba5986f30264eaa54657 *5596d5f3e22a9ca6793e49a7b74f994598c408c73e64c83d268f2807e51a48d6629474c357599e *97dafcdfca2a9f6d8d1d9608447c58592c11a77f1848d3aa008fd7de70529899e22efd3ac9da90 *992fdb8001f76863a62ecb27440c834a90ecac8dfe8dd9a4c7c4ad89c1f811349c211f4a898e87 *3b601a44132e3f16653bd5deaaddede1c22214312f9cc332713b87c13822e6725ec0e09aae4eda *858e6a6ecdec7af39490a11845c28726788f895b1583f12364884094321fa4b34cdc616330ebeb *4c7d9d55d9f0b146586bfbda4f30a1a088091684114598e876dbb899b5d5ef360ff33cd77b5759 *9155699de96ff018bd7359c2a31f406bf30b505740e8efd3726680f7c52cabf4ee8728a22bd504 *1c6007ae71a150b74aec43aedd63e2ec90b51825e36a13bf75ca1f944f820b6bb7c4cdb03480df *9d0a40792b990f59758f89ab33d4429400699e55aaef851d9910d97beeb4194a57e9c33c6689b8 *c75c4394c57f3c1661942022c84a84a56ae6df1648afc63fbdb621e40e0e0ca2731f7a6b3d266e *a10c462970a81a6bc787aa09757cd8f46b8ea11a5505d65a41bab51a3d1ce94b5dfa4492a218fb *9009f59838f569318d3efd3e4ddba6396a3a3420d24a9366594d8fd6da33c787237dbd5b194180 *980f9ed363e256c6601a65468dd3380d8b258aa517436e99b80d3398c630d572829020c77fb567 *099210b7203c4109f5a197db63e216c4601a4116c7ce564cf64859a95b3187936ae41683719408 *1fcaec1e13b71806d38861126395171f7529b1ce886f8f86372aa568df95385849367a99c6f3e1 *f1fa527c08178e52b760942211f9907cf498b80533181d4edbfc202248243e64953d266eb30c46 *99b5abcd627b2c30b0e58e68c0f028e2c5e05a266e150ce65b46c37acf6147341099002b1fdca6 *c7c429588bd9190d44c40863feffcb109dba0943986f1757435642d2d1c7b14d9c66b1da1e9324 *8ee0d387c6568f895b0583f98756a8a69db12b26394684f9a05747c42d9786e83476e136890a28 *19bdf001cbc46d94c168ab9a24d6695814a3c88737d02c11b7591a624a0e55adae5b65de93961c *45e6b5bab5e7512e500c3c71ffe49fa28ae5d1656e6473747265616d0a656e646f626a0a353520 *30206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203536203020520a2f *5265736f7572636573203534203020520a2f4d65646961426f78205b302030203539352e323736 *203834312e38395d0a2f506172656e74203537203020520a3e3e20656e646f626a0a3534203020 *6f626a203c3c0a2f466f6e74203c3c202f46343420323320302052202f46313920372030205220 *2f46343920323920302052203e3e0a2f50726f63536574205b202f504446202f54657874205d0a *3e3e20656e646f626a0a36302030206f626a203c3c0a2f4c656e67746820323031302020202020 *200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78dacd19d992 *db36ecdd5fa1491fa29d896989a2aebca56dda6c264db65977f2d0761a59a62d6d644991e475b6 *5f5f80a00e1f72921e53cf8e572008820008022438f968d8c61a7e3f1ab961c19f1bfaccb5fcc0 *3702e1324b7881302a69ac8c9f27b622b00d5bd8cc7702c3773c66d9be116f2616f0b08c1f3b92 *694b331d107d3b9fcc7eb043c3b6586885c67c75c469befcd5b4c5d5eff397b31f841812ba2e0b *42608d14dfbd7876337ffef66aca5dcbe4ec6aea5a9679731572f3d9dbe7af6fbf7b7b7d33a7ce *f92ff32b3b30dfbcbd7ef60ab94e9ecf3b116110734271568b96e6480bc14176e6086f4f0bcb65 *dc0d948c9c7957531b657846a2dc4495cc6fe32a2d1b42d459ba947552ec48dd3dbb58069030e1 *bb8ad7bb24cde4d5d4f16c7329ef65569469bea6367045055bce4f10cbcd6beadcd67249d0cbe8 *3e6ae7c676a94615eb2adad4346445980df537899e6f2717281e0a643bcc15a11228ca812fb73d *9326dfd1d8461212066f08dad64a50040f0465849d27698d906bd2d73323fae469acb9f566524d *f929da9499eeeb843e585af496d0e686070b133a8e5a5ae6e1e2c2ff7e794129d029f0b0ffe3e4 *d7df2d63092ef0127e77f0db4d908a33d70586c0c775d53e98dc4efa9d40bd1d93e35de0064c78 *8e311d4842fe131a210ba107dd270c99e5db9db468e1a469caa7b3d96eb763cb873cdaa4f1b24a *efe5956db2b8d8cc342ecd97f2932d66cba4d964ca500ca013fe34757de6006bf4aa00fc19a798 *e31adbe1d0115573976619410b4d10c5b1aceb7491e9f616a6ad08fc8d7367d631809678a2c7a0 *8becb35364043609addc769d0cdd8bdcbd21c14233dd446b897e61d14465523485cdca7cdd4d14 *f61dbceda0015a800181d31230ea500650bc2d8b577543d8ce51a7271cbfdbbfbe6fdecbaa4e8b *1c1b81d612d16834c440f70361ea749366c055a19b82904a49048a2a5da7799451f770a3626f5c *c09a52d7bc1d51cbf8946c052aec70a717cce1420b86689851e368ad11a701a1c442449a3712a2 *026e656c2ea3262282417c205e847e95d625a1647e9f12cd49cb6d648e2a711ba72808221bf0a3 *28464854fd09815196153b0a259c4354d1c3359b785b37c526fd531e701d460e64529e92abccd2 *386a681d03d75ce09a0560a26d59660f34253423eacd52f41244142bc22817251076a4ac1975bf *c364a4f19d7729beb2d99684273911374c04fb5ba18c9a848d453717f6b7109f8b6efebf11ddfc *f3d16d20c97174f3390b7b6151abdf2cd72ab70bb06602b99bbbe653d493c0472a9a409c531679 *34a6bb0861ea20b800dd07921ce9ce6d0043a79316957f1a17b0c7f266da3c9452ebdcc84fcd2c *01a5218c8fab1c78cc75f80524b38124e32a6b1aa5f26a9bc7b4c750dd6f1ea30364d166b18c08 *836dd0be921fa90de601943d6a095f30d7f72fc112bd24c796081dc6e1c8d8d2b49ebf4b9b648a *f97d5ac9ba2cf25af646d016109fb58007e74bce2fc1fd7b498e2ce0580ef3fca093f6d8028b62 *f970a43dae3fee85b306704163cfbf0403f4921c1b00ee08b61376d2b60618642654f7d0ef873f *30c4593b3801f3edffd111a87faa875fc072708ff9ae7f2e15b5245f978ad85d3d1e9a619d03cb *be8480d44b321e9a35cd3fcb46166781f02e41e55e92719535cd7f918d9cd0823b957d01be3f90 *64241b059db4e7b391388cc7e72de0077071f52ec102bd24a3d9a8a5f917b391e3792c0c2ec205 *7a4946b3514bd31ae0ae9e7e2621e924b497974e141930be0a5d6370fb1a0377dcfe2a0fb0beec *51e36e0bccd5ed081a155cdaf18a7938e29a3eab62ab0a4f00aafb1a7c37785f73849910d3a5aa *9230eaeb2e6100ebfb394010ed4fdd032903605d4e97af00529741f82654ef0268555404e4602a *e03e7a374367e397b1257a49c612624b729010a72b55763ccc8ab05eb3be12339a207868337e11 *7b6220c97158141eb385e8a4a504d1e9fd6896141b39db44f95666b3c5871cbccc9cd6e5b6c9d3 *0f4afd736181fb2173f82538c1409231276849bed209f87927f07ce65cc245ad1764dc0588e44b *3c202bd6c51f955c7a22f8bc13c057d8ee25d8a09764d40934c9573a8173de0984c32ee2a4d80b *32ee0444f2b7c3c0514ab40413967b9c14b10ade1f44b1f5fef6d5f5f7cf6f5fbc79f798106b99 *4b2cc5d66dcd5c0f7b31ffe915415822d5ac8aea806a13a5f9617dff44f913922ca64b6e99d70d *7da3acc6c2aa1d9a2b19355b4ad635f56569d3a8c717801769a3b1aa186a87a7de78a017d4adf5 *903ef3732d290e8ba32c5b44f187965bdef79fcad3b9220cda641cb49c82bd970c6c466557dd65 *84b9cedb11eabd2980a34729e35455df011d47b52a390f79de45f751dd96a503b52aa7ce0fed4a *39415b1d07400b8b20184b662b82f15ce104a27d1e43d4fb65116fb146ce7655dac8c77a504edf *883ef89241af9bf4cc8138994935ec8448bfd4b2aadb334da45f1d9745feb8698f35f792a0bd57 *0768cb3c5a64529f7976fd885aea0151fe002654d5716ce96e584792c3f6d4091b85f138953d8f *bc9bdcec849f47da6b1b58b858a3aa2a7ad02e0f9348fdb4f4fee6c51b7adfbdd54c77491a2704 *2645b6ac9534d38138ad6df42381d7f913ec727a4ff0da3e382a626cab09a97c9cbbfdc0ded7d4 *3950e14018933c0b1a5a6804533d031e24c9ae8054a7cb21c72f7a79dadff6ed1647cfd817e8ae *ee5eba2cf3b57a9b25abecbe209aa475bd6d8dbc783818307096c380afdec121aaba7096724ec5 *620742b10731dc1a76fe052a1fae64656e6473747265616d0a656e646f626a0a35392030206f62 *6a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203630203020520a2f5265736f *7572636573203538203020520a2f4d65646961426f78205b302030203539352e32373620383431 *2e38395d0a2f506172656e74203537203020520a3e3e20656e646f626a0a35382030206f626a20 *3c3c0a2f466f6e74203c3c202f463139203720302052202f46343420323320302052202f463432 *20313720302052202f46343920323920302052203e3e0a2f50726f63536574205b202f50444620 *2f54657874205d0a3e3e20656e646f626a0a36332030206f626a203c3c0a2f4c656e6774682031 *3837312020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a7374726561 *6d0a78dacd5a5b8fdbb8157e9f5f21b8286a6fd70cafa238401fb66d7693206dd39d01fab05da0 *8a2cdb4a34922369329b7fdf23891779646a6680022502c792784c7edfb9f11c6aaebe44243ac0 *e7a7a88a30fc134a22816522a3840b84799cf0a8c9a37df4cf2b3208904831a448124916234c64 *94dd5d619802473f5989ad16d94e64fe7c7bf5ea47ce238291c22abadd3f9ee776f7cb9aa2186d *b652e0f50f9b2d85af0f1b45d73ffcfcfaef377ff9f9ed87dbf1e1cdfbb77f7d7df3e61fffdafc *7afbeed58f444d26655c22c96380d1cf47442f72f5fad642e3822221d9227a2333837fb692818f *05a22219962bdacd9629b53ee455dea45dbeeb6f93f57d5b548771a43be6e3c57fdedcfeedfd46 *f2f51fc6fbacaedaaed980f086acb30e8d4fdf56e3f73ecdbaefc7cb877c9cf4987ed553750ff5 *78b12bf61b92acf779d37fe555d793074a5bc290e06a80382cbb659c189075d38ef745bf16a71a *223cc87f4bef4ea5bef99897f5436f8cef47a9bad20385feb9fd59dba5d52e1d20ec46d9f7457b *1ac786d5e7a02c945e21c302c91a26192ff4c4725dc355333e1b17b563c9fa5dfa35bdc99ae2d4 *8df786a6bc38f7c3b1c88ee3e530dc63dd5ec005266c47974bc7afe932fd7dfedb69d475db1675 *851e3b1bc109c28a4431f8912462703614f7ee06ff3b87834561cd24eec7bf5cfdf22b8e76e094 *efe0f3093e0f57bd1478a480090952420c01797573e542721cb593cc3c9a80dbc69c46db099231 *2055a4908a59efd08442c02b65d1f61af837167897efefc1370415ebb62c76797b044f186efbd1 *26ffd2dff0dedfe09e7875403992f1132a90ff0b15c827546081cc35c00412b181eaf86765dae4 *8e7271a86a73ff98fea20a0845091621e8c021f12a418b182d1cbbbbd24b0c639404c1cb0299d3 *e2184965a01a56d74bb44492a044f100c27682e40231d8a4a805eb98e5e9cef9ec755774a5f6d9 *d50770e7ea26839d664c6567a1bd5a72612163a4980a41250ec95c250914128c59b446278322da *cc91be2ed3ea709f1e8c6240232ec5afbc4a88395249107ee190cc9440198cb1d8a2ed9570dd36 *99a6faca1a1c7d6a574fa52e211838990a20c42748fc76d732c6ee9fdaadb6ba8f1e27084b1e02 *3d87e4023d8912b83432930dfa2b145c835dbf2b8bea73dd5475f7ddf8002f9a952a4448106675 *48fcbcb5cc25dea763ddd5adcb7769d3a4dfc69d79358c1174aa0efe9026121158228090764866 *8a609842485bb0bd1e467274995cdfa2e02404720e89979c1671e4d840ce64a8a7321587be8c8a *102c3941e2dbb48d88ddb43fd6bb6f934dfb48ce776cc861b045bd68c7e6094154250184f804c9 *5c1f9222f858b45e8550ad90377959d6cbc46385186721107748e6bb34a095b03b1b99b352a54b *3f9a9a0d14d1ec729decb097b39088254118db21997316026a7069d10e954906066d4f69361c95 *2c93e402714643887087c44f52cb5892a774b77324173d9831c4a50c81a84332274a38c24458b4 *3674bbc605eef840f723d70fc5ae3bea402618321afefd4a0f6575ef05fab841073bb432c5e1a8 *b31ea58b2aa304094a43080087c45ba71a19abb22caf3a08721f39aca0339721907348bcd59a91 *797611ce94443109c1761324737ab06563a8538c8ca157e6ddb9bb1777072fd344a0588460c809 *92796043b92d716cd13ee724884906bf2101a4ac09126f6b6c64ce36ddde6e63dab1cdf2d850e4 *7bd76a40ce32ddc6620a6731195e4704a00f8764ae0f0979882716edb05755e99d3916199babbe *dc6cbc4d06e3e02d8a84e0d30e899fa996190f45ba6fe5e47877bcfaa3e6be2f4a48c9d77ede0c *d21d0be1607b8264de5c412ce3845ab42e294f4ff2bfe669b9ed9ab46abd6c2954354910567648 *e66ca1f68218b7680ddb36ef740cefee9bb42b6a53672c86306148d1200cec90f8296b9939e5c1 *aec584343b6ba7c97a510918c08750893a20f3d886c2833265b00ea17dd6353d3e4258224c151e *aadaff3fe309920bdd234c20b8456b4fc6eaecfe0e6a49f4d0145deee528e13b04c77640bcfdb1 *1631048bbdcb5b7ff29c7c2edb378e1109e25ddc0489b70433326725d87973959a5ec9d629abdf *79372d2a38224190b740bce1ac458670aeabac2cb2cf8e3a34154505869f6cdf90e7209955eda9 *6eba67453aa788a82094e190ccb5011ec04862d10e7f6e727778921cc383120348630e89dfcdb5 *cc23722fcadb2441348877731324de331323f3c23313d19f99d82393e9e9c88a92c543518ac18d *82788f374132570f1708fa6b8bf6ac3f3b69da69591c7429b32af37db7c89b288e58102ff82648 *2e9c1982109516ed19ef1725f8fe848907f1626f82e442371623299545fbec1c0feeff31cd3e3f *a4cd6ed1ea12231e07617587645eba270431c82646c658bdc9bbfb467bf83e2ddbfc39f98f8804 *8920def54d90780fc78dccf0b2ef0334a0457daf3bd29bfeb861f52cca3c064c21bcf19b20b990 *d33022716cd19ebfe8b99ce5cf523cf8fc73b33c611c8920def94d9078b3bc917932cb37fd3eb7 *4c9c52583784777e1324fe34af655e9ee6f5df1e2be8f91376090883c08a81009e0efe17d288bf *e6656e6473747265616d0a656e646f626a0a36322030206f626a203c3c0a2f54797065202f5061 *67650a2f436f6e74656e7473203633203020520a2f5265736f7572636573203631203020520a2f *4d65646961426f78205b302030203539352e323736203834312e38395d0a2f506172656e742035 *37203020520a3e3e20656e646f626a0a36312030206f626a203c3c0a2f466f6e74203c3c202f46 *343420323320302052202f463139203720302052202f46343920323920302052203e3e0a2f5072 *6f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a36362030206f626a *203c3c0a2f4c656e67746820313830382020202020200a2f46696c746572202f466c6174654465 *636f64650a3e3e0a73747265616d0a78dacd5a6b6fdb3614fdee5fa1a918e66035cda71ea9e321 *6bd3265d966489877d48034cb1e547aa48aeac24ebbfdfa5484b4c5dda2d306044e0d8268fe473 *0ec9cb4b529d4f1ef166f07ae7e51e863f118748e0300abd880b84791071af4cbda9f74787d400 *e2114e50c8222f6401c224f4c6f71d0cf7c0debb06d25b637a06e8d751a7ff96c41ec128c6b137 *9a6edc6934b9ee9260ef66f4beff96731328048a62b8b544bc3e3ebc181d5deef5a8c05d8af67a *02e3eec55e4cbb8797476757af2f4f2e46aa72f4e7688f44ddf3cb93c35379d7ced1a8a1081721 *16f3ad2a18e78847143e60148ab8c6a040a2e07f8bc30040220a64fda7cef50df62670aff7f0ba *83d75347a2281202ac232816a236b473d5692d55b5cd4d36ed1411e201033bb14054448d9d3cf6 *6214430d98c42847228ebd35467ab55fe4e36c31fe082651d1fd8005be5bf51679b6c8d3b6685a *947ba4fb949413f846be344a7a1f13ea0531430c33074c30986c98c0698c280e1ab6d204a9b14c *ab8732579aa749b64aa5d4f5cb2a392288f16887e4f0bf901cee90dc32d96c77cc5010460d5b29 *d93f4bffa994daab6c31497d53eeb6971a7ccf46698f04409fc55e8f52c44850ffc0df57a7276f *8eae8ecffffa690f8647d89da5795a2655ba925fa36e354f55f9b4c8b2e26991cf54f9f1e8f753 *55312e26a92a93ed93150a117665df5ca98ff3e451436ed33497d4a4e704fc123589db520eefe2 *23d4d5e37d523ce552c4beb541618884810bedd910d9684e1252143754a5ccc1bcbacf8683799a *4c86836a5165e9f02281115ba6f9d5b85c2c7543af6443afe6c5d3a0af405617084511162ed8d0 *32b1faa021b5112b436e96e4b38764961ef8ef93477023515ef8da8c727ce0f71b4bd0ddca1f0e *faea7abb313027444ef8d210b1daa2101bae549f97e04805a3bf7f27fbc863a26a7dab68114530 *b77207e2bac1c4267b0d91bafb7d2579f0c3f5eb3787a3c36babc230a8e397030a5b2656851a22 *153e26a592787a72f6dbf9e5d9f9487d3d506ff8955571c0511c39d1a62d13ab620d79a678392f *aa62f54ceeb57af3eb2ae8da042df399ffd22ca59b45ac2e52253776c3044398c60e0c7d8389d5 *300d3107c1cd8d7d8043968d43ee82b69689559b86d4816d57bc1690ec11e244abb54cacca3444 *29ab2773ab2e122212b8906a1b4cacba34a4d6755b4c3e43a642204179969d70333b816aab72b9 *76c1910bca5b2656e51a622aa7c3e314125e1049ad2239ac4da870a1790d2636916b482db24a6e *33bd70bc2dca495a1ef858c7d6719a414cce56cb640cc9feb3f26c994c26bad06e0aac5e68ecc2 *5acb606235454394292564e513a5f66931a9e6073ec1f8475ff5fb71213dc90f7caa0d99a78bd9 *bc82ef748b19410c4b39e682192d13ab191a529b314ef32a0543367252e81cebb474774eca4588 *58e44467689958f56bc877e5a49c0bc419752106b44cac0a35e45986b6b89fadd3339b46c6100f *431734b64c363542808b3869d8d6db2783469d5c487e208cfb7af8fe6ce6a7d7d0abf18d553f25 *4850ea422f6e99d8f56b8cd4af45fab570f5394fee536584922ea773b907a1203607708c4410ba *e040cb64c3018a3962b8652b1d58559f33ad77bac820a4ed97e9639ac8396e5426f94aee594d1e *caa45a14f9017d59c9b285fac2eabdb46db6b038440171a163184cacb6ac31f58e9b9af56b75b8 *fe3f1cf461ac0c7debd28a450205c2853e6030b145ba35446a9d14e3877b98ced053b9a8e47e31 *56cb70e802ed4a5caf4d897afbc56a42c850888903a1d060b2d9e260028d8386ad0a8589ce5bca *74aa1afec5f6ce1d1014f2c005a92d934da932ad2551c3564ad567254a649ba6407befd7e37b59 *9495ec06cdf81eda4de0310a63e242a76f99d8db5b638cd0dfcc7feba960d04fb6c865218a980b *1beb0613bb5c8da90fc81ab9b255ed418c0a14454eb467cbc41ac434e41bf78718617095138dd7 *32b16ad3906fda1f621818b9907fb644acba1442c9d28b289b2c1a638489704097c1c4266c0d51 *ca2afba6170d23845de8852d11ab2685d092b634541020e2c4419bc1c42a4a436c7b1a426f6940 *260033e27a13834002b854c549b698e5077e964eb7aceca9e08838e14843c46a8842d47e983990 *ffc23a0f524e11899d90d732d9d4174590d09386ad99fb1879cffead3c551d7fd40f86603541d6 *3e6c3c4df1ca1f5ec00269513cac8ca70e64ce60b58a6144ffcf433955dfd3973b104b4984e8f6 *93b23544059ea5dd5b1c20e6c46996c1c42a4a43764e102486f5a813e75806139baa354445536b *2495611446d9d723692963ac3d94928822eec4e997c1c4ea87867c4f34252186fb3bd1e02d136b *345d636cd1740aed5c94df184cbf787c6b5b2095248513476606136b37d0905d118cf0007ed585 *23328389559486ec8e604c3ea1e9c2b186c1c4aa4a437666b98452143871586530b1aad210ad4a *9e676e0aab1f4b866b05ccb6ec6b3fc9e01703a08acdca7f011c9297ea656e6473747265616d0a *656e646f626a0a36352030206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e74 *73203636203020520a2f5265736f7572636573203634203020520a2f4d65646961426f78205b30 *2030203539352e323736203834312e38395d0a2f506172656e74203537203020520a3e3e20656e *646f626a0a36342030206f626a203c3c0a2f466f6e74203c3c202f463139203720302052202f46 *343420323320302052202f46343920323920302052203e3e0a2f50726f63536574205b202f5044 *46202f54657874205d0a3e3e20656e646f626a0a37302030206f626a203c3c0a2f4c656e677468 *20313636352020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a737472 *65616d0a78dacd595b6fdb36147ef7afd05bed20627815c56118d0ad699ba058bbdadb1eda0255 *6cda56274b8e24c7cbbfdf21a95b62cbe96ea81038120f8f8ebeefe3e121698f6e3de2ade0f3ca *4b3d0c7f424924b00ca5177281300f42eee5da5b7abf8c8875209e624891d0932c4098486fbe19 *610881bd578d875fb9f81d9f1f67a38b979c7b04238595375b3e8e335b7c185314a0892f051e3f *9ff8142eef268a8e9fbfbffc79fad3fbab7733679cbeb97a71397dfdf6f7c9a7d9f5c54ba23a41 *199748f200609878441a97d1e5ac81c6054542b293e819e78887146e309242591f14182ff8dffa *617040220c4cffede8c327ec2d20d6357cbec0673f325ef032413c429012c2ea389a8e5a255d6f *13e40008015e010720120b4445d8eaa83c8554c00c6342619c94f26a1fc3fbfb8b9b6c71ffc363 *f20487e04abc00a467980d805807492fb1dae76b888504311e3e414cfe17c4e413c45a24fdc42a *1f476c5d6e920362d51c098440eae81b69806410783e464ca9035e600c1d2f44a07b3362902484 *d2aa9d3ce006ea10211191416f1cfb14f636d55dedfe300e8c561882522ab480bc5b781b17b6b3 *b9b12f0802705232b016c680a28207abee8bab0df75e6410b7537a1806c518d06da2ff739830bb *3992943bedc27fa79d2448328849a1938ae3a9a128e244783e9712859236a9f1a07ed55eb593c9 *8d97f16a974f4838d6aefe51c4beabca63e4ece9749ec7dbb22a8f49bcd0c53adb3f4e262638c2 *b28d7d0c250d80819066a260199c2cee5c827e2a38cea372e282218e5d8acfd6809f283c8ee6e5 *2e4adc7dd180755ddb6d12cfa332ce5267880b775de954e751a917ae7973efae651d73b94be7ed *539fafa77eb34a3c3b3742d8f486892b2c96fd3a9eaf8d5cb4895cb866e42e4794a5e38f18d344 *23d7b074a820e379b6d0ce145731b6eed9b2bc77eda2cca378b52e9759be777117ae030cf55b3b *10a156188c495c6ca197927111dd99481422ebbcc852e4ccd3fbcd4d9614ae113519026ef32cbd *d3b955cbf49599335f477751c307ec77511e4737892ece5dfb66573a472babb12cb2f208b28f94 *3204fff8c4ac9596b6b9267a59babbc85a04f4206798ad6b279dda37bac6aeba1a80f6b9f95c17 *952dbbf9a2e7a58b635e58245959b42fddc7e53adb95759c385d55a100fa21e2cfd3376f671321 *c6fe6f1342c8f8f99b5f2f9f01c5907632c7b4a22471374e82908dcb7863871c6cafb3bd065d27 *928fcf9d65bfd6e9037fdae036cfee2b5b3b38d070f7fe11944b9de7960865cc0d1aab920ada69 *56ba9bc8d9ebc13b7756377670e3720a1cf49fd1669be8eaa1d45d75a2373a2d9d47b67cd819e5 *79746ff539770efbeae97574a70f2791450805c7113209e7dab5fda8e8a86fed665c4139210358 *bb3b487ad7eedac74e072cf042431e4d7c41c5f84be177aa9ab118071069ac6f5d1b06004ca457 *0906f599054350a24572a8042cd82268c0b642cc9328d72df1789566753b770af05a81932a80d2 *6138887c6891f4aa50b9d42a400e2ce344f7728349a4e82046b84572c88dc3f94735603ba90eb5 *c70de8d936d749162df4c28f3711a4f84a1767edd86fa23fb46fabca93a30d3bbb6a87fb6d4f24 *2d905e3d9cc791995f8961a4589925ce64ba71d9aeb3322b4ed1a70ac371540c807f07c9a10082 *c011b345db48909945b2e8ccf94a0fcb1b25a6f4a5ab727d520109d721cc8816c821ff00b6f9a4 *c15ad32f74b96cb943f15b1e4c0e50c025453539622b45f34caaab95e2ecca789dd4290810c162 *0842b5480e9582fd3f56ac41db48059b38ff2e4a76ba5f30d0aa2e2847057b56e4f3930ac13187 *0c42a00648bf3ecea596a795c24d9d0ef7eea79739a77036fd86d45dbf6f1f0f8650cc184694a9 *53d5bc763952cecd61f4ded7cba5ddcfd7e97a7200488868c887c0bc45d25fc62b9f9aba3bcc34 *d3325db8c6229befcc99019989698e476d7e9a6d6e8e60a753c2b9f4a43038408caa214cca1649 *7f7daf7c6a6112fd70fc319ce7d3e2b110204fa305cae13c1425be757c6ada12c511937c00e274 *901c8a23a1b848daa03dbefa3d2ef0460010a612ebd9d9cc08129bf3f6494542f32dd810d2a583 *e440118acd519837686b45964996e5ad249dfd30905f649b7629a3ccde93f193292231e2c12052 *a445d29f22954f2d889d05a828b3ed498e2244028703289e1d24fd1c2b9f871ced92f1b5cb35e1 *0120fa863fc37497eb216c9808e348a8f0d4725dbb1c3b7d25d1df5bad09a5f05e3604e22d92de *d5baf6f91f57ebea4b7b25605bc08e216690f48110ee179abaf32f4b87acfe656e647374726561 *6d0a656e646f626a0a36392030206f626a203c3c0a2f54797065202f506167650a2f436f6e7465 *6e7473203730203020520a2f5265736f7572636573203638203020520a2f4d65646961426f7820 *5b302030203539352e323736203834312e38395d0a2f506172656e74203537203020520a3e3e20 *656e646f626a0a36372030206f626a203c3c0a2f54797065202f584f626a6563740a2f53756274 *797065202f496d6167650a2f5769647468203636330a2f486569676874203333360a2f42697473 *506572436f6d706f6e656e7420380a2f436f6c6f725370616365202f4465766963655247420a2f *4c656e67746820333330343320202020200a2f46696c746572202f466c6174654465636f64650a *3e3e0a73747265616d0a78daed7d3da85d4796b5830e6ea0a08209142868c304122818c1041238 *6983030b26688183167c81110e1a3381311334c289311318e160101318d1c180273068820fe4c0 *a04e1aa4e0839a40500e1aee095ea0600205132870a0efdcbf73eb54edb5769d9f3af73d696f1e *e2e9bef7ee3d67dd7d7755ed9fb5debc3133333333333333333333333333333333333333333333 *3333333333333333333333333333333bd7f61eb6d56a75f9cae5db1fdf7ef8ef0f5fffefebb7e6 *965f9ebdfcf25fbebcf10f37569756dd6ddefae0d6e77ffcfcd19f1fad9bb57985ea24e7e1a9ce *f98b9a9999999d244ab7ff7dfdfa75f8253cf8f681736ef7e0e5cb979ffefcf42db8d31ffef387 *76d56eefe8dad56b4f7e7af2ead5abf6c1f6dff6ee3efce8c32523fce3ff7aecfeceb55fed3717 *d149a6dccb49d6535bc4cdccccde9145fc78687df9f2fddfbebfffc16fdef3ffcf5fe8db6cafbf *bbcd769792ffc29d4fee2c16e1db256f7725ed3717627922af32f45e6c11373333335b26be3df9 *bf4fba1fb567d50b7d9b777e7fa7db9088bfb0fedbda16715bc4cdccccccde9a45fcf5ffbe3e56 *c92fad2ef46d766bcd79b891c73fce964e3ff9223ef45e6c1137333333b3457cf06dfee6789be1 *457817debef3f92ab6889b9999992d74c8faafc7dd8f6e7f7cbb7bdcffb7fff28b2f6ffce38d4d *f3db6fb63dde972f7ff8bb0f1f7cfb206f65cfdb83dbdfb9ffa7fbd7ae5edbb599c5afdbfee8c1 *770f6e7d706bf7ccedbfedf70fffede19b5f95e76c2fe9ee1fee5ebe7279773db76ede7af27f9f *c47fd25e61f7cbedd37ef3f537e54b79fb54ed93bffff7efef7bda2fadda8bbff3c99df652d77f *5b0fba4dd42c9d3fbe6bb7dbe1d05e7cfb72495bc27bd4d49b6aaf7cf326fec38d5d07637b91ed *0ddef97defa6b893a82ffaecf9b3f609373990ed5bd9dece939f9ef08b2c748029d7afbacace5e *bd7af5cdbf7ed3fef47825376fb58fecfa210908ede7a2fb69fb27bb6beb3e17cffefacc761466 *66660b2ce22fcf6063dbaec1bb0d47afb7d67ed3c6d27d2bfb95cbe2a056fc2ad7ae5f6bc3efab *ff79d546b67b9fddeb5eb78dae9bd0baadaeb6cfd9c6edf6df5d1abcfd93972f5fb2e7bc7aad5d *94db8bf9fc9f3fef1e8c83f3ddff73378fb76dd86fd759d2b3d782b08bc3adb50b44fb9bed4bb4 *17167e09dd0b0dbd4d8279fc78bb70ef4178feacdb81fcf01f3fcc72c67cfa97a7ddd6e2dea7f7 *766f597ba90ffffde1eef1f257413f6a9fea7823cf7bef267aaa72079872fdaaabbcd9b641ee30 *ef2e7ef3c895fd2389c31cdb2dde7befcb7ff9f2b8cd68d6dde38ffefc28f993e411333333b359 *16f17cc4ac8da2c988d9ee38133fd246c5ee49da00c55fe5f63f1d0ff56de0ddbd6efb4d17e137 *27af6e2df8b7fd5ad09ec8c8733efef1711e39dbf5378ea8c90ad25bcd7ffbfea3ef1fe5a7c276 *95cf13119db56b345985c5db2c5fc4e3ebe916c4763795b4d68f5bc4bb4dd72663f0fa75bef84e *5cc437fef01b7a23d9530d728029d7afba4abb5b385ec9bf1fafa4bd91ee13d15eed3161f5e331 *61d52ef4dde3df7cfdcdb12ff4771fc67eb5bab44a4ef466666666d317f1a3fde6bda1642fbc7a *1e3ff7939f84ec657b841147c0e2ed41f287f1731e8f69bfbe89296b9263f56e8e0cd966fb11a5 *6de3202c5e73fb84641516ffa47c118f131a2d20dde3eda17efa221e77086c4e9afdc574fa22de *9e8ec577733702203ed520079872fdaaabc02b89de85f8c4ddee22bab4407c3ddd0e70ffba67fb *d7fde13f7f88377866666666339ec44b6c532efcfa502e2c2bc8c63f8d4f319d5dbb7a2dae26c7 *afd53d7ef7ffdc8557fe6be91db531bc3d52b551345e083a7bf0dd83e3255dbf2644fe6230c5db *2c5fc4e33b8a3b0cdba561fa22becb0c77eb57bbe63efaf3a34d76e5d7c14e22fee85888e9bf9b *ed7a879e6a90034cba7ecd55d095c4ef42fb3bf1f3c79bc32fbfd8acefed52debe5337fef19831 *78f0eddeb55adf6bd7718b3c6666662759c4dbc35457a26d435997572f5fc4c5a78dcf32bd1f44 *c7a5c2f5abf08eda98fcc37ffcd095bcf3e0dcbba45fe70473c495a3f4c2b845bccb0ca774bb97 *5677ff7037a9958c58c4e1bb899f6a9003cc75fda32f3e7917e216d0f6d3d13ef2f91f3f6f37ba *5d2d6057d6dfed49da8b7c9ba88ccdcccc2ed622be39c3761dd47f795af83c831671c8e87ea968 *fd1a7a4771fa34a68239478bf8af332fe26fb62df7f13931b1e4a8b8f0225ee200b35cff5c8bf8 *26a37e69157f2edcdfb975b3dee4f6fbb38d8ffefc486c1a313333335b66118f8355dc53347111 *8f739813574c340fd51525138b13b67163529c4e27b9f15a8b78cd747a672f5fbe6c4f919be2c8 *07b7924ebf298bf8c4747aa1034cbffeb9d2e96ffae30fed4fbb4eb9db1fdf8e2be9ed7fbbce3a *333333b3e517f1f864710cb6bf4e5dc4779dde794fd7ce768dc449e41cba887ff3afdf882f1daf *2c71d9fdfe57f7e3a9ed74f9d876b58d5b528b1adbfe56b3b14ddad2c439e1849c7689c6b6210e *30d7f58b8f0f6d6ceb3203e270c10ffff9c391a0e0efdc2697feda72e9666666275bc4e3e99e2e *c4a91416eaab6ce67a0e6d725d0b50679ffff1f3645869c422dec64f91e0a50bb3abd52a5e3a37 *23668713e59d4fd214e8fd3fdd4f4690e65dc40b47cce2dec2ddeab03b30b68ff30bd8f55ff536 *33d14933662c79336dc42c86888c980d7280b9ae5f7cbc37ec563062d6ed638fefc56fdeeb26c8 *924c7bee48666666664b2ee23ffcc70f71446a23677b4a8a57f6718bf89b3747569376316d83e7 *264efeba39bbed48399213e888457cf7ccedf97ac7f5d13e797b9a7bf0dd835d0d74330eff97a7 *f901b0bbb5f6323627c45f37cbcd6efa2c0fc8332ee222d94bce101267711ffff8b8bdafddee22 *872b7fa1f67736bb9a5f370b50fb4d475ad22e46c9dcd632642fe50e30d7f5a3c773b297eeda72 *b2973cff9054bd7befd17f592eddcccc6cfee57bd052de1e5d374bdb6ff6e3e4ed5ad62e7fe584 *a2e455daf34b7b0adbb06e6eb93adbaff62c7cf70f7773b619f49ce8f176fd6d57c0f640d73e79 *fb9c7b02d51d61ec471f3efcb787907ce3d70d9b477b8f9bbf6a97fbdf6c96fbbcb259789bfcd7 *9231f30f7fb7a75d6d5f71c717975f5dbb896acfa41db96bfb6ffbfd97fff225cfd9b62b637bcb *ed4d6dfe3086e2771fb6fb93789e6e28d4f12da7b4abbf4b695705ca973207a877fdf1951c6957 *df83b4abb1b51729aed4dde3964b37333333b3ac88999999999999992de266666666666666b688 *9b9999999999d9226e8bb89999999999d9055dbe6d293733333333333333333333333333333333 *333333333333333333333333333333333333333333333333333333333333333333333333333333 *333333333333333333333333333333333333333333333333333333333333333333333333333333 *333333333333333333333333333333333333333333333333333333333333333333333333333333 *33333333333333333333333333333333333333333333333333bb40f65e64fc41333333333333b3 *894b6db2bc921f0d7d72f541333333333333b3894bf9a01fd9226e6666666666668bb899999999 *9999992de2666666666666b688f31fbdfedfd7f7bfba7fedfab5d5d6ae5dbdf6cdd7dfbc7efd7a *dc22be7fb6abc7676bffdb3e686f8d9999999999d9bc8bf8abff79f5fedfbfdf3e78e7933bafb6 *76f70f77dbffdeba792b5ec70b17f1eed96effd3edf6fbd6eefcfe4efbdf76296fbfb777c7cccc *ccccccac64112716fffee77ffc7cf7e0fa6febdd23ed37bb471e7cfb60e822de3d9bff6fbf7ba4 *fd66f748fb237b77cccccccccccc663c895fbe7c397df0d7fd6fdef8c71b4317f1eed9ba537cfb *cdee91cb572edbbb63666666666636e322fede6fe0817d7569357411ef9e4df8b5df58ff9b9999 *999999599d93f8af839fd64ee2666666666666275cc4ef7d766ff7e0b3e7cfe2c7fd7ffb6bd7af *0d5dc4ad266e6666666666b6d822bee927ffeda69fbc5db237ebf8af9bb3f3939f9ebcfff7ef3f *fdf9e9d045fcd5ab43affbeff7bdeed69d6e666666666656be7c0fe54e6f97d7fb7fdacf896ff2 *de972fb72b6f7c302f79ceee973773e27feacf89ffc9e6c4cdcccccccccccccccccccccccccccc *cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc *cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc *cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc *cccccccccccccccccccccccccccccccccccccccccccccccccccccccc2e8685f756db2f77f866ff *e58fdf3b7ffc7715fdebfaff5d65bf163fa78b1e71bef72aaeff3bbd6fb24b72a1ffd2c913f62f *3eff65273d5befca037e3cfe26b972fabaf032f25734fc0d7fc3dff037fc67c1ffed5eb87348bd *80f62a01277ec7738749deb5fcbdce9ed001b711ae2a00478a7ec179c913f20f0bfe64b9207b60 *7e833d7cbc72d9ab1c01c3dff037fc0d7fc37f31fcdf96b5db89bb419fbd0bd95b2ceeaf44b872 *6cd3a7027b3627ed48f7fff5f2bed1819d98937698ce4b5bb8c47bc10d928f00da1c26d009201b *fe86bfe16ff81bfe0be37f9113e6e88d43591471d7246edb10b679b245de7c7ab84d75a22778d9 *69854dace415824f7a0c51e663c236157f76560061c3dff037fc0d7fc3ff94f85f88e51b945d9c *87ae226ccc3c7cb3567867c5f66381bda7d09190d7651b42877ed9d3728c94f892dd434adac81f *1cc3dff037fc0d7fc3ff3ce37f1192e7e8f6d936cc83760b9ecc917a185660c785b22b0e97661c *2e30e59b522195e4e97611358778f91ee5bdaeef57670c7fc3dff037fc0dff738eff793d80a37b *77f86657b43842b63728b193a75f56a096e19073923d55bf4b53ecc770c86fe9ed3b745f7853ea *b04719fe86bfe16ff81bfee71dff735601772445e341d7229d3b70621b067a2129bda3a67d0407 *0870abe6e86484a31519e759ff83da3782fa3dd8951bfe86bfe16ff81bfee71cff73520107db30 *f8df6c760f35f3c3a904f10fc5bd16699ed47220c206cfe3560dafe4a31cd99e21e7a4a3a0c205 *1bfe86bfe16ff81bfe170eff73d2828e5a114294b14163869ee53d94c48807efa6076f2b9d4614 *460e793364d03b438e1918e9bfbd4bf2cafc82324a69f81bfe86bfe16ff85f44fc4fd2c3e65912 *83ecc47a230c7402c2158cf0a38d9febcfe393ada04055e401d391675d9762b3a2e38592a0a46b *f25da5f302cf80e16ff81bfe86bfe17fb1f15ffe0ceef56d98c35dfa2bca95071bfe7dd176c849 *53032edb7016bd775e797246eba716473c28d3f8022223c3dff037fc0d7fc3ff6dc27fd933b898 *c460c383c52cb529b51d19ebc3a8b28948c9bb48b106d2127a3c43816722d05e91901c8a139a86 *bfe16ff81bfe86ffdb86ff82757034bfafccf779adfd0fed55c49c8cc7250c0ff75dd001bcb2f7 *13ffca698f38f14a080b31f6ba95e16ff81bfe86bfe1ff76e3bff0313c94ee4674063faf940c9c *4638b002c508b919129315383ee21770f76360f7e200abb0e8aee8a90c7fc3dff037fc0dffb719 *ffda8c2ec9be429b2658a93a3bda801e1ce8f342dfa35a8ce835618af919719621d9f279dcc728 *8e04525661d6681170d1caf037fc0d7fc3dff07f2bf1af46a9ea02a3bf7318d59cd606f504ae0a *b9e57103032a88ac08a93e9ee6139fc711125d7150915207ebd915d0eb68f81bfe86bfe16ff8bf *9df8573d8693897ec2314b697c1c6a9cf0704e1f8e4878bd25032688387d01adf840bdbf8019f9 *8ab9075786bfe16ff81bfe86ffbb837f9d7e361714c21c911600d65c3c4e50e01249495b82e383 *fcbe4f3280f8fa38edad9815f132e780c30d1b0443e80686bfe16ff81bfe86ff5b8fffeceaa2a4 *9390f4fed10ccccacb35119896c11a31b08d8152ea919cc9ca4b39a200e7291c7966246aa329cb *c37e4ec3dff037fc0d7fc3ffadc7bf06b50b95528504f83e65d8930b0752830469879049ed684e *a3701727b7507a38632833136adcfbfc9352a47c67f81bfe86bfe16ff8bfadf8cfa8318aee2e68 *bd7c62c30026a42503f58e36fcc3c405fa134fbd8e32d8af3cd0c2f38ca7c8894e8264e5bd5c51 *32fc0d7fc3dff037fcdf21fc67694af7e03dc5c23472e71eca2750115b46cf4b7cc6535a3caf74 *fba7170048ff54b53bb94aa24d1c24f762f81bfe86bfe16ff8bfa3f8cf74127741ab8cd0d608d4 *d6c8ca25e2ad115220f25a94ea5f9c0e606d151e63eea17ba3197fb92dd32b3523c3dff037fc0d *7fc3ff9dc07faea674aff3d238facbca4e4c2c3a78ad7f0f88db3ab003141d406412407519aeba *eb0a8629904aef2a40a605c3dff037fc0d7fc3ffddc57fc6d970b1d1cee35d106f6300fc787054 *10bcad8e2bec78901b09199b9f573c048e0d8a5d19a0c0e14a8879c996d5f037fc0d7fc3dff07f *a7f09f3c5ce602d48b5f0586aac3547e682a01f616d20d0caf59a8f3868c85afe4963d6cde7005 *9c0688b77065f81bfe86bfe16ff81bfe1305cb3c23c671989f47ee19c0ccb40e4dde49191247ca *1c588c06b5023a40feef08518f87638f9cdc6055d2955142bf6ff81bfe86bfe16ff8bf23f84f13 *2cd3af531a9a731c9080bbf13dec1f58e59df9419bf59344e79d4ad4e321e981a383158eb63a28 *2c3d780768f81bfe86bfe16ff8bfbbf88f3d893b3ce62f244c3ce4b8931ff178d2506d5a20bc04 *62a320e6ce15331b2b510716a9f5893ab67433b94284f964a6d2f037fc0d7fc3dff07f37f19fa3 *359db4def512f819398fcc72e3f1937ba5f42f82c989015977a276a77c73a58f631424675680b7 *dff037fc0d7fc3dff037fcdd88151cebc0a24e06a4d2225c1e55935921591ca042bb0a587d868e *013a52e6c0fb4f85714815b8215917de5469f81bfe86bfe16ff8bfb3f88f133d112f1524254807 *23dbd2d042bfc3291a07d87419f92daace00461dc86dab669c0210eb096c3e91978a0c7fc3dff0 *37fc0dff7717ffb1a227c25cbc87d900a400bb1259eef3967bb10d80ef093deb0d40950b59cb55 *dc0a22a59e9cd21f745328fd159ac29de16ff81bfe86bfe16ff8afa6a5d35798a6de05a6062b76 *0c3abe2149721db866c1e8f80a7229622fa22be12602751c075c5d64df5d0559489715470c7fc3 *dff037fc0dff7713ff71ade9b842b1ca25d83c9691f59086cee12efd55d08b140eefb8948e41b2 *610ba9c21dac77f0c609f4859975e18884e16ff81bfe86bfe1ff2ee33f2d9d2e743248890ba7cd *0ba0e9395792c6c1759995071516b583517b2d1179e44b8e3215c059064a1c64f81bfe86bfe16f *f81bfe6eac8cb8700b1e743b684cb9b893e1d2e5f5d7f75f36eb9767d15793fdbbf90ae97f9bfe *eff7fea4f7cbeb1f7f0857aea9ecfd6ae3a597d34ae93beb41b20510033acea250177ff62387db *5357deb997df3e2cc43ffd3efe69933f43387ef3fda3e02e5f54fc9d5bfffc647f3b2902c093eb *f8ffe623f0d19d11febfbe7a6bfdc597ebef1fbd7cfe54b8b633f13d4dee371c1f7c11da4f62fb *9e6e9ef3a33b2d3e17d8ffb7dfb737f2f285afe8ffcd36765dbd712efcbfbd8ccfeeadbf7bb079 *135f04e69c4df4e0f9f07f19ffe7cf5efef878fdd537eb4fee86eb37ce73fc1f5713071f8a9276 *7ac79972e3a7ddf843b396df65fe8e379a27f403cbfaf9d376c320d665343a7d984bf1b852431a *3f3ca324720be35f963d13b697adf30fc21f7e2acfa44f5cfcf5d3930b897fbb3b6d5770e166c5 *9853dfffbff812d52505ffbf7ea38d6c9be5a9b72e839768c8d526d71912285a88da17ea16a90b *e4ff9bd8d542b480ffb7ebf82fbe3d839cccff3fbebd6eb7eb476718b53939b5ff97e0dfae11ed *1625f2c67314ff8772aed2c97aa5639fd623b25ac6f51b29e0d11634fbecafcb6248405bdcf567 *f724199d5501b5ce0a33f9bb2037582a438578247039fc812a9fc88fd47fc50f6e8dc03f7d2b51 *f0cf4e73a1dd275f2cfcdde576ef9106aea67f2c6dfa91adb2ffef4ee2baffdfbcb5dd9e0539de *a2e74fcf3e81beb9f92a105ab8dad3d045f1ffcdbf57ae2de6ff9bb7afddea2cecffed2ef48b2f *3767d533b0f635d2d2dc648be3f9f0ff41f86f56f3c81bcf43fc1fa77e22b6c197f41288bc37e2 *645cbbaa4a9937e98d4b3ef50ddff0af05dfd81f46085180387d0049ef4bd8f5c98405d5ed5d08 *ff802f9e4f61acbfb83f027f79eb4e3e65dd79ed8bfb1709ff4bbb159c60828e33b5fcff109128 *51c6956b9bb498f836b1b30f5eeec5234f9305eaf8379f3fdb6ed8cebbffef773b4bf9ff3ea9be *a0ffaf3ffdbc97306fc0513a7f2bc941fb74fe3f12ffd61b3fbe7d4ee2ff38b2173eb6cff555c5 *fd6dbe4fdeecf41af29e8a299a00766221f5abfc83b05dc4bd32f58fa8f384640857b823ef3e9e *fd774be28f73897cc262fbc60dc75f0efec9c7a7113ed4d11b77eef177db2cfa193d879ee18857 *c1ff0fcb22e3d9d8bea1107fe160c5be8296f9c47f723895b74be479f6ff2819b584ffefba7a96 *f1ff4d7674b7054ddeee92f4b59a0f3f85ff4fc47fdb4ff5fec9e3cf849a384a4f39340b8fc6f9 *45569f7de86868ab43b32ef0a875c95b19950551ee02c9d73a9412f19916006d8a90871ab0f66e *5dfce93104920d6e775ff747e08f77e981bdd78745fc02e01fd7c1852327c822d6f4fff5a112e1 *e5d91fd706a8e3ae03e02fbf6bf142239eaccb8f60d2ed1c12c8e7d1ffb727f10f17f3ffcde33f *3e5ec0ffb3d4285f37c57c4b3857fe3f0ffe2fc2faa3dba78d3f63e7c41dda54f8618ddc480dc7 *45073ad0e0c1b767c8a3845ec7b03b897bdc4e80a5738e0d8768e6916c0378a8e19db7b5f10f05 *4c47e208a47412d7f12fdda5271fffec8d3ba7f85f4acee04159c5581fce3cfedfd5f5a0aef1cd *5bc7e66a8c7f9693c4354a210c065c515532a82d9ed121e81cf9ff661fdb2ee24bf9ff6633b649 *a7d7f5fff5770f70751ba5cd03f6e7d3fbff8cf86f3e4d9f7e7ec2f83362c48c6e1bd81ec343a9 *17610fb35f0b1a929c09f81bb05d44e5b6a293381c15446d098402286e1f2aa1d907223b15f147 *84bd88d8304da70fc45ff8133de6276fdc79c53fe9456f68a06b68817826ff4fb2e8424ee9933b *85f8b32373da8394fd7eb3860734ded37538041d667fce91ff6f7ef9835b8bf9ffe64b3889cfe7 *ff972e47c32641ab5c4beb35eb8b388dffcf8cffaeaef7edc353c59f11dde9a2962bddd03ac05f *b70a38ff9f9ec49bec9d3d2b702132a1d07fcbc49ab8d7c9f39d2a8417145e20070a2884b46709 *fc81e0aff31ad552ef8d2bc65fafa68181943c8572bef08f7bd11b5efc558fb1f3f87fb7827bb9 *28d0aee077cbf197728c415ed0b91b94b88794f0dc1605ce91ff6f93181f2ee6ff7ba68b6afecf *e611c4b4b3bc2e9f23ff9f1dffee91cd0cda29e2cf9493b8c7122dd24e18cdb9cbf9ae43635bc0 *3c001aad44834a78a137df7a6c6c93d9e93da6bfc3baedbc8b55aee511d62042e65f097f4cc24f *54fff237ae147fa58799a485b319e773847f9e452f3d6b04f8a369fedfcfa24b0edcaee043f02f *684e0bd2ac5960bfd39414588f2ed42fee9fd8ffc33e9dbe90ff6727f139fdff48d944f12f1de8 *3e07fe5f05ff6c4bb970fc19c5d82693de7b4c30eb65567959e3d593031d9a3b206184848e4638 *d011ce5e4a3491de35e880829a35a88f9174c356c53f3f86781a09bb07e514caa0fd33fc080bcb *417c123f5ff8a32c3aaaee355afe79b2ff874fee10fa88cd066c7f061f80ffb031b1869cad0a5a *dd70f63e19243fa1ffefdb0996f2fff8243eafffef3bd946544fc4eb3f07fe5f09ffc4ffc307b7 *168e3f7391bde0cdaabc77f54c21fd505a15dc40dd9cd3aa076eb438ac058eabc1829c9bc3aa73 *44d25d3ed07941af073246d6c31f8702defd8b670329fefa4f418f13aa899f18ff6e1e9c77e0f0 *ece2acfedfaf834b1e7efd46469859d27eb666041a45f9f3201fd350b9533c5efde2136eb753f9 *7fd4d8b684ffa39af844ff5f5fbd310cffc2ff9eceff2be29ff8ff0bbfa5835e2efe8ce54e77e2 *4c3a1ecb826a2c20e790d4c4c378425dbdd5e1984e2f93a52b57d745f47a0eecc448734ece875f *17ffa074513ac456ddeb4e2fc69fb23cb125207ee3ce09fe8779f0203084432f2dcc2e8ef4ff24 *e12cbc71eef2cbbf3e1b813fbc5a78a841ac6e2515cc20717c45c1734b9e7c5affdf8f982de5ff *9b3ff9f1f1ecfe7fe4c32fc79f1ccc4fedff75f1cf8f84df3f5a32fe8c1b31f3452ce2989610d0 *29c4bf7f3cd029799840a9ffd6726524fbf36edc3857adf5525b8b07337da82d416ba4418fc823 *060be0efe1b88de33a11c7457c08fe120d234fbdf6c85ece11fecef538d9f8a9a129080e93fd7f *974527d7bc79d7fefc701cfe0ad375a3b2bed0c74b1be10ecef0f39393fbbfefd2e98bf8ff219d *3ea7ffa71fe162fcf5918453f87f6dfc45ff0f1fdf5e2cfe0c4da77b4c5ce629a71919e510499b *f79c21bca086de4dd6dc2883df6565fdc0ee41b42dc74c3b0e934e10fd7787a99babe08f0a3a40 *11269e13bf3f027f3847ac752f4b6fdce9f08775f0b5324ad3cb211776d714f9ffbad78beec4cd *e7faa33ba3f1d759ac1b2df7def4efbd9128b89bd258bae58139a5ff6fb2885d3abdbeff77e9f4 *d9fcffcab5f52f7e34fe7aaff8b2febf04fe92ff6f44b5968a3f63f5c4650102d0112aeba97926 *ef926565b9200e09268dba07136ae2d247d579e9538f4b1eb24aacd6dbcca4e197c4df637d5bc8 *3699a4d387e08fe502036b506962c6b653e37fec450fac1946e9e00a3acd45b1ffc7ea3001496d *b6972d688996e22fdd2cd6b068b4dee6010a56011d0fb79d4527f3ff634d7c11ffdfa5d367f4ff *0dafcb34fccf8fff2f843ff0ffb88fb46afc9950132fd933a003acb03949a2624abb5a94a841b5 *8f2010e3a7934af7098f87d7a74b382514e7879177d1984d6209fcf35c224954cabbaf21f87389 *07c2d7d4df7d9d0eff6e05e7214b1da44235c7e1fedf299b7826d4e5fae43c83f12fc8bb86e2fe *229521335049afa31274fb769ccafff702284bf97f3f9d3ed9ff3bfdb529f89f0fff5f0c7fe8c9 *dbc3f802f1671cd98bc78dd01e0e5a12e508e11b569711dfa342b4c196325131f3f490eb95ccaa *986a73801f4664e37162956449fc4904f09085c0a5ca35c5f80facc1f5f8724f8f7fb282f390c5 *875c86228026effa825f5097c15d3ee64e47e10fe77d906878a3296c967741930dccd7f74fe5ff *21ee4eafeffffd74fa54ff977774c3f13fb9ff2f8a3ff6ff5d2aac76fc19a16246b438bd32dd40 *6a04e9fa9876a7376b4d779ed6321ab101f2c8232471a78bbc4cce2ba92a4749980790e2a286f3 *65f0a7e3368e4cde4929141d7f5d925854d3388b07fc4f847faf0e3ee83042e8c143910e32f0ff *6d1e0f46f218a8fd8e6b02fe7039e64c1d256d48853caeb28ec67a7df5d649fc7faf62b694ff77 *73e2b3f8ff76c6701efc4fe8ff4bc61fc5ff7b958e5af17f949e38d4e25487a9712537ad0248dd *e954bbb6488816d565425f0c4b16262312a55e919f73541a4926c5f550037109fc511f14d919a6 *b38143f0975b431b75d62324b3814be39f70b2a9c3a44c7919b0370ff4ff481fdc212661df899b *bff013f11f52ee14278f8a416bf8e73a7daafed2b69cff1fa54817f1ffdd497c16ff0f1fdf9e11 *ff53f9ffb8f85fcfffb7323d75e3ffa8ee74650a83bf3a9571141bdb682f62fe5e3785e592de5b *968c1b7b4c5a1bf41115943f91c7fc031e1f20d1b836fe0136dfae72a004e59a81f8531263c6fb *24d54116c2ffc88bde50f267bdbd362841a6d8ffb34e36d444bd6d41dc31ac4ec35f0bc8b4f459 *c80343b42f1b267676e8705bd4ff7bdde9f5fd3fa9894ff1ff754cb23a07fecbfbffe8f85fcfff *d79f7e5e3bfe8fd21327b357480e1565ab1c1a7e3f32b69d6943fa900d800ac8f67f21a65da53b *6d227de23c4aaf812d16aed9410dd9c5f0f750705361c289d2e903f02f8beac2472c4fa72f847f *ccc9a61c2e024cd335eabf03fcbfab8393f7ae97ecfaf9c974fcf578ae888f072864d90c1f184f *c6cdb6abdbc2fe1fa5d397f0ff3c9d3edaff0f6999d9f05fd8ffa7c4ff7afe7f78772ac6ffe18d *6d0e24931d4edcb99029af51cdb5fe81ae59e35c471046fc74cd5981682866ef1c327c4dd48a85 *3e58af108688d93f273e6d6dfcd10cacaae4751cf01f823f6883d1068e52e59aa5f0bf74e06463 *fa4a01286fae0b44be70d611f87f9c45e74316fb1bb9f2fe2cf8d3ee621e6c83c6748de7881147 *7786ff8ec87a49ffdf4b912ee5ff71e1758aff6f48772be0bf98ff4f8cff55fdbf76fc9f701227 *c559a792907b38f7b1124ee2a2da5dd100be46a57b766c72461b1e5eb050c75171bf99030a68ac *8d7631fcbd524f8459c7544fbc0c7f48e0a955d9320dd9faf8e7bde80d5dc2ceb425acd14e319a *ffaf537551a518b4d96b7d7a6f16fccbc68103bca9a6449a6a20df578c7f542f5ec6fff752a44b *f9ffeeac37ddfff77227b3e3bf88ff4f8fff55fdbf5fd6993ffe8fd613272d1388bf37e8eddf11 *037fba166859172e407ca668c767b4ab70ac0f1f7591fa001cdcf620cb0724e3574be2cf6bfdd2 *f13fa6da1b8cff00e1aafe679968c856c17f5707473d33cdd0e9955050fe53fc3f16f042f423f9 *567fab133d03fe6c50a848a72cc08a64c373a1a5f82795f1dafe0f4fe275fc3f124099e4ff2fbf *7f5409ffdafe3f4bfcafeaffa8f976aef83f4e8a942a02205a39d89b17a08e46d04609b82c4ea0 *3b3d2486b552755dd106dec3023adbe1075cfef058e9a636fe058db832e98d2e80227fd008fd72 *207d32ed9e6131fcf7ca267c1cb511276202ad0baf4be51832ffcff48b9d876a86bd14dc5cf8cb *03413c5b5ea2d77c569e72d7f03fa8512ce3ff7e77125fcaff0fa5ffa9feff3261ed9b11ff9afe *3f57fcafeaffebef1f558dffe3d2e9b46186f45fa14abd307c1d9dc403db0a16edd9404382306e *acab17f9b24671494bce217cf8b837aad655c5df17789dd4a39b29d794e1af09fbc2cc589e4eaf *85bf439d6ca14c1802919885d4c911e773e6ff9db2892f5b8c8ebf16f3824ec39f2dd08d563a84 *e3664119f01988ff76cc6721ff0f02ed6a45ff8f46cc26f97f55fc2bf9ff8cf1bfaefffff4a46a *fc1f41f6a2f7ccd073221afa48f2fc309d4ec0d41971d153854cd112b23a88fac2a2d402e06176 *84c1156541c187b422fe435f25082c3d03f0d7893ee4e35bd8f1e5d6c65f982653d5949a82c9e8 *12cd4d005a5f1f1ce687c571d4cd70d94cf8eb53b42ae16aa3cd95f3537c01fe5b559485fcff38 *27be88ff774df893fcffea8daaf8d7f0ff79e37f6dffaf1affc791bd789dc27d45a47f3c209a8b *ff9bb277b2825a903b18d50e8d662de968c032a2a72a7298cf9ce9178bbd349eb53d2c843f7ea1 *157630a4213bf49348c642b37c723462560bff649a0c4a7b14f4d6223ea8a68c5abc47e708c7a6 *72b791446ae6c19ff1743505fad188f84be1d91888ff2f7e31ff3fce892fe2fff188d978ffbf79 *ab2efe73fbffecf1bfb6ff578dff434fe228567826f687f887918688632366aad41d1b0f0c28b3 *97f51e30123cc2bbe835c552aa54be52c5c816c3bf90d82abf5999a547c35f1b3285a281fd8ec4 *0af877d364f919412fea150fd5924c5df63c092f7abe8147b238dd23db2ea679f02f1d0c97cf2c *c5125793f13fe83b57f77f7f3c892fe1ff5d4d7c8aff6f333375f12ff1fff646d6df3f5a7f71bf *fd50475ff7c1f7f957fad3973f3eee0f9254c1bfc4ffe351c7d9e3fff093b87ae2836d54624e00 *4db54727f120ed1203abb8e9e47ba91fc627712e38883891449a085fc6f3564805b024feb45e23 *b334fbf48d1b80bfb245c71c4df180fffcf83bb73f8393621c9cab45471be2ba01272143540767 *f8e38995e383c7d6f4c9f8b3b661ae34aa3ede9004ec70fcbf7db88cff0301945afe1f75a78ff7 *ffb47659037fe2ffedf56fb75873e19ffabfbbdc7e6a5efef5592dfc0bfc3fdcfcb05efc9f2645 *0a05ef48b75501079a0b624dbca47cd600c61ec230d0cfca7a4d27aea078211ce7a958b903cd87 *84fbb13afe2025cb5e22d3901d80ff109dca94eca516fe42167d605b7553a69d7486b5909a35ed *4567b4d81e0b7fb4479eb9f067b49950e389726735eaa17e14fe2ffc32fe2f33b655f3ff2e9d3e *c5ff19c77555ffffc5af8fabdb6cf8437e8fcfeed5c0bfc4ffa593f86cf17fd49c78cf2b484f9d *87a92ac76555a3747aa00d0f4168053c2bef932107ba1ec18ed70b6a8eb54501bae6127e2d9410 *ab8d3fa9e080ff3a81f4be187f986e3d5376cb87376e6efc057551dc96837a7a39435451ed2fe4 *ca261c7f4ec6bbcf96b48bf84cf80b9fbe7221cb127eadf9f05f7f747b01ff3f36ff2fe2ff8793 *f824ff675dc4f5fcff855f5fbd51057f42469d8ff02fe2ffdb9378adf83f79c40cd6ddcac7a3a4 *f7c2b19ab8229a13c01bc406540f4dce8a92384dc411766599240a937220e2ebe5f0f774300d94 *1eb28ec462fcf5c62734247b1c319b0fff9e361951410a940a630d55ba14ad4389c720657481f8 *7be612ae974e9f037f7847493ee1856fcf416d286b4f5e1b72b0fd05902d7a981dfff5770f16f0 *7f1fa7d3ebfb7fc4d836deffa51353a8edff2d4a95f0e7febf8ecfe34bf97f77b335e2ffa89ab8 *389becd47d1428e2cb338cb29e38d3b4a5c9494d422e1e3746944722e9a26763292ca509ead488 *3b571effac873f6aef41128d690a6520feb8812428a1e09042990d7fe7227d70e9ecdc682ccd25 *37352477b7ab8317e24fb4abd274fa1cf8cb2d4ffd98b6fec587c399ab97737e81c9b76be0ff22 *2ce0ff7d3df1eafedf71a74ff1fffe444935fca397c8f94f66c45ff7ff1db3cd52fedffebbab89 *578aff2346cc00a42bad62ab2aaf39c9aff8787e289ac4e724f9928e86385402048f9233afc389 *2c87a9711937bb87c39e15f10f8c7f80493b09b38105f8174c9404f1c3d597229d8cff91d1850a *723543d99549913170aaab75344d56823f1e763e3e783c894fc61f8a5cc4b77c682a4bafedfa0d *064b05fc0f7b898afe9f36b655f6ffbe14e948ff97e483ebfaffb693ad16feaaffaf3ffd7c51ff *6f12219e99e3ff68b2179cdc40fc9f0e4ba30a42ab69699573de3678d4b4a83723748c6daace20 *699f50a516bcdcabe0080e202d501d7fdc5641482977f5b5fb23f02fe64f9007fce7c1bf9745e7 *de5530dc9adc4bc3ef5a2e85c7d36485f8834e89fe2a93d6c4c7e3cf46689bde54bb88fffabb07 *ba3ae47cf8c7ac2f95fc7ff3fdcd5b8bf9ff26761dd2e9a3fdbf478fb980ff6fc6f66be2aff9ff *46c26f41ffdfd50eeac5ff8927f1003bac5ca069fc2077e8b994829b1036aafd6ca4cd267bda7e *695566344574c4d20e0a8a1e628e47487eeecb46bce7c51f65aef28e3ecfea20a5f883b954b5c7 *f5d8cc3015ffae17bd2192078523de41d1fbe0ec4f4756d5bb23f0d7f22ddd497c1efce57b49ba *467b05c13efe57aeb16ae3dcf8af9f3fadedff3e696cabecff3ba5b689fe2ff4b154f5ff48b1a5 *0afe9aff6fd6975ffc62fe7f3889d78aff43bbd33d630b1753048e138ba165b1274b7d86a9e9e5 *72462818f7cb8566204d8a589b9008769453b9b881f470acc0a933e0f5f017b70122c72f66031b *80bfc67618d03e3f27bd1f83bf78065786a142516f79b99436647419863f9d1476c7eef499f0c7 *bd4f47a076adb908ff9ea64c7dfcc3d51b55fd7faf62b694fff7d3e923fdbfa73c58dfffd75fdf *af8abfeaff7d15bfeafedf9dc42bc5ff51b4ab687ccff9b27a719edacddb307afd514d81429c3e *981908d184989505fb4087377b8e13d77bda5709a839e436b6daf8934c4ea09f9a74aca00c7f7c *60e142454963db28fc2f45eaa20deeaf68b4934843bb2e1bd42c94b396856e9a6c04fe483f377e *c25e3a7d1afe25ac17491f724ae4be2b502e85fffab37b55fd7fcf62ba94ff7707db29f127a34a *aeebfff189a90afe9aff7bd41652c7ff3b3ddc4af17f444ddc83417b92f0f7f0fa657a679ff647 *8552dd9ca684a39e8c1bcb5b560f323fa2f291c7fd2460de5f616bc7e47b15f1c797e12829413e *625684bf225f8876cb3daabd31f8f73ad9f844b3a28214a8aa51d09a827a8c2e53f0d77469b7eb *a6d89d3e0a7fad26b8d56ab9798bf9ff3ea3be14fe7b49a95afe9f8d98d5f5ff5d4d7c62fcc1ba *cf55fc3f1b059a197fd5ffa37dec12fe1f9fc46bc4ff51642f8c4ba4b8cb483e4b4a52a46b38fe *8092e72a9373d62697af05e2a608f51312dd8484ceda53f924f0548a12620dfce95e9795d8d299 *d332fc8b0bc7e9aff549ef07e21fab8b36e8c20a94109b62f52eb999ed18404294451f873f6a0d *cae6c4e7c1bf4461b93d8670ffef6742aae3bfe1e1ace6ff87eef485fc3f92221d1f7fe088591d *fca551a039f157fd7fb36f39ee63abfb7f7c12af11ff47d1aec2ac6c410ec489f371b9f24e3a27 *ae0bcf113aacc0d244a9008a7c531e5ebf382aaea87f020159c67e8f45e1abe0ef69160eec8425 *e59a32fc01dda858534bb9d347e2bfab83375499888b31356a64a65a5dd92fe4bce823f0079cd2 *3d2711d2e963f1d7f49dc381389af9ff860f7341fc3be69c1afebfaf892fe5ff714d7c74fc1158 *16abe2ffc5fdaaf8abfe2f4c59d6f4ffe8245e25fe8f3889a30c408ca42faddd6b2771babd2950 *9c2f10b36be293b8f378c6419b7d9093d59ed1c2acb2117e91084efe6056c53fa7a6a45deea272 *cd00fc9521239ce28ba44887e09f74b23574bae46cad9f38d45aa7d6e3baeb459f8e3fef75cc0a *8253f1679a925d41f0e62dc5ffaf5c5b12ff8869647efff7f99c784dffef54cca6c49f9494a336 *fe51dab306feaafff7e403eafbff8e76b55efc1f2b8052246f2de60150623f593d29674860e4b7 *f2830acf5b32624627c11d51830dac61123de83027aaf3cad6a216fe5e13594e2002ca35a5f8eb *89c73359d2aebffb2ac3ff78060f704cbb012a63eaa7181e5298c4619f177d12fef8f3ee24c6b6 *a9f8433936386226df487f3aa03afef5fc3f92e75ec2ffbb93f894f8939dc4ebe2bf3b8957c4bf *605a4d4a46d5f2fffe88d9fcf17ff49c38e1e8c6d36da880eb24ce902f352943ae291fb4a37a00 *0228a8c1db21f13891a39ef0f0a85b65ba235d087fb59eee4185fdb8ab1f82bfae2d0b1818e237 *ae08fff80cce539a454a10246405a535a8db87a4fae093f0f7b035c8f54fe2f3e0cf14a5bb1af4 *a1b18df8fffaab6f96c47f278652c3ff7d5c13afeffff1d8f5e8f8730cb68be00fbad397f3ff63 *4d7c11ffef93bdcc1fff47ab98058d074f1dd84764b9c288595e8f9039fd829e08022c88623a1d *6d6e499705662c977be4bc22a5c49eb02afe22e721ba059f4a910ec69fee7b31b9f161575f8a7f *893699ca8a5c44dabf663121d6c085bde823f1a7dc5c5157cf4cf8cbeb91740ce1febfbe7a6b49 *fc33319459f1cfd3e9d5fcbf9f4e1f197f4009ac16fe523a7d51ff8f6ae24bf87f924e9f3dfe4f *503123d29c50d21a51e3e64d65129dafaa592c6d847846a8c91bdb909a2769a560a96c2e5642fc *905ccf02f8931b176f561e312bc65fa15cc0ad8cd2803fc0dfc59c6c81887e52c5a200d91acf70 *5e11301b44ca26b3e1cfd52224b29749f8537ee9c38ad96b6c83fefff2f9b3e5f07ffeac92fff7 *6be2d5fd3fee4e1f1d7f7a2366f5f1974a608bfabf172a4a15fdbfdfd8367ffc1f45f6e208efa8 *3846ed6167026cc6934bab8d463bac121bb2ac2ca4a3173784c08b56b4dbd0d1294ed887e6692b *5d0dfc0b786ce4e757f872155ee282dfef8fbdf4a9f630f7b2bb9c3283356b9609542e2950aa87 *a06b109ff5a6c966c49fb0f9f9f4183203fe6c4827edea51fc3fe2515f04ffeb372ae17f646cab *efff8793f8a4f893e93ed7c53f6b465ddaff7be9f4fafedf8d98558aff431bdbf84910d7641d1d *a9161a187aa5d533dce75f284323ff49c82795c04a0d1bbcbdec360e0b9baa72b18e1c9c17c39f *ee180929dc0aa7d319fe4529e846ee4ed7f18f39d9140aa6003eb074d05b8dc9b97efd7e059f1f *7f1abdddf1183213fe25133a19e724f0ff8f6f2f867fd74d5103ffb59c4eafe2ff919ef8f8f813 *7d6697c03f66d63a89ff0b540935fdbf9bb2ac14ff478f9891de424f355e4bb86dbd904ed758da *50feaaa8895df84407a8ef8936512b3aafcd79ec511648e94ea9873fd82438bc7b89dfb8c1f84b *89472d6834705ca577b5c74eb6a0f49871160232125b9248ec31badca9873f964672b8ab673cfe *4c1d58a8892bfefff2855f00ff7d7bd5cf4f2ae11fe98957f7ff4800657cfcd90b552ce5ff71ed *f224fe1f603abd8affefe403eac5ff71642f3ced4cb64c68fe3a17ec8614dc0d5042690a323fa8 *67635b23dbbcad3f3e6effcdbfc9ff8dbfd4dfd9ecfab65ff9ef27bf9c3c89f89ce8258407bf7f *d4c2b8f9c8dcbcd5ae6583f00f94d417eff9c1ee4bc5bfe0832065ab42bcfb123e26422f7a9029 *910b5b2c0aff90b454c99c6cb3e1aff1fc27f33553f12fc983c59c931e37216fcae2df3faa8d7f *2fc979e5fd2af827b4ab35fd3faa893b3c90b2e2f82bc1766efcfb1bef13f8bf478d6d75fcfff0 *11d0fd5fccaee34cc56a5477baac1927eab9d3a90179d43ac8dde9a1886de0aca069b090d59f3c *498324e0519b4ad0724d985a59ec936c38e57e60bfd06e54befa665b0ad4f127897aae9127bc71 *35f1470161f37d8f93ed1ce07fec45af883f1d9ac8e8aa16f1ff70e8ead1c76a3eb95b15ffe4c1 *f5a7f7aae0df2ee24bc69f48d913c91373fc8150452dfc01cbe272fe9fd2aed68fff88ef48eb4e *8779d4f8c109dde92a651ce4f756df262f4adc92dece467bb0a8e730e89483673c7d149820af3a *7d59e82a67ea3c66e09abfebe74fd79f7e1edc65ad9eee90e60ea697cf9b64eae21f35c9389ff7 *ae9c27fcfb75f0927e8631f8a3524b8f8421edeaa9ebff5d570f9f7edd2bcad5f7ffa3f3fcf951 *0dfc7bb4abf5e3cf61c42cf57f0f6f27c5ffd89dbe4cfc396cbc4fe5ff821a6fe5f81fb2010d9e *88f0b2faa4bcfe8e503193c0471dd170b4c12b2d79493a3d684599803b519192548062798df424 *f156b32914e95b33a1f306c96190a24cc095b5a0e7be923b7ab1cd451fc420348901d6209776a7 *2f887f7f3630caea7ff7e05ce1bf63552df7ffd1f8a30f5afcf1ef91bdd4f7ff03639b538938c2 *4e0c6519ffdf6d30e6f6ff4c00a57efc390aa0a04169c7f1979b51abe11f9fc44fe2ff72777acd *f8bfddc716f93f565a7768fd1dab272e9cc44bc8ea3dd37ccfd2e94d315bc2999600116b340dd8 *53a9877af9ec16caa8690a18899bf296fb72cd02702278fe2c7c7c1b6c5c1d6d8617f330b899a1 *0efeeb2fee0bddd70917f4a9f1efb3aa16f9ff68fca9c093f3422eb1bafff75b73578a54c767f7 *96f4fff547b7e7c77f57135f2afe24b4ab5ee7a4ca56b49279def9f09754cc16f57f9fb785548e *ff09f3b05718d1b94efa0c2771294b83246b59d5838b7467b4abb819b2bc0aa6eaf2302d0c54e6 *0e6554f91ae14f9e5b38c35df789b7345c923e5010b63ffdfe91778ed01efa827d7e6f57bf14fe *b986ecfaa33be70aff6d2ffa60ff1f8d3fe107f64263db12fedf6fcd75fcf0b5be7a6349ff3f50 *b7cd8affbe26be50fc49f4c4e9a4958cbf44955c11ff6c2c7469ff4fa912eac7ff883bdd69c907 *5eee17d6df712771afa9578b1ba442a26f8fa61e382b4ec9f1bc99e3c0456aeecd5a13a7569754 *4ded4548558942ea0156af502ee8858fba2f649a20af8f84b81efb537dfca3457cbb09b972ede5 *2ffefce01fa23af820ff1f8dbfd81293fcd5f624be9cff27dde978add9ffc286ba6d31ff7f1166 *c77f5f135f2cfeec1bdb5cceb42cde8b17f50e168c3f8950c5f2fedfdbc72e12ff63f900d5ffa9 *8295b0fe0e9d13f7984807700bc08966de9020d0ae362a53077642c80dc8870b82c26caf36362b *3ab341674bd0fb274958184235df7403508ece0fba00a909b293787dfc9399d37424fca4f8c7f3 *e043fd7f34fe58beea885226a65cd7fffb73e28e0e02776228cbf97fb87a6366fc3b15b365e24f *4abbbac26a0232fefb13d352f16757133fa1ff87a4b7b37efc8f490b55ffc72229f2fa3b624e3c *77159aeb58694473b26c873c6286285f54bd3f65549f0ae9e69f3e250f30a831552da31329c092 *2e4a8d6834ef1dfdee016a53048c437d2211b199a11afe7193cc31169d03fc3b56d571fe3f1a7f *6d4bdfefdb5fc4ffe39378a05a93fb0737d46dcbf9fffaebfbf3e2df636cab1f7f22da55176863 *36267bf972c9f823d5c417f5ffe33e76a9f89f75a753ff07bdf768fd9da662e6a8449a0bca603b *6383491b269b42693c8d94e0ac6043d5d0258fabeb9209713236ae51efca6d93bc73a621640584 *a6609bffdc140a1d20ac1337cc0e8eab54c6ff585fbb72edfce01f8e098d91fe3f1aff926a5774 *125fc2ffbb93383e74a4f1ed48ddb680fffff4645efca511b38af1e740bb0a27c4bd40c0d5c33f *3d89578e3fc958e8f2fe1f75a72f14ff778d6de5fe1fe4863d79fd1d3b27ee4862d053caa0a811 *6e45860252f64ea213d710ee8e50a0c5830a3a810e5968efb5fe3b41c9d834603e85530ca95be5 *a640a0273d8fa306576185ea373354c7bf1340499bb54e877f72061fe7ff34dfb8a2d44fce53b1 *66a06256d1fffb277117942ce2f60afffc6849ff6f778033e21fd1ae2e117f40773ad20d11f0cf *4a6075e34f7f4efc04fe2fa998d58dffd149bcc8ff5113beb8fe8e3a89cbe3ea802c0e927be3f6 *751704b297a0701ff1af86b216abf9ae469bf4572bf2acbcc22f4fdb10f24215f3d235d70bde91 *9390649728e03b44006506fcf701e1e6ad7382ff3a3b838ff37f4295ccf147b250f15f6d4ee20b *fa7f461ccdf422f7cbca86ba6d39ff5f7f766f46fc8b055066c23fe24ee7c49e087f7062aa857f *dc9d7e12ff87c9a86af13fea4e2ff2ff8282880b63bbd37d91005cd249485861a1862c24fe422d *eb851a1644feaca1a4f7e88c9f374a31ed00da4f25f67c36595d069e25035cb648d50612898703 *5b20a940491a7f224b4f35fc7773e2992cd769f0efe6c1a7fb3f3ea428f87b2c5b0c05502afb7f *dc9a0bb83bb2bb736e51fffffed19cf81fe7c497883f7d15333459ccf0cfe679ebc69fbc3b7d61 *ff4f0550eac7ff5d326a80ff830e3d71fd1dc19d1ee8f3e79943accf823600408a34ff18a2f9f1 *06b44a22f22ebdb6ae0d03eaed9aa194ed3399be3c03ecf125dbe346fd9d0039ff77f1e1171f29 *a7e41519a13e9512ad54c67f131072d1a853e01fd5c167f07fcc70a8e00f2a68bddfdc33b62de5 *ffeb7e6b2ee675ec9d4422eab625fcbff5f3b9f0df33b62d157ffa7ae2e218b2e3f8a725b0caf1 *a72b819dcaffa3eadb42f13f631ed6fd1fc8cf09ebefb89ab8c74a9d1e8adf39cf386a32522948 *fc15e43448b36673e5672a0330f5cf867696aaf9b172c579f23ccd9acda7a8ad1790bd56bba4e3 *146a097db1cbd2e975f1dfc8b4ed18564f8affba57079fc1ff03d60754fb72b996aec49d5ed7ff *77fc03789e0510357f766f49ffef780b67c0bf974eaf1e7f62ee74725c25f80bf3bc35e3cf2e7b *7642ff9735806ac6ffe8245eeaffb882903ecfd89a78de85ceb3012b34af07a600563d9d7a45f3 *2e28c1b929539c24c3c5a8c0cadfcdfc3cc8b4e6717308f3a5a02c5e6a0f1bebe03d44894f3fc7 *75ab3409766c665804ffcd4cf1a9f10fc7e681d9fcbfa03b7445a4e4314bf32a9bafa9eeff1d77 *3ae846065b9a8eba6d19fffff6e15cf8af63dad505e2cf769b4db7888ee32fd4c46bc69fa8267e *1aff4ffb60ebc7ff1d77fa30ff678274bdf57714639bf39864468411b7c743eefa63c3a442c526 *26ac82363f8e5502593d882af828a307540141ec816986a8ac0adf87b24946a01d132f7c2f8e49 *75d2fb1abd710be2ffd393d3e21fd5c1e7f4ff38f04a745b2b3cc5e988847410249caafb7f108e *218c11babbf1f5f3a7cbf97febe433e17f646c5b24fe7427f1e40a033b86a313d312f127ae899f *c4ffe19c78b5f81ff77696fb3f92614d6e7002d90b99d7836c72b4d56795f9155eb2858a52f1ec *43c9fce6a061a54622df6b349a5379b292ce933269754d430dd1b535b49fbfd704ee30e3902480 *f20ee01f5282bbd9fc1ff5f3a8f8234209b9b16d11fc0fc710b1dd4814d83a64758ed46d4bf87f *b87e631efc8fb3128bf87fef24eec0a2c6f08f6ae24bc49fbe8ad909fc3fdac72e147f0e5396c3 *fc9fccb6c4efef38b21724c5ce79dae9dc4dea72299d6fc3fb2b68a15c1cf16b4af4df834e20cc *0f77450904ca415732b521ef7803a48c6eb48c9904e056216545057cb110fcdb887f3e8237a3ff *8383898ebf96503d140417c4bf9baf914a818e44da3d75db52fedfee1966c1ff3862b688ff2735 *71429982f017c6426bc69f644e7c79ffdfb44d0a15a58af14794a550fd5f66e6cf7e79443a1d3f *27a19d71b4c001d68242950a549e5068004351f74b833514388591a08c937c3442d9941cfad468 *5c7f25a2814d59d1e76c9dab0023e943c0d8f6b6e1bfe345afe7fffc1c41f017d5acd213ee4e00 *6529fcd77da60b0f077b85a6a60d75db52febffef9c92cf84b8c6d35fdffa827eed0b015c7bf57 *13af1f7ffaa24527f0ffcd2defba61978a3f890650b9ffd353f398ee748f2392d7155d512f9c13 *a7e70e4c8081d6bb839ed269ca4e9ae4d47f46da398292226b70477db3a6e4f0f8c1f20d6103f6 *c64df9ca15bdf4a66888c6305d3aaef256e31f9dc16bf93f123e50f127e336be3762b61cfeeda2 *e6217385d8ce1469737cff6849ff0f57de9f01ff987aa8befff747cc64b9138e7fda455c39feec *bad34fe8ff9bb3c68e4d6811ff5fffe247fbbfaac73a7a4e1c892a62e6db01058b637f5459b916 *f3b905f687f12f37651b00f56274ba5dad6c544e94745690915349729a82db89b7d01fddc6659d *9c6aefedc43ff43bd92af9bfa7e77782bf87af1e7db88eadb94be01f1504215136202ad906db05 *fdbf1bc49882ff219dbe90ffefd2e922c9aa87c3c509cbe2fd25e34fc2d8b6bcffef5d6b7318af *efff2ffcfaa33ba3fdbf60bb320377ba58d4f078b0dd634682d0cbf0dc67c5ac4663dc5244f182 *324c5144cb1914123942a892f77f36da668f2bf912ed2185d320c8be2ae688be7d1860f26a0579 *98df22fcb759f425fc1fc80c39157fcc74e142aafeb010fe51413009d18e1e4ffad46d8bf8ff7a *4bdd3611ff23fbd022fe1f9fc48133ac38fee95868e5f8d391bd9ccaff8f6be2cd5b1ba289e3d7 *7df0bdfad3fc97f78f6f733babf1fe2f8f18b8092a66840208ea9a69da07f2d09c24451af41653 *85e223146c06d45ee5c09230854d9b88520ca67128011411bd6d285bb8aacf9ee0ffc2ab6ca232 *77fa5b81fffad37b8bf93f291496b0b97a3864e47c9e4eaf8cffbacf9dee4b1527f75fdb29c2e5 *fc3fa26e1b8b7fce9d5ed3fffb8d6d8e979b45fca351a025e2cf6ed4e584fe4f2862405301d106 *75010b8916e2cffd5f25a01b7b125f514257a191c00f94719765a90b53a69cc1a348cc144bf934 *dac78aeb1de8c99981bfac68fe0e648ed2b2d0ebab37c86a958929bc3df84749cb25fcbf80d018 *36f9e47db9698e3a9570aa8b7f27e1e4154e2d3947b1de51b72de5ff07eab6f1f8cb2a66d5fc5f *aa89bbecad67f8437acc3af1276a6c3b8dff63ae0697091fc8fd7204d511f873ff27bf3c82b10d *93f18adb2199e9dd0342fea488af676591427d0338161a4d29ef8c6e3251f82a3acce61c08bcd7 *2528535a7c4bd3f01215d083236d06d11376dc268880775307791bf15f7f746749ff2749368e7f *3f4d27b7d0c843b2d5f00f376f793615abcc35efa9db96f2fff5770f26e27fac892fe3ffdbee74 *0fc90a100791eb05db05e34f473a712aff27a7759c64135a0bb20ada48fc15ff976657a79cc443 *8174789e64a034eff8245e42d5db4845ae12b62eb63d00b5b392aef8f2d31f1b772a50d2842506 *5c902a6d5361427bc9a0599eea01e9f40b8f7f88e81a16f0ff0063d48ae3ef295b57aabdbe08fe *0971b4c68123b05ac9d46d75fc7f23fa3311ff4418b7b2ffc78c6d208beb38fe4c3eb842fc39c4 *9093f93f2a9a2301532f8db4178c8395e2affa3f22b4f1236be22bde8d40b450d15e4b2c856427 *f1a06778d4163842b6a96a67a056cc8688ccaa7948f583ac112c3405bfdcd04ea4869c5ea5bf4d *899a332a2481a5e76dc07f7b405bceff7d517baaacc68837f65177fa82f827124e88060750deb9 *3e75db12febfbe7a6b12feed497c41ff8f0b3d54b01ee29f2a0f568e3f494d7c79fff74c799cf1 *2e4a6de40e203f007fd5fff9a8f850c6368d32cef5db0fc42ca29caff0fae8623630de50dd8a33 *ca4b9f50043724935c20dc2368a4f29522d027d13ac6d173360594b364de93a8eb3672178d3456 *f0e5db8afffaea8dc5fc9fef0434ba2739cde8d393f842f8c7642f7c8c08762cefa8db96f2ff8c *dc7b18fe7b29d2c5fcbfaf332852bb70fcd39a78e5f81377a79fc4ff456e76b4bb2624e7e0bf83 *f1d7fd5f2e918f164071689c8d1ff9452577c2a0cb88bff8fc78b3d6246682be01868d3ac45103 *23f9e46d214a37756047631d22c29f16a82a9ca4a9d7efa249de4a9fcf9cbe4df8bff0ed196d19 *ffc7e4152b8e3f96963e7ef08fdde98be01ffadde941915c94696937d46d8bf9ff4f4f26e17ff3 *d692fe1fcf897bc00ac8f1875dc475e24f37277e2aff2f388017319c8b94cb23f02ff17f527498 *2280126422a015da2c7956b54f9fa4ef57b8c83222db239d1dba320d65f643bc798e88d1907d9d *c74d983e6bd2d8b4857f7c7b4350f08b2f92d16998487d81160fe83e3d703ce61a430a85233fbb *29eb420117fa194de2a1b2236cb24d9a2423dabaeb3716f07fd131d0a829cfb6e58e9a76a757c6 *7fd79d3ed1ff5f76d46d853252d3fc3f5cb9361aff744ebcb6ffef4fe2e3e3cf317ba6faff1cf8 *778c6da7f27f52b33eb7f19fe8c58f1640513beb3ced03f48ca0b25f136765cd20e869367c3517 *c73043acd2e585f408ea502234f58ad29c3654e8604bc3a5cbd24848809bff334d26988c7f66f8 *1fd2e9b0df435631d3f0e7da2b30372e1e734a189614f6cbc016a617a15dc76bfbbff42916fcc4 *970d9e2781e2984e5f04ffd0676c1be9ff1d759beab773f8ff4e237e1cfe47019445fc3f39898f *883f3daa64d5ff27e3df35c79ecaff3d55493beff13f0364ec49dc95653c9c9aea47898bb4b45a *c8a2a9b30cc97fd5efb54052774ed5c813bb1a686dc5213ff4d40fdb75649f60243ac5e2a24c88 *a1c81c5faf00e7c8e656d0902dca16d2f308f9b541e24aac0537c0035a1e87b7eb7855ff0fb443 *861f2e5496a7349d5e19ff9d14e954ffbf724d3b9fcee9ff3beab671f81ff5c497f1ff7e4d7c44 *fce9733b14f8ff34fca393f869fc1ff5a35ea4f83fb53bdde14a9fcc668f3b79e0487bca048868 *d2f3b40f6b56879f68515847e39895bb8e39818f677fc2940485076fded21b7199ac5b2826fc17 *e8a13237cb4ee243f02f62572b6fc063b415a18032948ea11d440db6eb782dff2f1f5af169bf9c *3c4ad34b9f1ed3e94be01f8e8d6d93fc7f4bdd465d7a56ff1f8dfffe24be94fff76988c6c41fc8 *b288fd7f0afe1177fa69fc9f37c65f98f83fb63b5d5dbe35669bbc2d10b0d3a7073adefa188a26 *8670fb5634bab8f2ca48af23b387649a402ae240c52b92d8e9a98d74827a8dcabd9c9d9b9a322a *8904f0e38899dc8bb24fcd0dc45f26396fa846bcfca6a35343109a2864c5a5a02436bbef8ff5f1 *f9fd9f53bd79d60b2477cb6735f1e5f0df91bd4cf7ff2ceb5bc6d137d6ff77d46d23f03fd4c417 *f2ff5dafe994f8d31f312bf6ffb1f81f6a9727f3ff1292f90b11ff4733b651411985da0e8ced0b *33771989505926aa29e8439636c9513add21393fdefc50326c88071f1c51edf130adb4cb318652 *592eb434374082507c92a88ba6943bbd007f3d5b0b52b5ed89586b572be659651a8b41c6f09057 *9fddff71dc70a1803b3a5035f37d3a7d0efc0bda058f2a6613fd7f53426a862491a6f9ff3a92fb *19867f42f652d3ff37dff71bdb46c49f68e33dd0ff47e1dfa53d4fe5ff85a22a1720fe6fff7002 *77ba2b1b6d139be49d673f4dc85ed4344e9092ed01b252344ca71ecbda42824dac4eb5c29b2b32 *7a2066841c1a7bdce718e5c36fc063bc41637729a18712d2c2c75dfd10fc61b8e00cae5b0e9602 *862b2dd1a776c1912681761ddfcf8fcfe9ff881e0a9d29bc2ebbecb2c6b619f02f6118dbd5c467 *f1ff23755b5342db32c9ffdbd71a877f6f4ebcb2ff278d6de3e20f4da76bfe3f1cff5ddaf384fe *1f4ae95b2f40fc1f3e274eae04ee763c18c3c793b32bc0de1958d068b0b67b014f789f7fc0d134 *ceaa6c5cc891a286342521e48234d6a0a8eec086ec82cca1da1430e49c0943a9c83f256de2629e *f6868f96af9180dde6e57aa552ed5c939f0ef2727943ab93b902c52fddfcf86cfe0f5408597c08 *72554ef890f618dba6e15f22c5be636c9bc5ff377bb612059699fc3f5cbd3106ff634dbcbaffd3 *3695d2f8d31f311becff43f1cfa44897f67f4f4be7172bfe8f6b6cd34af348fdc1e1367eba1614 *d16287b25355fe9109a8d722c0a289caa5e3c8a6ae60a29f8c1b0bf8af3fba5d4461ad4a15345a *1eac89e7c4e1a4b3d224d350b1c512fa885cd6f0933b70bcfdaca0058b75ff12768b90d6c7fbfa *6e13fd1feb99ae38fe5e8a87c96b45e9f4a9f85321ecd04fa7cfe0ff1b6fe76423b3fa7f5f29a0 *14ffb528455ac7fffb35f191f147509b1aeaff43f0cfb8d397f67f2e8972b1e2ff58da5587f31e *8e70e3784660956e63523adf06cf2f9ca9e7714d3628620254f330988a7f85946a6985c505facc *faa67197bb439d5a0a3f332d7549f8478c6d4e9c6194b9d335fc0bea202221d83685e22e1fa6ed *02a0f5088a642d2b3b8682e560fbcbdbf3f85cfeaf26e210fe0137c3642a6633e0af48000b27f1 *a9feafb1b8cce9ffeb9f9f8cc13fe74eafe6ff3175c3e8f8d33b318df6ff62fcfb2a6627f0ff5c *f5ac3c0f7feee2ffa83971a9e6ee08951cb92f42a907fba3603d2b1435de8046a6982d19700e40 *b27dd2e657225fe5c10042c08ff7bef9e056494a5369792d9fb7ea31b60939ae2cbd5f84bf22ae *417449b6bbfa74e7c0069903a5d2e21db64161a695e7c7c7f87f507a6020feaad652dad8360dff *9204757c129feeffeb1e755b284ce98ff6ff70e5fda1f8f73e9295fd3f6a53191f7f7a421553fc *bf0cff5cc56c61ff4783e11731fefb31e97492f42014b55cbd51e834c8c27250924ecdf0aa4d4a *f6c284d7892255365c20b30f799c232aecc60ca40027cf7296b46a07ae7892c2d56b8515b8fb00 *0fb382bfd25a86d78e7d40b87479dff2d4948c9b950cf0525e0b38ef130e79f5a9fe4f899b18fe *58f838217b99077f812f3183283a89cfe0ffeb8eba4dc47f6eff5f7f766f28febd747a65ffcfd2 *e963e20fce9e0df7ff02fc41ed7239ff274a07172ffe4fe84ef77a6321137b0ab0ace0643a5fa2 *498ad87d91188ab03f0c51f1cb11c9184f8b1d807d68c50719b0c4bcf0b439fec788c112c88195 *ff38830764969037aef2ae5ec3bf3fefa3723587846a2f1c7b0340e54eeea10d6c1009fa95a64e *d59b1f1fe9ff48dac9171c1c3017a54bf5c427e3cf3e804d7c129fcfffafbcafa983cdeaff5bea *b641f81f18db96f0fffebe7a64fce9a53da7fbbf86ff81b1ed64feaf92b15fa0f83faa3b9d2503 *e9fc3ba18f1646ea8afaa3cee88033ec3e15f6c0687388e70b7a50537d5b484c84072856b85f31 *c3bfd745138a3890f58a306eb939703c02756c40b5a7e1af94aa710cdc05044926bb4c185125ec *6dd0ac0d6d6f7ed1d5c747fa3fa65ee7eae432d555da79d50135197f362ad5d1aedebc35afffaf *7f7ea2b597cfe9ffc15d1e847f8fb1adb2ffc70323a3e34f943d9bc9ff29fe51b03d8dffa3c3ef *858cff13bad3c1689ec3347aa8915eee64e8f10f34c55d9143cfe3e99cb8531dc92bb235c24e8f *8b5f80664bc7b5337af4500a69093d5cf336dd7c2efb588093994c18d5de808b54e3433ae0bf81 *d46d052b75fe1fbcbe376557c2d49f3b9d94e3797c84ff03d2483158119927f93c02e7c487e30f *2991e374facd5bf3fa3f1c63ace3ffeb8fee0cc2bfcf9d5ed7fff37df588f893ca07cfe2ff18ff *44006579ffc785e08b17fffd0415b34049dbfa543c8edebebc0d930450022bd93405c30e981029 *3ad0c91272b8ff50c61cef6d9ca7db45d41ce8e58a4f9f5942a0a25a2b3a200ab3598a7f5c8063 *2c3d03f1876dae0d6e5314868056e1e3db54b32ce89c1baaa26243ab96f175eefbdcc6f83fe557 *77bc9805d89b23b6defd497c06fc4bf465d67b3df1f9fcfffa8d22fc67f2fff5770f06e12f70a7 *57f3fffec0c8c8f823a5d3e7f07f807fdc807412ff47c5f78b18ff87a7d3096bbd23dd081ea626 *e46938b9dfb83c9323133b044e22c475e1c99e2aa1c6252a6f84639f5667a857a71143e494208b *178d150dea4e979b4885dd5719febad21378d3bbd4dc91b9e2ebfba53acec2ed4bd5499106a729 *61ecdfeb8f8ff07f321bcbf1071bf87ed7a8a0273e127f8939275d2bd73d29d279fcffe55f9f15 *e13f8bffbff0c3f0dfd0ae2ee4ff5d3a7d4afc89264ae6f67f09ff7814e824fecf69612e58fc1f *db9d4efb0d88fea92b98a9a79b43b9a338c03a5d93a9568136b9ac26ceee4213845de1fbd54902 *71610594693eb845cf41b495b430a797a6d31d6822754120bd2fc25fdb8081ce3479f77510f860 *a30da188999ff89e9a3f8cf5c7afde18eaff60eec6613915318327b33768642f03f02f59dfe339 *f1b9fcffe5b70f4bf19fc3ff13261f8e7fbfd7b4aeff2727f171f127cd9ecdebff0d69403a8dff *d3b2ef058bff7e928a19e27b7728e7efe97f05611d61071bf48e147d0653a65d053b13a7aac112 *2e3e5fc64a44d88039dbc0b115963318f3a36883258073fc7b2771817f581ed9d6f00759bb2084 *c14c085ec0ffd2e57defd35056bab382fea233aaf721e2bfcdab0ff27f82b0c6ffec68a3ac2ba5 *5d2dc35fee7fe803bbad89cfedffc7ba4958c0ffd75fdf1f807f4cf652d9ff37b1ab4ff63222fe *a463a1b3fb7fda8074ffb4fe4f86a72e5cfcf763c95eb04e1329f78b970dc7ccd949bc48342714 *ed127b2a663a1d3d2f2510e91c71bf972431908886a7f30bd1506ad08f1584365ccd95f51bdb50 *624a9e0d2cd4392a21ceedc7842835d73f8c5fbd71a0712be8a1557ca650e28de2ffc2c7f571d5 *ff3d38896883ae8e90b7f7d2e933e15f52fc4dd2e973f9ff30fca7f9ff96baad18ff9444b1a2ff *c78d6da3e38ff6999dc3ffb3607b42ff4729f48b18ff47d4c435fd32c72958f14924932b923943 *508a26606e01890a320bddf15ae09986bb2b21e4e78d13fc4de79af282fb75e974552c1b112a36 *406459fc3e8a18228542b6ab2fc25fa3eb09e80cd59dc405c7bb7ee3d0acdebf8612b6b186a7dc *812e15c75fa88f43ffc71328ae80c20225bef67fdb277b9984bfa679d153319bd7ff5f6ea8db86 *e03fcdffc395f70bf15f27539f35fd3f51311b177f8493780dffcffa584ee5ff443dfcc2c5ff51 *277157d000cf8fe10e77e90315b386f4ad852226433408dcf489bf20c93ce12558a1e17d3447a0 *16473c28d3882f9da92d8422ed75b529178491286270969e61f8830b086afe33ae8308240cd7a3 *f378038676953345d0d9bdcaf18fe6c7b9ff931e1b8e7fd06770a439f1b1f86b67f3b09d13ffb0 *86ff6fa8db86e23fc1ff77d46d25f8a7fc4b35fd3fae898f8e3f941e7356ffcf1adb4ee2ff2226 *1734fe8791236664425ce6ab27c3e388a536cdf0243b4092f639a3945c8d9c9bdaf995078a6c34 *fda20edc39b55101ef1599b24f4fbc184de9b22e9a20282f34ca4ce82162383456d9e74e2fc55f *aea6156858f7c75504fcdb45b397576743bb019f29345e8272fc0ff3e37e184b734aed48c65a71 *54896ae233e1af0f1c4573e2f3faff9eba6d28fea3fdffa01aa0e21ff59a56f7ffcd7ffb4cc823 *e2cf614e7c11ff17c85e96f67fde0577b1e2ffd81133472e18e636e97c5f3ea9d7237b611cc852 *4e8cd1bfc855a76e2d40291aaa242b68d66b8f24a510d2210955710f05b85b1aa345d03e83257d *a721a35d5d893931401c118aaa7efcc82ce5fa924e5719edcd793c08894db5625e12757546910c *ff8dded90deeff6856c5330276613b2d4a27f4a9ed26e1cf523707c492c6b619fdffd8beb888ff *874b974bf0977b4debf8ffee243e31fef4e931abfb7fa236b5bcff7bcc0877f1e2ffd893386e05 *744163b4f04513ee7d0a6e9219e3c31a621f8b54b849e87c3ddc0ec111bf80bb1f7127bfd04890 *546dbc8a5bae7ba84c980ea5bc0859ee6e95d5b01ce561d6f19733b48d9e054dc95e10fe28afde *80f6e006535012999872fc7be771c660ec959299d30897567931ee78129f8cbfdec0bc39897f58 *c9ff65e58e6afebffee46e11fe289d5ec1ffe3a9cfd1f127a54aaeecff8760bb3a95ffab2bd745 *8aff2305505cc0497b4d278e24e47bbf2050700bd31601766f36409614f864ae8e2729aeae0061 *afcbf6543207206af60b54c04e213ae8d416d83d86a20615a6f375f8fd6352511ea8dcbf7103f1 *874d89847dba49b58915fcbbf3b8a2775ca88b874b3985f81f744b896c62605c5232fe5ee8fb4d *8b71d91cfd78fce50a6952abdad7c42bf8ff91ba6d09ff4fa8db10feebde88595dffef7a4da7c4 *1f59a8a29aff27b4abcbfbbf7842bfa0f17f9c14a9077b212aece2900a5bff9a5d9fce3794669c *1a2980948e751c7b2d08373e5182f398ffc7832d1f6a57e07b24f1c953b505b4376e0ab4171bd0 *57d3d73d24dcfe3eaeaf0dc1bf6c86458aabc2ee0be37f75b78eaf15950792ccccb794cd7a3cfe *5bdd522f4f9c2102a515c71f34f0f420da93bdcc81bfce3fd69b139fdfffb7d46d4bf97ffb7e95 *e09f33b655f3ff3839363afe44b5cb25fc3f21685adeff791fdac58aff436be29c858630ba108e *594463d53f89d3618746d5a307f30e4d4f8a34e00201a7afa1157fa8371730235f31f7e0ea3894 *9aef5e9a92cd7f2147534846cc3ce449e867388bf1d79609c8d7d113402961423bce9d91718650 *da862d9ca106e2bfe573e3dabe1eb255382c05e53c9e9f8d6857a7e25f3009d5cd8957f1fff557 *df2ce9ff91180ac6bf3b89d7f7ffacc23526fe648c6d75fdbf3f0ae4546debd9fddfb38eeb8b16 *ffc7ab98a19639d29dbee21bada4ee9f8a61e91d6e74725c1b2a69f7a25e108d157aec39edad98 *15f19889d71748cf0396031784a1d432e17599cc3968bc52e2b65f53ae29c35f3a8c0421f465c9 *c62c355780fff51beb5fbc40de7ba689e9408aaa69f81fcfe34e2264269f32ae7004677684c6b6 *b1f853c5cf10cf89d7f2ff8fee2ceaff9b8cba867f4f93a8aeff7735f129f1274d7b56f67f29ed *b95ad2ff3129d9c58bffa3f4c4593f21ef55001b2db96720ab8907252d264e3ae86d24445847ce *bd78a9468055d45dc0dc3e48d4465396efb729c6642f448d4bedcb55f59576df1fe659104b21eb *35c2f80fe995ea0dc28011330dffaecf6d504f8e4cd11f66c0ff45dcafbec22ee108a323b871a1 *8da7c79d3e0d7ff93cdeffdb70646c9bdfff373cea2fc272feffd7673afea8d7b482ff47fc4be3 *e38fd08054d3ff33bd03aee735bfff6b94aa1729fe8fa35d2d515ea3d2ea02ef5cde2aa074a717 *267960cb8d204b5db08b739a529ed87628a78cbcc272e0a84e6e4ef6921f8b822600517666c9ba *d3793b4aef8d2bc6bfe87d042a66e3f0eff5abc31422984a6b4846712cfe471e9834abe6998422 *d45702854527a8984dc09fcd383729ed6a0dffdfdcce86ba6d21ffdfec499476c4e82359dffffb *eac023e34f94f65cc2ff13e5418f5bc52af93f9f49bf58f17f6c77facab3ad052aca3bb561a0ef *57f78b146c07d2380bcded0d991377fcddccddc0e3d94324272d3a09929517f0bf794ba39fa264 *893c7fd888053847d25c80c251c15fda920576064977f5a3f0bfda9f1f6f0a64ceb8c2d434fcd7 *bff8d09f1f473c5404ff9209d64363db0cf8978cdb47e9f40afebfa76e5bc8ff376fd357df70fc *e50a571dff8f4fe2a3e34f46ca51d7ff45dd67309955c5ffc99f5cbcf83f7e4edc65e5835580a2 *c98e36d7c9c993b4267e56c20b14867d66331d0daf74fba7d70f48ff54b53bb94aa24d1cac64fc *e388c193785c6ca8913a5b24f162aaf197c9cf95e15fd6e7b0ce29b612f9b9c1f85f273a29f432 *c4eee5e9f8a77a679ca1914cacc87be62c9d3e15ff0211ae9e00cafcfedf7eb9cb8bf9ffe6dfe7 *cf14fcf7fbea25fcbf3f273e32fec82366d5fc3fa1c744f9e47afe8f68512f64fc1fab62e6e91c *9fd61baff2d567a5553e99d890ef91368a20458a09de9dc63c80f4e8c9eece819d1852c4839791 *e6ee1a6d3684ccd79fe9e54249c5ccc9f27343f0676ca88c182a49a18cc1ff303f2e12bf48cc9c *a8663a17fe2f523e37ee6f9c1451f61924453a1c7f36d4dcd313afe5ff29916c65ffdfdfd17130 *50c0bf3ff559d7ff819cc1b0f8730cb68bf87ff69975404eb496ff7b5d6ae4c2c4ff292366989c *76e51937acbe3b929a9c834e0dd4946c0831f1579425c6d2f0a82ec3555f5dc1300552695f0538 *e97f78959bb7f4b61c85c939606452fcfb73e2e0243e1c7fac1d9fd758433ee03f15ff5dbf7a09 *29016a609e17ff5ff6fdea62d1cd6bfdab798848fe249d139f803feb774a19dbeaf8ffceeb3efd *7c19ffef32ea8c3b25616cabe9ffaab06089ff4b69cf8afe1f31b62927f14afe2f0a735fd4f83f *2a9dee610b3a64b0018f3b3c60ee20639bf8d19357f950408b1dc4b5297ec7bde221706c50ecca *a0e2ef0a31af9cb2d887af80451c34869cbc1606e50f422699947eacd2747a19fe4cd31035d530 *15b3e1f827fdea4c372ae0eecaf9f03f9ec71d665126618de406fbdde9d3f02f99bfdea5d32bf9 *fffed7aebcbf8cffefbf79fe8ce11fa7d32bfb3f50311be6ff0255724dffef6ae224fe63deb019 *fc5f4cce5fd0f81f2675a7bb00f5ca5781a1ea30959c0ba25f954b5ba29c9e5a233b5b6b658895 *5a4091987f1cd694e79c0688b736c57ffdd57dbcb10745cc46639844dbf2a6d79d2e6e20d337ae *18ff82c02bf43c88b381e3f04f795949c37023ee24e7c6ffa83f0e7b6be9061ed6ec0aa4484bf1 *a76d4e494dbc8aff1fd30b3f3d59c0ffc1ce4462745fc4fffb236623fd3f65d6aaecff89de81a7 *0dd235fcdf4315ef8b17ff671140416a6e5c769c14447afc038dcad82631fb351a75433e00d2ba *d647b791461bd56e735e53b62d20b75995746588f8af9f3f05371e8abb4671946864c636714eb3 *4fb537187f4523093c7e60e99909ff239f5b1830455e0fff17a1d31ff730b7964fad425186a8b1 *6d1efc85b35886554cf632bbff671c8f95fdbf3b4efefc04e1fff2db878bf97f5f5870a4ff4bcc *5a15fd3f521e84f13f467576ffa764ad172cfe8f9a1377789702d96e81560ba3bcc30d93415107 *6848ff1b1df0f9f6a14ad4e3e1d0bda38375ae40a4ded1260d994408e890e29d73531028e8d888 *d4d8d66bb0ccdeb852fc1947251e243cd4c467c35fe08161245aebeaf8f7f5ceb0fac3ca2bfa44 *521bd864fc33bd2149fc2b257b99cfffe314d0d51b0bf87fec0c07f6b63efe972e4bfc03b5fc7f *a74934d1ff65b2976afe9f5325e3a632c8223ec5fff301370f1856cf7bfc1f4bbb8abafebcb464 *a335dde3473c9a7a683466e3225e824064d1b653baf206236718f0588c1edd94b6995cf9227557 *d717860ec207bf915a8cceb8107028ca2546b93b71f399ce890fc15f21aa92ae3ce6619e0dffeb *914e8aaee2541fff5f76ebb8539b76082f447ccb1963db78fc4b9aa0c241c56c76ff4f33eacf9f *55f7ff049f9f9e844feeb40bf7fec2ae5cdb489c2fe8ffd9be7a8cff0b044d852dc4a3fcbfcb9e *053abb042e7b06ff27a35e172bfe8f666c4302e544423d67a6053b2ee7c5b5a0d1e8a1ce68df2c *1c7fc80abe3f3f09eeb287f27690940fb1ebd0cd9b9a9c41bcfd0422b20d0ea50ce10da39216e9 *a13c92781e88bf3e799a5d3662e999887faa9322ef0cc372f8f7cee38e5340786dfc53e04e1f8b *bf0c517f4ddc76a7cfeffff9a7722b8652d7ffabc69f71f8c7e9f471fe9f8d859689b48ef5ff7e *631b3b1123599089feef197dfaeaa2c47f3f4d4fbc8cb65d169711374b397a429373534648d850 *217b75dca3dd5a5fba8cca1c38ffa0300ea9023724eb2236554262b4862a5334a41e87a2509074 *0fe107ea20453a16ffa63f6b0385ea04f6a799f1efe9a4a85dcdf5f1dfea9d15304139d0827bbc *fd1ed9cb34fce9f8f33ad1139fd1ffe5f8d36ebd2afb7ff5f83302ff433a7db4ff1f1b904ae70e *26f97f268002574fb0724df57f1ad51d29739f9ff81f3fed84397185b63db07cbbbea5c93a3c43 *d1942557ee53c99f3bb68d2fee2747724ff754be2ce387c47a029b4fcc1cefe6ade39caf3efaa1 *3dd2a8e490023d142e911ce4e7a6e0cfe9441a9987b90afe57a3f3784975b236fe5b3e378e3f60 *93ee7dd6a293f854fc4b584cb78d6df3f93f8d3fc78c7a1dff5f22fe0cc47ffdfda389fedfaf5d *06d6673e87fff76957f5952bcf2d4ff47faf30c6c81b86f312ffb31f8d952215e6e23dcc0638a2 *cbe6859e0497666511b700df1396281991d3c4f6d3b1f1b78f6f879b1faeb75f9bc4e007b7d6db *7fc3fe915b61ffdf5bbd9f6ebfd9fdc9fe0f6fdecabe39fe68fffd07b78e7f7278aaddabac3fbd *b7feee4114a302a0450aec23d614eb2c005d6340bbea7c2e3f3719ff1282eb7ea7ab20a9109870 *1ecce61dbf1779594f87ff4eb794e01fd8e37ddad539f02f9114c91bdbcaf107d3be30feacbfbe *5f17ff05e34f21fe795bc850ffefa53d3959dc1cfe1fd7c451fccf2ab04e3cba8ef37f50b996b5 *bc3d14fb46bb8239e34f89ff4f4ba7139a7a17981aacd831d8ff9dcfeeb1f20acb8f693a298d26 *9f9717869aa1dc44c98505c69cc0a8a2883e02cdcb35255ac601fc39e56efaf131af19f5eb6bd5 *f18f19db401dcd81ada6c87ebc12848ce33eb793e3df6c7552aedfc0353b4647799c135fd0ff77 *27f1f1f86bc5c1debfbb1ef59af89fb7f87320401befff426dae66fcc9b2672e30be6e39d73dc5 *ff692e5dec457725dca4b5e28fe6ffc34fe28e56280409368f65c43da4a1735b5d8f5096c6113f *20817d76ced4fc4fd0685d83e2de6705093db5c4d60c12900ad2bc3c6e41213a89f8f0d29dc451 *91e838aebb08fedd31a4bc712530a101401215f3ab9f14ff637dbc9f57f7ba9cf1f1478774fa42 *fedfd1ae8ec6df6b2acf310247d6977af89fa7f813ed9146faff91e37a91f89330b67985539795 *51c6f93fe9182707f64ce114d6bb678f3fdcffa7a5d31d107659611977c8ac9e9669da45bc294b *e3a8739d4d81d4ce00f5e102be8824ca1546f5b3e2a35cae534004171aadb226924e8018b5fef3 *43f256ca73e235f18f4ee2e8b3ec2853049c2509c279dc9f1cffa3e7bfe8cee38e10588915c69e *9e787dffef1adb26e18f69b892f8735026ad8cffb9893fe1cab589fe0fe779ebc49f44ef004f4f *bb9232ca08ff573bd8b5d71257decaf107fbffd81133e1163ce836d198d201ce57ded75b444a06 *229ab55ec61a9021a495b546dba3e60a6b0d7ac5a057a6ce0a2f23e0ea9ecadb10b254d87db00b *8deb6bcbe19f8f98219a88bc56e5e13c26503c14eae34be3df7bf2fd795c1732104ee20bfa7fd7 *d83611ffd2f8b3a35b5900fff3107fdabddc64ff4fc95e2ac79f7ef68c75b2e11f393c1ea5fb7f *d0f8cc55f27632815e2ffe20ff1f5713078b72493bbde34cb9f1d36ad91b2de7a324fa02ed3b0d *94054eda9937433cbc54c2184fc7a803a4e5c1a14484b14ba77f749b2bee49ec4f15f1cfbbd33d *a66f22993ac2e190cc9dc1bcfa22f8a75f1b9d945b054d263d1cf6b4ab4bf97f88f4c427e25f18 *7fd2b6d87af89f3afe4499b1f1fe1fd1ae2e117ffadde99c7154ad9e100e76e8ffd2c22ad7e535 *3915984baf147f44ff9fac62060fe3bea084e16552d65c3031e0625cc114a7daca923f55a3f1f9 *97548e50ba89ef5d49e7aa5e5053db4483fce74c3bb82f2b79e57d242f9b51ed2d817f9c4e079f *e2bcc15519eac423992e3a8f9f067fc1fff77975a77e307df2c95acaffdb93f88cf817c59f2bd7 *96c3ffa4f167fdd9bde9fe2f1134558c3fc9491cc57fa9c94de4676324a5013495054a26434ed9 *a882bf58fcc96f7314edaadc065fd24b20f2dea0c9b8f5a7f7203f03d9fb351a3531a1616f0841 *22e935457befa0d02e09bcc454f005be68d01b60d46db3aa16b751607caa4e61ecc95e96c23f49 *ef97ab1b9009174f8f006147d39dcc8f2f833ff2ff5f767367a98c23626ecc1adbeafa7f24f835 *0ffe25f167338fb918fea78b3fed7665bafff74a60f5e34f5213c793d12b22a785a7c074ff27d3 *e28856a54c3974a1f893fce638b2174edbc2f555c5fd954c9f7ef51653a53f530b37014c560646 *f58f4648cea8c82f27943ee34b366f5c0f329b448104e4007902cecfd0e5d2bffa469bb0104fe2 *15f18fe7c43dec0b256282a9eb62ee85fe6638ed735b027fe6ff87fa781e6df2bbc635f12afedf *cd89cf89bf1a7ff64d354be17f92f8f3d31390fe1de6ff7d96c5eaf127e17620ade66148fdda03 *d113afadcb9c67a6803af514f127fa9a50132fc1cd5129194405737cceb26991a07c24877e9458 *ba4c233796059ec2f82300a934355cdf303fef4b4c0e0d9157482ffb206f0dc9067d171096c23f *5644420243482d97cb078b1be3de44fcd52d2feb82f82bfeff42d049f1448a7429ffdf4991ce8e *bf1a7fb692a00be2bf78fc09512e7d8aff4bdce915e34fce9dee619fb6c3875f48c4aafabfd6de *26e6ae917cb93b55fc1947bb8ab73de4ede08d7c480dedf0fb47ca177570129f76cf2853319fef *e6d26942952d68c483014f83862119bca0a5adc8fc4b50761162eaeff933c4511cfb03ac89d7c1 *5fea7465c9378fa741bd96c113fcffea8d97bff885f02ff1ffe3dcd9cae39870a45d5dc4ff0f2a *6615f0e7f167d3a61e16c57fd9f8b3537998eeffc739f145e24fd6c702e3bfd706b789089a676b *22f41c951b3c9f1d3b65fc19ab6246b70d6c8fe1a1d48b83c98a4b970b4428689f2711e765f39b *a160cd556588355ea6660d0f08bca7e56cad6ce3cf54228b359e6e930bf4e193bb84d8304da72f *853f993925144c71fb4a89cc0110397229bf7a4dfc4bfdffc00343b8aa7a73e2f5fd3f4ba7cf8a *3f8d3fc219b336fe4bc59f48cd7caaff678d6d75e3cf61e35d10ff816019893fe0e4cb7446c009 *17d57f5d600bfde2f167f0491c6ab9d20d9503fc7550f05d38d989f402aa0b350584fc0dde3c9f *150ea4045ddb8807c0b3b2cbe3a94b364a1360d72bffc4755f7f7de6412b11238ea88f7fd6e92a *0f6c12fa0850c022a44999fff7f2ea75f01fe4ff5b7e75a48d18929a787dff0f376fd5c59fc69f *d67597c67f11ffefe644a6fb3f267ba9127fa212981effc5779c53bd716dd000577f5d4554c4f9 *e4f167ca49dc6389968015de8126bb43437c9b9c585c796cf80a1804f243c28b5828ccd414d4bc *54ca2638c08276febcc024dd42498f5cd15923e354d91ec383a2fa170ba02c847f7612172383a3 *1f5bd91b3da05f16fd7fd384b9eb73ab83ff50ff6f3715ed257930d97aac892fe2ffeb9476757e *fc59fcd910382f8d7f6dff5f7ffbb0b0fbbac4fffbdc0ed5e34fff24aec57f795a19c61fa21ee2 *958906599dc463fad3b9f09fe8ffa318db64d1138f0966bdcc2a2f6bbc0a7d179f7e5ec43cd050 *3e8af2fd33fc0817300df2318d421d847209c50677c336b8330706e18034d63d8e99b2fcdc52f8 *c727711c191897321f3f2966738a786066c7bf598ff1fffefc782fbb95a4d32bfb7f4ebb5a037f *127f36d266cbe35fcfff5f84ed315ce40919e3ffc249bc66fc41dc0e1e33a597c79f5070e20e50 *1b744538db29d1d029e3cf5c642f78b324ef9d3c534817ba0e366dea4dc9e6501b721c261956d2 *7e46559c8af2e7413e26a0721be91056ffdb94b5f7f4b7197d010b3e7d80a4486be18f6ae2a2f4 *30de9f8b0c4e4e650c4e9ff37abf3e3e13fefad439f2ff9497f5f0698aa548ebfbff46697719fc *51fc71975f3e7f7a02fcebf87f222032ddff8f8c6d8bc49fddc67b50fc2f8f3f54a254e627a1a7 *6ca83a3a23fe13fd7f2c77ba034d02a82d1faab1809c43965d69c3e3384263bdd584b21634054b *30fa48ca9b522c5bdc14ecfc058ea9828d7143b505697671fdd57dcf1818d277bfd79d5e1fffdd *220e1a4411bda1033b61d29c99df2ff0ff5dbffa7cf82bd4dcaaff1f79598fb7dfef4eafeeffeb *b43bbd26fea8cbf7fa8dd3e03fb7ffaf7f7e52acae5eeaffe95868e5f89377a7ebf1bf38fea85a *1e44cab64c9674353bfe13fd7fdc88992f629165b4781ef4947ab213fbec1e6405543e3b41637e *16691879ea9bce8fe815a250f47869235c60a28125a24820386f2306716341a720ed07ae8c7f9f *8719cadd6a8d34e811392070ff5f5fe5e7f101f817e4e175ff5fffd2f5b9e5e9f425fc7fdde34e *af8e3f8a3f2156375b10ff79fd7fd7ea80e6a7c6f9bfb0f1ae197fba12d8a0f85f187f3ce00b25 *3e23b5a5c993685ea05b5f9d3cfe0c4da77b4c5ce329a70d192500a4b542416143a57886071515 *e6e10013620d9ee31e44cc784607cacec8013cf4091b039e8219154b391dc75992433bfcc20bbf *5539948911806cc17657bf20feddae1efbb9d82b22920e39aca0e43075b3e4ffd7bbf9f109f8ab *0d15e5fedfd31f2727f12afedf91bd2c873f883f072ed6c5f19fc9fff3fe52742c1de4fffb12d8 *52f1a7ff991d10ff4be20f98814205774738c04bbac767c17fa2ff8fd5132733f52b5fd4104854 *5af098bfbbbce5700b45cc4825dd267cf30cfd39c0e7e11a0a8dd6db39404189a80c07d68ca4aa *14751c1d576f88fab61e167d1c388957c43f1e57f1b88f85f685226e6426f8abfbffd5834eca58 *fcf170e228ff8f7860a2eef425fc3f448d6dcbe10fe2cffacf8f4e83ff64ff6f77209eca748ef6 *ff9476b572fcc968574be37f49fcc153e148eab4a88d3c3e80cf8eff44ff9f50132fd933a00d8c *b03901098dac116ebf8e17f451243a894d89d46060bbeea6b897a39049b884d5adc172e4ea9ef9 *8c6a215155b576cfef297701faecf417f1eaf877e32a941290f333c8f7e259776b99ffe7fae3c5 *f86bcde1a3fc7f337776a3c79dbe88ffe7e9f485f017e3cfa5c3416079fc27f8fffafb4774ba6a *92ff67943875e34ffc991d1cff0b4ebee88cef29270ce111f2fa74db29e3cf38b2178f1b41f1bc *1e512ed06bfabdafdd3ade80a6147d96b37c4ba92929375469f76cadc9467025a0a05f4c493c51 *950bb26fc2216ba74af1ca52ce0be29fa4e670aacd017e06910d09d1300ef6ffc3dcd930fc0720 *30d4ffb73c30fdeef4eafe9fa4d397c45f8e3fdd416079fcc7f9ff4f4fda6be6929a53fc3fd213 *5f22fe647a07c3e23f8f3fe26aeb3551124dec63a54a9a9e30fe8c5031235a6c5ee9ae27358295 *579af0fba0b9cbeb9f9f144d7920c2a584474895c415d54cc872cc99224ada600a795c651d8792 *c3b8448fdc1ed63ebaa3e38f272f7ab286f5f18f9b64c84e1b5182105262d4f03cd8ffaff6cfe3 *4d093d7528d2a11ee7ff2fc2faf9d325fd3ff4e7c497c61fc49f6d83cd29f01fe8ffeb3f3fda71 *a44bc749c27032c0ff53b297caf107d7c48be33f9bfc92a70ec1407a578c467d712b7a9c9f07ff *89fe3f4a4f1c6ab1a9c3742a3bbdda87e0a3f3f8faa8525428048cea92a035b451676dc29072a7 *38795130812b73220525877f46f37522562f42274bade30f36ae426aae26fef18819de693b2a8d *240f937a2c7234d8ff131e189506ada101b3f064746efc3f4ea79f067f107f60ffc6b9c17f4b90 *ee82269139d1ff81004aadf82395c086c77f5d64c4a12ef46409ce9ed3f101b4d9f19fe8ffa3ba *d3952900feea544610e53de45e44bf9b3b6b0ac57f41f64c27312ee0dd6ad4a36ed0136baa7692 *4cfa14d867a7a8bd76fbc9faf187c3867f00fef9f658e64eaf867f7fc40c5205129a05927923d1 *60b0ff5fedd6713a5e049327f86fcfbdff772a66a7c41fc59f9b1ff6f564cf11fe5ba551991b9c *8e680df6ff54b4a872fc4936de53e2bf3692809ad89db8644bdc6b4be03fd1ff47e98993de7b28 *fd06b2250e0dbf7b4c4d9ff6ef5dbf21a4d61b4dc0573d3eb3aecba048249cd154b6502d0a3843 *35a454d7906a7b80c3ad2fc27a2b4c3c12ffbeb345e9f425f0cfd3e9814603cef4889f4a299615 *f9fff548b7f48c12fe3405734c6c84f97cf97fc7d87662fc51fcb974391d3d3b39fe3f3d89a5e8 *7c91f4c678ff97fa582ac69fb8263e43fc076c3080d3cf712af2a09cf4abe03fd1ff8737b63990 *4c703871e142a6bc4635d7567c06504cb9ac3fbdb7df51eb9abfa1686abb64e0a2e1ddadfcc31e *34a6653cc78a388ac5f35dc3d2a49baed72bef4fc75f1e57a98f7fccfe1484815397516a13c210 *31fbeac4a71de9ff57a3f9f1a680da34c7b0a1ad65e7d2ff77e9f473813f893f373f8cfafd4e87 *ff0b482d8e4f9a53fd5f9828a9197f32dad8d58cf1472a2baf06cd5f0f211f9807ff89fe3fe124 *4e8a534e25a1f570ee6c057a0ff89669b5171f6fbd3115930afac063830924f52a4fc93876009d *3fbc55662cdf575342c21cd63ffed0c94bcd83ffeef777bc584be1df6ede381d01ee77023a2674 *8c62baff1ff4ce42992e58806a8f45042ce7c2ffcf15fe3cfeb49f88fefcdda2f86fb4c9b6ca26 *9c880cddf568ffef294cd58f3f87f1d5b9e33fd4fc22adef2ba2d2b518fe13fd7fb49e3829d973 *2d759588d54b23249ee55bfadba14b973785f2e7cff06127145031d08e6e35aca9ba4867bc2736 *c8c5b246eb99690aa6577ef19b6e99ab37eae17f2c32d6c67fc329f73e1e54719e0e0e7b9065f5 *d9c1adb8b7aaccff8f3a29a1a0fcba2ec8bd074500fa74febf13cd3c5ff86bf1a775aaf557df6c *62c832f83f7fba399c6ed811f5b1629c6a18efff9b99bbdd20e422f167372e572bfe00fa17cf54 *4b5496b6baf84ff4ff7152a494911ed1cac1debca0d1d193f204d80eed25a5d69fdd13782de40f *1aa1ff0dac4f431c48e1d9f212bde6b3f294bbd658bb7be4a7276d5c0a1fdf5e02ffeb377a87cd *4af8bf08db7976a543c643f645d89792b7add23830c6ff8ffdea6c9908da281397e5aa8c7f89ff *fff8f810b1cf17fea5febf8b21df3f8a08a6e6c3bffd487e7dbfab35f0e6280fb93566f2ff9bb7 *b21ce6acf1a73b416ce5781688ff54b9cc69c7f0c5f19fe0ffe3d2e9b46180f49fa04afd80e1bb *80855c9933b45bebf6c3f2f1ed76c74bbfee6bbf30ee6fef8f7a92fb057fcb7e1a3eb9b3b9eb7e *5bd142f8bbcbeb8feecc8a61ffeba33bf1eae0650a2647a58161f0f745d24893fdbf5d204a3de7 *fe28ffbc5f11ff92bf4dd956cf19fe23fcbf3d2cb79fa69b1f6eb2eee3c0fce4eee623b9e7bf55 *884d50bf5649a3fe08ffcf3eb353e30ffacc9e20fe537f3827f88ff6ff11642f6acf00a588879a *6bbe98feaeec32382b8e0b8af82c641510f56d45a9172c91c37c49cc02012731fc0d7fc3dff037 *fcdf69fcc791bd789dc27d45a4673c209a433d005cb8cdc30e4651715ea4b42d2aa3f08bc17cce *ae809700e9dc39955bd2f037fc0d7fc3dff07f67f11f7a1247587945d9cd15f2d89425401c624e *c6dd028e6ad42a0cf325b7e6f1fc3e1dac731eb73de49913c3dff037fc0d7fc3dff0ef9e70f849 *5cdd71c13612dc49e888f80b6e3370a06e823af6e5693ecf661314e4a50c892bde6792248cc3dc *8386bfe16ff81bfe86bfe13f8b1429145c23dd26051c387226417d09a2ab2209afc8e3f65ed389 *2b285e08db392a56eb40f3219b8234fc0d7fc3dff037fc0dff37032dbf2ad253e761aac4715955 *cfbaf8d07f5dc02400a438829a2e3ce890041b2d1758556515f0f843a188ad075e61f81bfe86bf *e16ff8bf9bf8bf196ebe8c29ced3f78888d0e1628438860fb75bbc1442e6e87dd9b801529a03db *3999240a775320e2df95e16ff81bfe86bfe16ff8fbe1ade9317dba2f5025c34dfe44e955ce2a78 *46ddb3d27aff508d46655a66ed85013e27e3d8a7c51d47b973e5f143c3dff037fc0d7fc3ff9dc5 *7fd4220ee7ecb48a89aabc86eec8d1220b1c1e2c61ec014d8f4476d605e645a2b8fc0a2bdaaf50 *9ec763f40c7fc3dff037fc0d7fc3df8f5ac4bb69719cdc40fc870e4ba3aa42ab2ba03bb3425cb5 *5e9eb8775a0b842bd4b9c31921425c20b8311e57441d92cef037fc0d7fc3dff037fcdf8c354f7b *02711b21a92cac342175b4477288ba561585f1707a71c5cb25a00531b978287a88390621f9b32f *1bb134fc0d7fc3dff037fcdf1dfc472fe2b436b1a2e90ed8b95792dc401cb360425f19f7432387 *e22cbf589b900876945d99b881f470acc0a9339886bfe16ff81bfe86ffbb89ff9b0906c6f79c2f *ab170099758705041d57880338b89cc607cdfe23afc0bab16c483f30b63dd8f3002e4f6e2331fc *0d7fc3dff037fcdf59fcdf4c3371d09ea42c3cbc7e7982cfc33b1587e5cbeb3270468fc817029e *7cf46bc807c42747bb4a87e9089c07440786bfe16ff81bfe86ff3b82ffc4459cccf21757f9e5bd *5cd95e4b2931e0f63f568b09f08265963caf355df8ccc33d241a92470c0a95f80c7fc3dff037fc *0dff770aff37934dcc0014e4409c381fe74191c2537e1bb4f7f36066411320163b0a444e3c274e *37783dc7b2a202b284a2d005280a6ff81bfe86bfe16ff8bf43f8bf99c340f1622589ad90da3dd9 *89b9a0f42490797f42c1b7c23441308f41e6fb0077019b71004fee34911d797ac2f037fc0d7fc3 *dff07fa7f07f339389374e930379535f39a500e3b4f140b48e4f2bd0d9013209e8881a6c600d93 *e8418739099d575ccbf037fc0d7fc3dff07f87f07f33ab797928004db7a1020adc74917a8aa715 *164c662b8ac87396fe9528340f5a1099028e2fdbaad11da9321961f81bfe86bfe16ff8bfadf8bf *99db080f9e3ab08fc87251e71e50c04955e029370e1a3d707857897a1ae52e0bcc18bcf2f81381 *b785ec09390fa1e16ff81bfe86bfe1ff96e1ffa682a17c8bd83f80a871114d8d384d20e66d705a *c3793aaf87297a94cb284c2571b100e28794826045a5f10c7fc3dff037fc0dffb70dff37d52cc0 *a644e7c18cbc2f68c6d3e6e8e1f37b363be0f084e00ad1d18b1b42e0452bda6de8e81421ec03f1 *b495c2f037fc0d7fc3dff07fbbf17f53d3309b9cf0466ba4ee2b4e08af910271f4c8a0c40a8f27 *10ae9e95d72614f08c3f743fb271e53b61c3dff037fc0d7fc3ffadc4ff4d65c35905455516a720 *442771183db4077394700f49d8a02d19d944ade8bc24d71170a4f582ce6b38303761f81bfe86bf *e16ff8bf25f8bf59c4a46603a5a541fc938077591e6c72704a441e4e2c91a90df88df06067881b *3257842b384049fa1517c543691fc3dff037fc0d7fc3ffadc1ffcd82462e832bd190f63c4df76d *c5870bc806d2d3667e30cf98fceb904362553e65acc033528295a8d927110518fe86bfe16ff81b *fe171eff378b5b80aa732e6815810037484ee3e3157bff38578090b7218ab462ca28ef5dc4deae *4f5fe25e4d47a46c491385e16ff81bfe86bfe17f71f17f73222b69adf74a4b1ee2c865950e2e4f *53d060e990904dd61de1700386c3fd9c4e2522087052638549804947a8e16ff81bfe86bfe17f21 *f17f736a135115ab1e78e3e4bcd681c087fabdf288c877b722b3f941990a649308646403957b38 *e7b0949951c4020c7fc3dff037fc0dff738eff9b7363bcea5122d2ea950cc98a946934fa7ab2d9 *73846f87b46a007e033e78e83cdc5bae089b6ee2ed411e6730fc0d7fc3dff037fc2f12fe6fce9f *05d62100b743224d90d747129cb8a1a2da794c3866c818a303cf2c12fdad9078aea62040aa4ee2 *7e7865f81bfe86bfe16ff89f7ffcdf9c6313b761c50d0988ae675530d6871232f2172afa68151f *d477b1429a7d5e634b0024f9a8bb92700bc0894ec3dff037fc0d7fc3ff9ce0ffe622189a91a7cd *ff0ef501d23645479b128958bc238ab1c843f060c54aa3e673885648ecbd44ae42734d2b8de8cf *f037fc0d7fc3dff03f19fe6f2ea061b791f73094b88f8cda39ec781c6447697908dbbf5c3af102 *3380e8d88c12c1c31c9723752b4a2c60f81bfe86bfe16ff89f06ff376f8591a1009a6f5971367b *d084e04251af05a9f238cc95e70a06f91da6ea25431c8e0e480a89294f2983628e02c3dff037fc *0d7fc37f49fcdfbcbd467b1ee4648b2fcae1208764f38c0504b92b2a5883da2c3953ae2bde2b8a *e30f8e94903c9ea140dc8986bfe16ff81bfe86ff74fcdf98999999999999999999999999999999 *999999999999995d347befbdf7decd7f77df98999999999999999999999999992d7c06bfb876e7 *f283f66bf4efd849dcccccccccecfcac4aa35f71f775efeac3877f7cf2ea7f5e4f7ccefbbfff61 *76645e36afbef9c3e3bb7fffb0fd7af0e9e3f0fc6577fdeaebce089799999999d945594c9f7cef *f3c56ec4539ddb55697714ed9eedd5d9eb475f3dbdfffbc7e7f01df9f2a31f9efe4778d3ee2f5e *bf79fa63e8aeb9040a3b899b999999bd83ebf8bdeb0f5ffef26ae2d289feaac6aa34fa4e8fff79 *fde6ee9507dda6c5ffb46e41d8ffc2af6fda25be3dadb7bb8ef69bdec6e6d737df7cf2383ed4ef *9fadfd933f3ddd6d54da6fdaff269984f87bff97f5971f3c6a5fbd45a67ddde422effef6c1eecf *d1c5a7affb2f9bd7fdfc1f1ff99fd7bdc7fbb76066666666f6b62ee2cffe2b7cf9bb476f5e678b *9db416ec169187fffc64fddf2fbb05a55bd4da35e51cae4ae949fce5ee24fec311811fc3cbbfbd *dafdc2e36f9f3df8ecc9eb57af5fffefe6629efcbb6f7fbf5de27777d13ed85ec6eb6d2abe7bc2 *1ffef5d9833f6effe4d5ebf69bf619f26d43f77dfb542d74edb3b52b78be4b6981fde60f8fc35f *d6640722bceeffbe6e370fdde3c92dbc7fe943f373333333b3b77511dfad1d9b23647f8dc897b3 *dd2ad6aeb0e1af2fdbf3757b96ec1668746aaeb12aedae64c49d7635f107514dbc7da47ddace3e *ff8747afcef63f6a5ff1cbdf6dd6faf6d5db85befda6bdebf6fbe4b2e33f69bf69f121f7d8fe74 *939af8155e67fb42f7ffe9877bfff030297308fb817f78787cddff792d5e4f770b66666666666f *eb22fefaf59bcf6f6e0ebf686d8ad78276056f7fb449c2374549f893af4ac9499c6c2736ffbdf2 *204e986f3209ed2d3f7fb93bb9b7fb96f0d7759a4cb8d27b86bb571e907b5cbfd834096c9aebfe *f9c9abb357e89a5b6cdbdd4297d9109f2a79ddf8f1f816ee5cfec6fcdcccccccec2d5ec4378bcb *7fbf6cd7d0d7d1d2292e673b7bf0e9e37625224b61d55529be921177ca1f6f4fcaf1c1bcb32f7f *f7a8dd8d74a7eca293f895078724fcebe455daadc8937ff7edc6895c70bbb3bafbf70fd9a1bebf *b7890ffbe22d9899999999bdad8b786b8fffcdb74bb3ba16b4cb717b0cdf95adcb17f113ae4a83 *4ee28fbf7df6e8aba7edcbb557fbe47b7fffe3fda9ffc99f7dbb7978fc6fcff23f4435f1768d7e *f65f9bcc79bb5ec73d00fe2febf6c1f674bf29b56717f3ecff6e7ebae903fc0fffe5c73f10b8a2 *eac39ba4fa10dfc2877ff7b9f9b9999999d95bbf88b7b6ebbe66cbd9affb86f3f0ff3649f56e6d *6d57e7977f7bd5add15557a56e611d749be2e89cf0f8af6f7ef87adb44f7db072d1a5dc67bd7d2 *1657d28f7f2875a7b7f66cdbf4de7eed7ad876bfbc6923dc75a77ff0a8cbcc77d6aeefed8bb62f *7df7b70fdb6f76058bf8b592d77df8c5d3f637db37a205397e5cbc0533333333b3b76c054f96b0 *4d27f6d5876439dbfd7ef8ebcbfbbf7f1cffed66156b0faadf3e3b87abd23b3e286d73e2666666 *66666fc15ee59dfd321f30333333b3a5ed42af4aa6626666666666666666666666666666666666 *666666666666666666666666666666666666666666666666666666666666666666666666666666 *66666666666666666666666636affd7f5274ea0b656e6473747265616d0a656e646f626a0a3638 *2030206f626a203c3c0a2f466f6e74203c3c202f46343420323320302052202f46313920372030 *2052202f46343920323920302052203e3e0a2f584f626a656374203c3c202f496d342036372030 *2052203e3e0a2f50726f63536574205b202f504446202f54657874202f496d61676543205d0a3e *3e20656e646f626a0a37332030206f626a203c3c0a2f4c656e6774682031363036202020202020 *0a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78daed5a5d6fdb *36147df7afd0f6d0390dccf25322d77540d6ba6d8276cd620f7be80a4cb3e5d8ab62b9b21aa318 *f6df77a92f32b1a83843b1f2a128dc58d6917cce21efe5bd32071f02125cc2eb45b00e30fc132a *420247320a241708f350f2204f8245f0cb80940012104e50c46410b110611205b3ab01867be0e0 *450b1935989105fa693a78f49ca88060a4b00aa68bbd3b4de76f87441ebd9b9e3d7aceb90d1402 *4905b7d688a72f4fcea7e38ba311157848d1d148603c3c3f5274787231fe79f2f4e2f47c5a9d9c *fe3a3d2272f8e6e2f4e495beeb603c6d29c2458829deab82718eb8a4f006a348a81283428d82ff *0d0e03000919eaf31f066fdfe1600ef73a83d75ff0da0d348a2221c03a829410a5a183c9c0585a *9d6d6fb26fa79088870cecc40251215b3bb90a145270064ca25821c168d060b457bf638137cbac *c8b6e96a9ee468b14a8b24dfa2fc880c93eb244e47451eafb76893c69f004b9ad76db7f4002842 *835031c430fb724e54e747f5e5fd34a2cf4123ea1f905012c478f7801029514848d0609a019927 *8beb3887794bc5f0e16eb99a2d1f5607b8d7fa50c184655f4eb377d68b08717687f535c6b2fee3 *ba32fb7d926cf4ec9fbdaf8ef5e95eff211f72c97c106e98ec0b570ae188b46c1be1dba458543a *77abf53cdba16d11171fb74eb10c78d0c8838c6731d9cf789097b9602ddb46ec71a5f4dbd3abf8 *32a9df9b4126c73742af1c73f88037986c71e3922a7da234595f16cb837224254844f46b8e6c87 *1016a69044fd815a633a02f54f08d15d9ccf0f0b535dc08421f540b6c5c419a60da691bd5b266b *a3f3c7fbae11420a14e1c807f18689b350693066cc678bfdd074498d18d464c4830c6531714bad *318dd478b3493f8d92c5229915bd2a43a89055e8834ac3c4adb2c6ec2f3af36cf6f12a591768a5 *5332d49b507f5a65e9369f391de00a49eec5381b26fb0e70e855086fd9b6e39c270b7b19d99bde *bd83cf222465e843341b26eec1af316ddb012dc521339cc25f467c106998b845d69846a429220f *a90c04614845a11f25bc1749055384696f6150433aea8245961f5e167085110e85079a2d26ceb2 *a0c17497053f74940565613b6a530da4d7fda2d5e94d2411f121c31a22ce00ac218d31abf53d4a *061e86887851115b4cdc4a6bcc7d4b062e38f2a1fc6d79b8159688cf592c704e11e55e8cb061e2 *2c161acc67291638f4c254faf08cd262e21efa1a73cf6281138918e33e88344cdc226bcc7f2b16 *380e118bd4d7c7088de54c71c429efad161a4c47b9503ee8de64797158c1c02485af553ee8364c *9c054383713eee4bb3595cac32ab8a8821abde4a38e96afdbe33e9dc9eafb77ec7811618263a85 *29c36071aedcffe36c329abc3a7d369ebc7cf3db77d5ef3197c93ac9e322d95687c532a9de2cb2 *34cd80e8657578165fc79359beda14d5f12c9b27df3bc749b71dcc8726c962b23f4e1145ca90d5 *06b53f019c5f8c5fbd3979367e76fafae4c578527df8a47a24b94e76d5f1499e97bfd09473f6b1 *d30c684fa4f4a199b29838cda821da0c88d299999e9b3c49b3785e3dbe25c3adf915ab79582b86 *7f3b3dd04d16f5624218261d098b21265bb2a507596ea2b39d1d2b6b3e88217e7ce3d36f9e7457 *fc8fbbae5d1d1f1f621f06d93e3cf837443ab21e2b9fb2d4106ddead207abb7a7743fb5acfa33a *94ca69e50c21aa5b2fe243a36831713ad060ba2d284be5328f3cb1d33c9c71cb87fe0afb103c86 *882b766a8496fe8f538e6ea2b00fd58bc5c495101b48bf22689a8817825a224e3d15623fbf97ad *ecb8a9f63184e601898942b7449417ca0d13e7dcac215afb6a61d27adbdac6695a7dfae081094d *30e2d6468d437cd1ad14f3a1f1b398b813568db9510195a5f98d7c6ded590153ccb69572cfca54 *c3dd190cba2e2a7de8112d266e3f6a8cf6a3da8a53aa5b9960a91d791d17cbd28a34cb723d95f4 *0708b0f3ecaaed65aadabdfa43596fa948757b497de86f2c266e9b6a8cb1695b649b3beb6102ed *208bb807222d264e910dc6882c13e5dd2a75f3477c184a8b892b333690de458e44186ee8c5b819 *26ae65ae81f42b821b0a2c3dc84a1613a7a21ad2d199a5b1b5709bad33ced589f01088311f741b *26ceb95943fe87559b308e84923ecc70c3c49d996a8c36a6733b6972ad3794d64b73b39bf48eac *45290ab90ffbe92c26ce995143ba63bcdcc60c170958ca59d77731f8aa103862fbe4bfd160ad34 *656e6473747265616d0a656e646f626a0a37322030206f626a203c3c0a2f54797065202f506167 *650a2f436f6e74656e7473203733203020520a2f5265736f7572636573203731203020520a2f4d *65646961426f78205b302030203539352e323736203834312e38395d0a2f506172656e74203537 *203020520a3e3e20656e646f626a0a37312030206f626a203c3c0a2f466f6e74203c3c202f4631 *39203720302052202f46343420323320302052202f46343920323920302052203e3e0a2f50726f *63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a37362030206f626a20 *3c3c0a2f4c656e67746820313738372020202020200a2f46696c746572202f466c617465446563 *6f64650a3e3e0a73747265616d0a78dacd5a6b6fdb3614fdee5f21641fea2c314b8aa428760fa0 *edd22645bb6e888b026b0b4cb1e5d88d2db99652b71bd6dfbe7b45eae1d87412600388c021451d *53e71c929757927b9f02165cc2e779900514fea456445215ab2016925011c52258a5c124f8bdc7 *2a000b34279ac581e211a14c05a3458f42173478de20061632e8609e0c7b0f9f0911304a34d5c1 *7072b39fe1f85d3f248a1c0e94a4fda76fce87872ceebf7e75f6c7d9afcf0f0721340e4f4f4ce5 *fce5d92f27e7a7afdf1e7e18be78f88ce94eb75c28a2440444b047a611d23b1936e4840c89547c *2f7f2e04117108154a94d41586448882ff2d8e0280c838c2f39f7aef3ed0600c7dbd80cf47f8ac *7b88828b49163046b4949593bdf35eeba539db74b2458481ae48001145250965dc3aa9034d74c4 *51310b61a4b40e6a0ceafee7a66c466300b12002db39e51e48ea30714aaa3128e973b23a1cc850 *f6df9e9e3d3d35d59f4c417f70ca8d19e122be45aefa2fe4aa5be4b64cdc722d06e54eaeb35139 *cb33a3f02a4d97c35532ba7a4f25850f33cd7f3b75479a70cd7dd0dd32d9d6cd259151431665af *67d9385f93a24ccaeb6263900fce16c921eb5fa6f6d01447a6405b3af3c2b6b2d6a9a38d6fe593 *1b9db86c948a08eec5f469996cd918324d42211bb6e8e3729a977941e66976594eddcb0382bc88 *bd98262d13f7f2b098fd018ec3d542e543806b99b82559ccf68abf80c5be4e56e3bb2ef890c1b6 *16fa20bb65e25cf01682aa67939d2bf8671bd9ef229d6a1231e5c3246e996c4b17906f840d5994 *3e1854829dab1393b1280a3d10d661e21256435058b25ccebf9e4c26e9a8aca7af5b642c89a23e *8c5e878953a485a0c8713eba5ea45949668be4322d8889b873d8a266e374458ad56863fb32a7df *5523fec1ed86e29071320f96718789d30d0ba9f69b7972e7118f18513af24163cbc4a9d14250e3 *5612e6962834898517c3d8327145e31ab2775b955c91388e7c58a62d13e7b65a63f64b02b0e6cc *07492d13b7248bd9ce1426f9ea1e89826470dfadbc18c89689736a5ac89e44e1c76e7825187eab *94d7b40eb6ee03dcbed010d7bb072bb621e28c490681a61c1ded4f2184a68446d203591d262e5d *35e4be29845031613e04db968853a241fc6ff9838822c2a4f46075779838cdb0907be60f420ae2 *4352dcf070eaab00f7cb1c8408ab7b790fe4b54c5ce1b986ecdd6605a7248c7d7888da61e2dc66 *6bcc7e492c269c0b1f24b54cdc922c663b73285749562cf35579c7dc41d08870e5c550b64c9c93 *d3423a4f15e7f92869d5378115426e157a67d9d56df1956b4144283c589e1d26ce91af31cd6406 *5808d1897011216ec0196131bef080db5a1b8843a20e070cdfb23cbd2eca7c31fb6b965d9ad72e *e5343515b06a9c16d37cbde3fd0b580057e7cc246dcff2157c85b37e06601df68fcd91e9092a6d *4fd5e134296e009609e67255536eca643edfdf89d94feb0e57f81a693ccac7e918d9223f482ae1 *9ec7249530177868a571a6fba7c3572f4d137ee5d83426e048bf30f5758ad74740625b36fb80ca *f2fa623e2ba6e62c3ec94e719f2f8839fb167db04874c5f49a64a5ed25efd2346332b223817a23 *58b6d359616a175fb114f515cd48417b628aae3170789d4162b10118a5ab12667f8212f018dd3e *b6886c6c2a97b3cfd8ef0eef90b10ab12f2c8040d5c0aaa7ebd8520d84a95eafe6854563bf88c2 *6b65c922b5edeb695a0d95fd4239cd8bb4d34d61be344a32d378614f4e72504576b033334fabca *ad63535da7b69c5573086a23734d18223c8e2a5fa0b90d9378f4e76f6f9ebc3c3b3f1d34ef1d1f *d87ea6b3d1d45e25b9aae61c54931d6c96e63aef290dbf983554cd742cab3397552a78bc79ca4c *b50db0298cd55843abb1b45663b5e36bb56873535ed4a7cd54498d69bb625c08bb3ad33ea4201d *26ce185763d065dcc6c6290c9e8dec46eac02e030cf3ebf61e72b94a27b32fe6d84cb16a077499 *827901f761ebeb30716d7d35a4f6649e96dfb7c2f1f3b118c0926cdb26f96a8181a0344dd9cc9e *3bf8f6b80922e46361df9719ebd0aebd9641de11c63e64491d26db9629983f2a6cd8d69e4dcbc5 *7cdba31b06890d83eee70ea627a1f66195b54cdcee584ced4eb56006555477e863907b70e543a6 *d461b2439f22026ed56a4cad6f912c47f5ef0dbe7b50ada16471314edad9800ee0c3a67d63cce2 *9008e6c31877986cbf3e1694b0286ad8d61eec98ef5540f8f6987c7bdccc75f400e3a8cb024589 *88bc98062d936d0b403a85fcb5c6d416d47be900ff75b68abd832e632269ec41d8eb30712bb698 *2dc5e5d7e54dc5b785347cec21a50fbf2dea3071fe5aa2c654a96cb3ffdfaa910b22b50fbf08e9 *30713d80aa21cde0d6372638ac8fccad15569bbdce253a0ce19a3efc4ca4c3645bb4e6c096376c *51f5a3519e95905977a6f341997e291fa264085d073725db5f256a09c900dfc585c382894003ed *9efc178e91eee5656e6473747265616d0a656e646f626a0a37352030206f626a203c3c0a2f5479 *7065202f506167650a2f436f6e74656e7473203736203020520a2f5265736f7572636573203734 *203020520a2f4d65646961426f78205b302030203539352e323736203834312e38395d0a2f5061 *72656e74203737203020520a3e3e20656e646f626a0a37342030206f626a203c3c0a2f466f6e74 *203c3c202f46343420323320302052202f463139203720302052202f4634392032392030205220 *2f46343220313720302052203e3e0a2f50726f63536574205b202f504446202f54657874205d0a *3e3e20656e646f626a0a38302030206f626a203c3c0a2f4c656e67746820313835372020202020 *200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78dacd5b5b73 *db44187df7af10663a2480377b95763dc0104a2f741828ad792a9d41b19544a92db9b2d2d0177e *3b9f2e7bb1e555d28119763a6e74f9ac9c7376f7bbad32791f91e80a3ecfa222c2f04fa804099c *c824925c20cc63c9a32a8b2ea3df26a4352011e104254c46098b112649b4dc4c303c0347cf8cc9 *4cdbcc1ca31f1693b3a7444504238555b4b81c3c69b17a7342f1e9dbc58bb3a79cbb864220a9e0 *d18dc5e3e7e72f174f5e9dcea8c027149dce04c6272f4f153d397ff5e497d78f5ffdf472d1dd5c *fcbe3825f2e4d7573f9dffdc3c75f2646120c29710537c9405e31c7149e100a344a8d606c58d15 *fc6fed30182021e3e6fefbc99bb7385ac1b35ec0e7063e7793c68a2221403a829410ada093d713 *2b6977d73c6428a79088c70ce4c40251218d9c5c450a29b80322510e7a1160d4db345acd2f6f8b *659d9705a844c5c9e75ffc81055ea79b8b55da5d69ceab537292bdefceb3a2864be450ad660014 *a151ac18629805a0848364a004231c11a60cda468986e85d5e5fcfaeeb7a3babb2ddb62c769915 *0134a81e2a82248871798f08c97f2142728f0816c95004ca9150caa01d8a7051ae3e3ab3c0610f *628c0a102b583b2c04012c92a1000c1c586cc06afebb75beca76d7e51dede8eef16e0ff24d0a02 *5c65b3db6abd6b7438fc78751109e22c888961910c7421b02a242706ad16667b7bb1ce77d79d06 *f36d5af78737bb46082f6708135c0631172c12af6fd436ad6f5c96450d833eab3f6e7b4730adb3 *bfeab3eb7a03e3bf9e7a2933404393109ca045e2a7dcdb3c3c1c64c0fe819e901224121a821216 *893f1cf4360f09079f1213b142314942580116c9d170101bac0f0c06fc3eee4dba18c73400ee0e *125f24d0269a3c3836130c86b1c038fb2e16dee7fb851428c121cc020789d7f76b1b2dc526dd76 *c48b7c3de61b7468ecae40581895246190369300bc838364e8276382241306ed41389c5de6eb6c *10134702a280e7252a0e81b545e25d12bd49171c0c5318e6abecde19cf553b9702206a910c8797 *c021a47fdaa661dad2db395407999e97334b9094f1ffb7cabbfbb3feeb01381b0ac2b0e3d29384 *22059af5267a61ad32c8423af10f73f123e9c7b151f28e0e6148257108b2582443592454a5d280 *b5b22cd769e5a420f95551eaf323c5d9a81098221c425a66817865e82cb40a907b7b3d2b57187c *9608809683e4082f092916316835b3f928b5442212822bb540bcb9436f627965e9caceda799dd7 *3a8c4c5fc2842e5e2f9bde4abead0fd6fc746c06f3384624080fe720190617861117cca0d59ab4 *42ec9696f47c9d1657b7a94e9ca62fd20f204afaba35f1169a5c7014426e6d700c05901492a6a4 *47da6611bb6ad9933c33438d6e76d3fb7c16e714511ec4885b24fe11ef6dfc237ed855b86932e7 *0f6967333ef7e177501942bbd941724409819add016d63fcc1b6ca8ba575089765b549eb83ea62 *0a5afcfde8ecac3bfbe6b3378f7f3c5f9cbff9fbd1fdd38448c4180f411c8bc42f4e6fe313e766 *678f212ffa9056ddf9974d032a2fde955551d65f76d7f04312548e63c49220e68e45e297a7b7f1 *cb33abcbd9ae86ab575d3fe2cf43a5b6d7655dee7c7230c511a73c00a7e22019166350855107ad *9623adaab46fca7cfdbda75019efd433f0cf3c5621f0b748bcd341dbfc0b57f2f6ed778e13b96f *b5b004234182981e168937f1d236469efd9eddfc9aeca75d1068409b4f4abb18e0114206e03e1c *24de9a5edb7805e9cbcae9f36cbd2ec789f318c5416c6c3a4886c445734f18b47bd9479d5e984e *d54559adb2de43622f67c651cc83186c8b64e81c314371220dda6eeb060674b74d977d5c182349 *298a83d8ab7490f849f63686e4365dad2cc9d1194c70fb324500442d126fb755db98a55b5776e1 *7617faa2727e97af74db754a307e34ed3281f9b26ca640df49ea573a14a3f9d575eff2281dd38b *2a899220362e1d245e57a76d8c5ecbaca86185fbc8c918c920b6281d24437254204a9941eb6ecc *74a5948f5ec2910c62dfd141e2ad15b58da6b7ceeafdb99e6faebc4c630a3f8318488be4c8aa4e *108e6383f621dd3c2a307c3d84f6868364c82c813a5fc506ed5ec46dc6ad733ba6e9d1a5edd9a5 *539c400eb67b80ffa64c211cc406a283e448a092ed4b79daa60d5445bad1ad8eae1c6b72cdcadb *d6a214668b0862e42d123fd3dea66b6ed51fd7ee4b63edd1573df7cb7c0d2e79eee74d04c241ec *0c3a488e14a331e2dca2b54ed9dda3f990a5eb595da585b7f4a690d29020b6071d2443b60a1ea3 *b8416bde12cbea7e0daf6eabd4be32339a5210451091210cb083c44b59db0c29b7e39a3ba4d927 *b41c48a210652480d5ed20f1ae6e6dd3aeeebdaae9535efc2310ff68101b8f0e126ff5a86dccce *63b9bcdd403a89eeaabccebc1ce127a3418cab45e2ad2fb48de6985f5aeff56ddf633d6cb08e0f *31678805b1f9e820f1eec7689bbd446cbfbe4a75c564b295e9e7ded045184141f8720b64b8a439 *86548d68aced8a2e8be53a5fbedbeb28e7050cfcfe9bdfadc3db96553dbad8dbbf56805f08454b *5f371ec06cfa5131d0c3eecd7f0051e07d0c656e6473747265616d0a656e646f626a0a37392030 *206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203830203020520a2f52 *65736f7572636573203738203020520a2f4d65646961426f78205b302030203539352e32373620 *3834312e38395d0a2f506172656e74203737203020520a3e3e20656e646f626a0a37382030206f *626a203c3c0a2f466f6e74203c3c202f463139203720302052202f46343420323320302052202f *46343920323920302052203e3e0a2f50726f63536574205b202f504446202f54657874205d0a3e *3e20656e646f626a0a38332030206f626a203c3c0a2f4c656e6774682031313033202020202020 *0a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78dacd586b8fda *4614fdceafb0a8aa821486793ff8d876b3d928cd4350456a366abd3080b3c626b6e946fdf5bd63 *1bdb8b31bb7d7cb090d9f1ccddf139e7de399e61f0d523de06ae6b2ff2307c84514860a595a7b9 *40984bcdbdc47a6befc380e401c4330c19a23dc524c24479cbdd00c314d8bbae222665c8a411f3 *e362307dc9b9473032d8788bf5e93c8bd5a711450a8d274ae0d14fbfce1763a247ef7eb9f9ede6 *edf57842a173f1eaaa68ccdfdcfc7c357ff5eee3f8f3e2f5f425318d69195748710940f219890b *195c2d2a705c502414bb889f718eb8a6d0c0480993c720e9a2e0bb8ec3108084966efcebe0d367 *ecad60aed7707d81eb61e0a2e061827884202344aee4603ea8b52c46ab495a4008f0921c80282c *1015ba56d2780619c91c63aa08121c942c631cef60b7b9c582b8eb54008235c286781212c030eb *01b906923639c69161b2427b42eedcd5495813c4b87e82b0fa3f08ab2708d748da840987ba1415 *5a471858e159968c27828afca6e858151db38760956d8bf650e031197d3f2c47b636d86cb37288 *92e14579a441ccb03ec8532369cb03b6c48caad01ee5c915d997b4fd30d84425ebd0aeb3cbbc85 *429cf5a22c6a246dde0282a8aad03ee2ed1fd39dd87549fbbb61275f5090eb5ee4b94672c6d424 *52ca54681ddf591c2dc360795faf832fe92488c220b2751794ff9dbfbc7ff093d5c5ac33004855 *1fdcaf46d25281391380098e31c7ac27363b246585affd30b5cff23f0aef0945fb40b94672a6d0 *05d24255681de5e1fbc4fe19c487b4603c0f83951d3e8b32364812d5875aaf919cf1348c889415 *da476bbbc3e51f593cd4fc735dde6df0a4a43d50a481a4d3e58f314fba7ce2de7397896b8114ee *4329349074dafc31e6dfdb3cec7161ef4a7ab0da1b483a6dfe18f34f6c7e1d274fb9bc90042923 *fb20428da4d3e58f31ffc9e5053748f35ee4bd46d2e9f2c798dce5dfda6f5997c33fb5e13f3905 *4e08686998f1e0bc08075a9e3fe0e3d8d011d410d374b4f423d760a3287e287af687bb3048b7c5 *4db6b5c570eaefcaff481da6745b84b3919f16dd7716ead01d55ed8ba2e310ad6c52c494b3d0d1 *2da56c7a771f2553687187d725828088208a83b62fa6b8c5987e9b75a5966b89b4eac39ea581a4 *955a028a63632ab4c76a2ef59d3474cc2d6c7a076bd949d369655cc11990f6e19dd540d2e6cda0 *d26405d6d1fec3f11e4eb7f1ce4e777e74b0615e04c07792ee0f5914dca37db4e9e62d294cde87 *575603499b379708d30a6cbe925b94c37813ff0ebc13bb925c5f662d081c807b91ed1a4927eb32 *a4cd3a5d26d64650e7c03a4bebdb6ce20ef80c518c053c0a1c00c1e6de0972c9ce0445041e57b8 *99c81fb7d8fad90f69f1835890bd281a0fb6f89bdb9b6be4f6e61afe7269d3323c3e2465d821cd *e25df0975d15f78db5e96e0b2bebca1306f0a617d559233993270cefd40aac136e9b65fbd9741a *c64b3fdcc66936d318e3a93b373a17aa2538e15dfe5e6904a2e5e9f90410131a4920829b837f03 *2e689823656e6473747265616d0a656e646f626a0a38322030206f626a203c3c0a2f5479706520 *2f506167650a2f436f6e74656e7473203833203020520a2f5265736f7572636573203831203020 *520a2f4d65646961426f78205b302030203539352e323736203834312e38395d0a2f506172656e *74203737203020520a3e3e20656e646f626a0a38312030206f626a203c3c0a2f466f6e74203c3c *202f46343420323320302052202f463139203720302052202f46343920323920302052203e3e0a *2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a3836203020 *6f626a203c3c0a2f4c656e67746820323031202020202020200a2f46696c746572202f466c6174 *654465636f64650a3e3e0a73747265616d0a78da7d8f4d4b03410c86eff32b729c394c9acc26f3 *715ccbb65644d7ed78124f6a3db5d0feff83538b6541911008e4c9c31b730486cfd66b3800b5d2 *925029e5045914496216387dc00e9e0c7f030c2c8ca9cb90ba88c409def6869a83607d45fc0fe3 *67d04d358b151760c24205eaee97a9bebfd810dc6bbd5bac44e6a02ae6d2d4676279db8f75989c *0f4a36a0f34a64475782eda7e161bb9c3663bd2ceb73759cede3b4e9efcf5633d46bc476845d91 *7fbfe83463d4083e0ab5a0f2177461b4cdb3e517996a46a9656e6473747265616d0a656e646f62 *6a0a38352030206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e747320383620 *3020520a2f5265736f7572636573203834203020520a2f4d65646961426f78205b302030203539 *352e323736203834312e38395d0a2f506172656e74203737203020520a3e3e20656e646f626a0a *38342030206f626a203c3c0a2f466f6e74203c3c202f463139203720302052202f463434203233 *20302052203e3e0a2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f *626a0a38392030206f626a203c3c0a2f4c656e67746820313330352020202020200a2f46696c74 *6572202f466c6174654465636f64650a3e3e0a73747265616d0a78dacd58df6fdb36107ef75fa1 *b7c868c489d42faac3366c451224e8b6aec95b57208c4d5b5a64c995e438c5b0ff7d773c4a966d *397d19b0a070457e773cde7d77279f33f9e27067099f2ba7747cf817a5098bfc44268e0c23e687 *b10c9d5a3b0be78f09370adc49039672e92441cc7c9e38b3d5c40713be73d56b0491647114c17a *44e8859160511238dec0c22f7793ef2e43e1089fc571e0dc2dba5b6291b2543a77f34feebb4cad *5b5d4f3d11f96e30fd7c7743474286eec211dff1229f058930ea1f54adcbdb599daf5b3af25e95 *cb8d5a6a3c89ba60594a32fd512f3468cf746f95872c08e3ceaa840d590d189f7a1ccd9db66f76 *072679ea709fa57e6a4d8a988591b17897e5cdd40bd2c89d51806617ba73dd80f1076d856da609 *9f55f5944b57db3355d9b4f554ba9b596b0f560b12818346d13a794e5265ed6d7551ec233918b0 *d4f08045616adc9b55ab755ea836af4a082c0edc5535d705c375687d4774d62707e00e54f94acf *096a2b821e34ed953d06d6c9cb4c974dfe64a504018114c04c8f38b6001ebc10e407712298007b *4fbaa8d6c026b35a46a95ad66ab5321c235854d5635e2ee9486f30abb6b440a751d26eb57ab450 *36e6cb910b81482d737aca211c0300c1ba58d0bac9aa4d31c735d8dcd425a178a1414cb2011831 *2cddeb12982e55d1d87b807a6fe814d5156623095d365ed241ca442c6d490b5bd2b7ad6af54a97 *5849b857e59c1617cfeb5a370dd44073ba9c2d17d758275c6065b6b56ab03938a7fc03fa3e6fd6 *e7b4dc66baab64dc42c2eaaf6d66d281274c1101aeac3dfd6c2bc5f8616ddca82765a801965b82 *56ea51dba307c9225ee6f902cd0c8bcb13524265429a315b25ed957d1edf2b13f03d9f6556fea4 *8a0df0d690c4048ac7698b427dde599c13a868df20ddde4839610a4cbbcaeea2204ddd8c1a55ba *654580b1cd08bb7856ab75a1ad86296554e9f96949d00c328c72b57b9748f7de1c839a393b1f71 *ea7e9bb7d919789e74859170003328f13346f0af954937e047758b6230bf6aac813ef3a07ccc30 *683c6caca999ae5b95978436eb51c266b9c29799e0dd1d811083d8002fab96167ffa916fdb4bec *b4794f342c0707a1866a5536a8a7e724a51ee5984494ef310cf08b4985cb39262c14eecfe6f51b *8e5085d27d4a1a02777ec1662f9360a68517ca32b3c6df759ce1c604797edc0845fe08b64211bb *f7d79767b4328935d0878fbf5ffd068560764b5dea1aeea3dd6107b5040f99c0fdc1571342d0f2 *2d76fd313b007f4577c3619481bb690ced005334a1694b7cee3344daf8cad1cf2d29981608cd37 *0d3e7abef65419092f3b650d6d34963c68adb7084f2eeefa4186fb92f92987990546141e9b5987 *c538edc0ffbb79075fb62c9266ccf932f9f4d977e63013ddc0e72ff86c27a80503510406394b21 *37386e4d6e27bb818ba4bd91a3818ac3ab388617bc37f08406aad40180e62978c183b769ef2d46 *85bdf066ea4502befce9810864d7ac393d043d02ac5dfcd0f6871f07e742f7cdeeb855f869eff4 *db8191533c72183dd36fd118ff1734c6a33492dcb3c7ff3737fa6c7209e3b11fbd98cd4ea7cbe6 *0bb93b497b1232ff55c4db3b721c6ee8b324ed5cc560fbfa5b0c2a6f579e7f9f8c3616f08c5e41 *b30e3c398e378e598a239bd5c188c5f72763825f3d3c7c0d21f58e1c4714c184287b5f31a07f28 *55ba68f4b7921648c6e5ab48dace93d349b33a66b63e9d34189985485f43dfed3c399d36ab4379 *3b08c9fe544f232664307a97d5f0762ae6a6bd5f11224ea0c77967c6947c707855f7b783e3bbfe *057c9d036e656e6473747265616d0a656e646f626a0a38382030206f626a203c3c0a2f54797065 *202f506167650a2f436f6e74656e7473203839203020520a2f5265736f75726365732038372030 *20520a2f4d65646961426f78205b302030203539352e323736203834312e38395d0a2f50617265 *6e74203737203020520a3e3e20656e646f626a0a38372030206f626a203c3c0a2f466f6e74203c *3c202f46343220313720302052202f463139203720302052202f46343920323920302052203e3e *0a2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a39322030 *206f626a203c3c0a2f4c656e67746820313938362020202020200a2f46696c746572202f466c61 *74654465636f64650a3e3e0a73747265616d0a78dacd196d6fdb36f3bb7f858aad8d9d548cde2d *016d36c551d274ae9dd9cab0612f286d33b13659722d397e0214cf6f7f8e3c529663ab4f3f0c68 *30a4f7aae3ddf1ee487aad4f9aa9ddc3df95966906fce7065de21a5dbfabf98e4b0cc7f31d6dc5 *b43bede79629144ccd744cd2b57dad6b7bc430bbda74d132c086a15d552abad2d16b4ae771ebf4 *d20c34d320811168f1dd9ea578f67bdb723a7fc6ef4f2f1da7a6e80366da609a6bf4de85377134 *eae8966bb46dd2d15dc368df7402ab1d8ea2c1b837babe8951d80f0757b7e15584d428ba8c40a1 *17f1055a515c790bdf133b70be1890d2d90bc8b1200c623bde4e40864b2cd717eedac4eee82677 *60fcb898e4293a33cdb307b62a923cc37077f26268a0436cd31306fa49b1848fba76bb10060a24 *e8aa63fa6dc609479a2bd90c65658ef03d7da0e3e92a5996070c4c1e11dee5699a6f92ec1e4d51 *c9651bf94db2d0b98fdc2bd326ae2b9c5aa6b0b2dd35daab8edf5ea7ac807db0bda03d5eb26942 *53944de77445a725c489f4c71747af51ede30f02e3bcef2aecfb4afa63c57ba9b0a3d34a7a7c84 *2c9acda4d6c9118aee59a9bce2b9d9f1db09a4e374cad36443d1f00c7058ce59b24274b34aca92 *657abee6290b8236fbb44e1e68cab2b2408d3f2ccb9ed0ec1ea0f37acbdacc69f98435a7c5fc09 *6b06b9868dd321cf28d97790ab55a678a970c6928988a6e0c61349916e57a978255d093d64893c *5596d275b115619e0ad8b4327960e963c734cd3679da20a6eb42ff599a677ac4824ae50d423cde *22f0efb649200e08c317bdf1a9f5fb9f863683467a0f7f7fc3dfa6c5b52c2820306892000a890f *96d6b8b51d2d28ad8cec8f15d7278e676b7acd13ecc2400b480012de845d8b045b67794e5ffcf0 *ddf73fbe844961b9edb76708f91ef24d9bd38ed92ee6b833b4844cf32c1fe84add3689e95bd09b *0ef13c341ccf79037addf647fd88237e3b299041334967b3644a4bdee8820feb952829d5b7f506 *04b2ea1a542be6f93a9da168c290576f776e333f5047eba52a1a5a30e84ecbb7c1dd75c1ebc4b7 *a4c3c02bd892c72d6cf9f511e1d7670c7c515fd4973306e0942e585aad61c99480e0e3d3327202 *8718beafb95d9f1886b9572630607d2c13620681b668d9040690a4d29d42d1952dbd666cff8071 *e034b33db35a91e7e548e44ab7a1a63dcbde49593df3d01cf37cc31e1421f61560caee4ac4d659 *99afa773366bec17178e03bbdb7d06fd52f3a4a95f940a4fc424a5fa5d9eeb133eab769a26a597 *39f44b7e0e92af6b91eb3b7e8e04edc77c8dc88666256214c1ee2915c812447cc2ee932c938713 *7c9b9473f96d8670a7cc5f3f596aaab45872e00c830694537f5d309cf614e994d119ae093ce814 *39c137f3643a47a6b02cce10f9e52229aaaf383fc9762c2e60d030f80766412a2de459c9fe531e *3a0272597354959cf2060838fd1aebcdf13ce2daceffa937efdfa837efcbf556f3a4a9de940a0f *f898ae56f471b7d442c16aaa31737f0cdb2ecc1cc26f02ae556f65cee7ddcb21762f57a0c5ae84 *ef17e7cbf947901bcf959cf2192df11297b3da37724066aa7cb9742978f9a1cbc7fd8a2e16c227 *a8493e403914c567777d512a402fb9e358279c84f9bf2aa7eb12a9cd9c6588d1e9941505d61b7c *5ca4b9b8a18024970b2c5839cf678a7977c09f9dce83e2ca277fc34d8007cfa9ebac28a1f4a4e8 *0e21bf20f1451b4ad00e4ce2c1ee7efb9157f3a4a904958ab87619aec173a8c3656fcdb0046104 *5613f0a880b10772d033bfb22a374cdef5c51492b9638d99736c1238fe73c8dcd693c6cc49151e *266689f0e47d6562424887e16ee7bce1f1390f831ea71c88f0ca0a7c96cd2aa61cfec015177ece *129392338e25431cd3c0a85f56802d2e2bdc6e2ad77b726cec9f0d396e5991dc67c9dd2312f2ee *2630751f509056ef3ab87d67aa9f7607f97d0a99920fc007ba4ae824658dc31cee52c4739fc330 *af79d2540f4a450c730c531733fdb8a33b707daba6fa557f781ef6c3d128fcad31f02e441a04df *2e7094ebf2f36fdf8f16205de7cbf9972afbf927f074bde77de35acea15d5072fcd1c552ded63b *d7368863dbeac70c62ca9f3346ac60ab0726cf879fd8e3265fc16973f8e70c93c0db737b569b81 *517ff670f21f6180b7243fb238470c018e546f12c1556f124ec8f7abf48373f839cee193a3f9f5 *5393f8aada3f12b35cf6ee444e6f389e6588b4d86d5da43278ff148d5d6c42313b9ef30caaa8e6 *4953152915f164c64af92f82931384ba8ef018c12902f9b2563a08dec079f906d1b33305cf940c *6949bd95a4846f257c51d15b8e445e21f80bc167c97c8555fef973e36e40325cc37f0633b5e649 *e36e4815d1d332ee53095f4a7822a12ee19b2a976790fe0a57997d25e15f127e96d0947b669e34 *66ce81dbba6b3f87cc6d3d69cc9c5411778df3713c0a7bb17c540c2e24328a2e15368254c17124 *a8f3e1b01f8503498ca2f02789fe164788f5c27185c5bd7712ede9d7d25eef5d38c23aecf5c3f1 *b831a1b643dce0395cf76a9e342654aa889fdf871f3e8432d4e1601c57687c3db88d64e4903895 *af8be8fcf6ea2a1a29aa77a9b0cbf0b61f57c4eda0427f092b6dd89a7e14478d59b4e0dee1d8cf *218b5b4f1ab3285578162f8632c26114aa22ba18f6af553e2f86f135c4fe211a2bfaf6bc2f331a *f555054683db0f12fbb92f915f6f86a358e17134b890162ec33e181cefa752fc3f0bf0d625966f *1f0ad286183d488e5117fe0fe93c12d8656e6473747265616d0a656e646f626a0a39312030206f *626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203932203020520a2f526573 *6f7572636573203930203020520a2f4d65646961426f78205b302030203539352e323736203834 *312e38395d0a2f506172656e74203737203020520a3e3e20656e646f626a0a39302030206f626a *203c3c0a2f466f6e74203c3c202f463139203720302052202f46343420323320302052202f4634 *3220313720302052202f46343920323920302052203e3e0a2f50726f63536574205b202f504446 *202f54657874205d0a3e3e20656e646f626a0a39352030206f626a203c3c0a2f4c656e67746820 *313634382020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265 *616d0a78dacd596d739b4610feae5fc1a41f2a75a20b07c75b3ae90c96b185834115d8ae9b66a6 *c822b15a5b7200d9493afdefdde39617bf9cede964264c4661efeee1d87d766f77c1834f0a553e *c26f5f592b2afc331c8b18aa655b8acd0ca232d3664a9e291f945f07b40250c5d189436dc5d24d *a2524b39bb1ca8b085aaec37883142c61dcc4e3278b5c7984255e2a88e927cb8bb4fb27c37d409 *23a3b165a8c3c04fbcb91b8cc61a0c8e4794d2a11b1c79f1e87d72f06a8f3a9d7d7466118b99f0 *64be856670c8c04b1a6d98a111c3d21f5558678c305b03412596e15418627214fcdfe2540010c3 *36f9faa7c1bbf7aab284bd0ee0f717fc6e061c050f33a84229710ca3a26e100f5af2c46ab3c93d *4528d8653250c4520da219764b9da338c431756e31d5c0358ea3d4186ef79e1f72ba0ccd106270 *8a832072935a1cd16114cd71d40847e124f1a3508cf6a3241292bf87d7c359e01d7a611237e368 *5e6dc9863edee58793bdbbbc53d5062da96282a37555ef01a71d4da49cd618cea91fc6891b4ebc *a866224c1ac19befb940e7c4133307484ee01eeeecba287b080ffc78d648f55c14ee0be9d07deb *8dddf9dc3d159c866ee21fe3b6a17722a5d5a64467f613b45adf8256eb095a5b4de4b42286d31a *fa18a8618464d4a13873276fdd7db47d36f781e0633769c6d17ed888893749bc5d1c1eed04fe44 *c87337dc8d0e51f6f6bddf6a11f64a8ee6a1944ed321baa3f781ce5613399d88e174c65e82f119 *4ff160821844c9f898a74c115410c8494d517c34f390f0f8c44f2653944f0f77a2607ce84ee651 *13baf1693899ce23202ff47faff94ea4241a16617a2f62b2d5444e22623889c9d4c7139c80b927 *1db19e86c0021662dfab934032c7149b9cce9a147114ee7a907f6ba68ec2c08b71876317493f8e *fc5de195e32800b7049e944fa8c1ccee4550b69ac8f9440ce7f364eae1593d99720385e827d356 *1ac7c0278429d674780a6590234cbee558a784dabc301bc4a246dd1c8cc694f703c1aaccf2f442 *3407d7e9c5362bda3d84a5b007b0a3ddba9b50bc3fdc5e2eb25cdc7e21f62a642e304ce80c34d6 *0317743491baa0c6708b7f1654afd1582ebf7efd46082916a1557155a3c01915f07e833506bf68 *cc003a19b144a3364bf311b587d93a3ecb5757e568ac5be6b0d85e5d6df2b2e02363589e67385d *a6eba5c02fc5cc417a9db6371ab50fc4a2f027112bc2539573400d9338ba0957200b8ce77aa01a *c295679bcbabd545b614a3d5badc08a9fb383e168cc023642e5735e2684e1f5cde6a2277396238 *1d10e0ba09b4bdf9457895ca4c640e78d7fa8e3d99581fe3eddfbf356496032f078fd78b1a5331 *ade9047e82e6866e9c7ce008d5f9ac3d42e1a6c4b82dcfd3b296706a911628ad0a0cda4d5947f9 *bac8f2eb3acc17597993656b3110e7994b70e4ee06bf34de1928a75a5a1fbcd06a22f702623887 *3f7ca62a984955b5f581f9402968cb894a585b0f34ac077199afd61f9f570f741b9cda8b3eb1a3 *8994ac1ad3a907051afb783d284aa80715f059c1dc069ed81e83f64e7a5e5f6779f9747eae5d20 *0d585dd789caac3ef8a0d544ee03c4709e5e7cd86c1669fe02f23435daa0ada68170be22b35983 *b077b43ed8dc6a22b7193195cd8b3c2dbf6617c2d4c576f1e276d6acd6c1f8db9067859d579ca5 *57190f36664140f1ab59c722ccb4e10703914061bd1b87305f4521bbdd94f0f94cec4dc468bab9 *c9e0ae91c5862f055edc070fb9deac965583a2de6a4dced36b91546c5d60e1baadb23a08cbcd76 *7181f2223dfbbbb8488bf3ca1098b839aff2b9cdaa5c5fe6237bc8bbb3b312f763fcb872a0386b *2fc5e0cb662b84b374dd3eada397c87b4d899904e3ea33c62c0aea63078ec8bf6059c1abb75c09 *e164e468c36c557e250fb7da3cb3a2e53cb5ea985add3c4fbf3c2fb36ad42194f5a1d3ee68228d *f01ad3c9ac7fa886da7cc73186ff884ef6df9f605eda8869aa0541dd875eb3a389dc68c4dc31fa *f617acd67208da478da78e4134bd0f1eef682235bec6dcf3b887effea988752eaed6cbecf3a3a6 *db3ad12cbb073d574713b9e98811a6cb4cb228d1b53e7ce7ed68223709311d6fe29784073b2378 *e1e52fbb5553c42b049fcb3e5fe55951ac366b2925864374b30fdfc33a9ac829414c87120c690a *71fead28611661b40ffd734713392588e950521dedff4dc9d33dcd431553f4cfe9ba7ee5c309d1 *dea44d4bbd2d9ad798a6ccffc9f372f5f7b3d31fc5cc874d7e79afb5c63fc6f11487df1beff0a6 *1b3631816fb5bbf81f7ccc374a656e6473747265616d0a656e646f626a0a39342030206f626a20 *3c3c0a2f54797065202f506167650a2f436f6e74656e7473203935203020520a2f5265736f7572 *636573203933203020520a2f4d65646961426f78205b302030203539352e323736203834312e38 *395d0a2f506172656e74203936203020520a3e3e20656e646f626a0a39332030206f626a203c3c *0a2f466f6e74203c3c202f46343420323320302052202f463139203720302052202f4634392032 *3920302052202f46343220313720302052203e3e0a2f50726f63536574205b202f504446202f54 *657874205d0a3e3e20656e646f626a0a39392030206f626a203c3c0a2f4c656e67746820313832 *352020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a *78daed5add93d336107fcf5fe1e105a713abd6973fae436752265028a5f42e6da703cce0240e17 *48ec23f6715c99feefddd5cab1e3c4e11e3a831f182668b55a49abdfae562bf9061f1ceebc85df *6327737cf8a7e390693f8c4227529af92a8894b34d9da5f3fb801b01ee70c5592823279401f379 *e8cc37031fc6f09dc73b11af92f11a423f4d07df3fe2b1c37d16fbb1335d1e8c345dbc7445307c *3d7dfafd23a51a8211505cc2d028f1f0e7f18be9e47ce809edbb920d3dedfbee8b612cdcf1f9e4 *f9c5c3f3272fa6d4f86cfcfcf11fe3c713aa9d4f1e4d40e0e10427184ca63b6da13f93b13ab920 *a914539100c267a18e8d0c0b500afeafe57c10603a0ab0fdc3e0e56bdf59c0584fe1f70e7e3703 *94124c6b4091b3586b83ede06250a34badbb410e91d511538104647dcd848e76c8aad889590c2d *086c28582c9c4a04517be56b3fd96e935b20f8d09341a8dd073f027842bb2fa978dd06866b0db8 *0b27882593befc7a8ba676cf763fad46f87fa8119ec63e883893ea24f695c81ef68433a7425021 *c92048b6ecc147582a578cace497cc14c4e0c7f2ebe1d33b33e9902979da4c56e488995ad53d73 *75590062a68a641f965e6b72b074e1c74ccb5adb236bbfb7ccf359b2bd676bb36d52fe33e46eba *26c6ec7a760f71388985043545d88348d9d0e4d00da288059cefb4452c5adbd016ed5d38da6b45 *c00020c46cd404ad8958b57deb5ddc3a0f3d15b0288443466816058151668c4629869ef2953b87 *1992a1c7dd0cebd24dd6454e2db39438f3ed90476e9a94e9821a6e56e5a515b66324eb35314adb *b7bcb49ddf98b9ee1377799dcdcb556e67ba2e56d9db5a1c54470372c00cc04435dffc3afe65e2 *8dcfcfc743ceb9fbf77d389779ecbb531c1c89f2262762996f37059197c9c7aab5124b3f25f392 *c822d95866916e92ac5ccda9863aedf5799a7c4c2ee6dbd5557944b162b54859978f6a1d3011f3 *1ef8684393ae50558954db7593bc4fbde347ba72b3f486fc6c6c05fc537b5543762365f0ede4d8 *99430a26a3d3e6b02287e6b8d3297fcc447cd40a35276d267ca6c4379bd536f381084fdbcc8a1c *b15907ca2a0e98e6ba0711a2a1c991e5450c9a2a912e97bc4b0aa322c574d087f5ee14e95c2e49 *74adb695c3e0e9dc3e91bf94c328709bc0ef837337343992c3c0f52cda29db4c610e63cc214700 *32cd8033eaea5a01da99e034e13c486d380b14df4b6d9e648bf493c92ba486fcc4263a522b7795 *11ef4542f94c668f776a2ca871916729716c76824c9314200fd30c62bd19c3cd1ff311643fcf4b *cc63a9525e26c75286463e01d77dedbecff21b9c13929f7c49ac2ca77a713dbf244e79493a0099 *58e124b375e393981631625c5ca33316668abad79eb419c0ac145800c7a1964b932849eebb36e7 *5bd050dce488c8bf320df955ba2d6fa961499c0db59b19819bcfdea5f39211f32227a631010a51 *b54ec19059a459918ea805102705a8c9e80c6c40e85067abe99a1e6416ab25d697b67f364f893f *4bcb9b34cda842d6233ac9169679f1ecb7e9506bd7fbd3e03a7ef6c7e43eb30f47a2da6de076b8 *4339f385995d32c514a48c38c26f66cd34da7a55a65bc8a5bba2808452c47d88890d4dba8eb84a *0417fc437d917d783e194f2754ff9c99cc1ac98fc9fa3a0567fcf7bb5361502a08308af7200c36 *34e904c08ab400408ff1fe4447215e6e1d0033b1629d971e82721204702419057d00a1d6a41304 *2bd202e1af27d39f3d44e2a2e67d36ab071f4000ac1fb41082e89e2f6e4f82c363a6642f3ca4d6 *a4131c2b42e074adc80f2155ec85b96b4d3a5764451ae6a63d2e39c4b7b3b307c44ba830a76ae3 *50455e71bb99e5f628cfb77be2cf56c51551efd3db9b7cbbe8824cc49a69d18330592bd2059895 *68e04591d01301d077012cfd74b54d8b025f48bae080b44c077db83a3434e904c48a3410a9f6bf *e0fedd7ca81930ee004f0819611f2246ad48273824d1c066776250b58dce876b7c0c348f70fb3b *c86eb32e4874cc825edca51b9a748262451aa8e029d11173d690170222d651963b276a45a13229 *d34d9a95c5b12b04574c28bd7785d8a5715cd5699ca9cd31bb45029f460d63f7344a757b6940d2 *5c1a90788369d23054ee74729f38788d60448ecd006faf493fea986329776fa21e0f582c83fd97 *d1fd3183d05e4d90c26419cb840a00a9240a11c2723f85470e3a5dd5cba4c34098d85530aa4cf1 *4b684eb4593b949bbc4ad1b1f64a0809535ddd02a14647d274c243b76f10c8a9a607921036f93a *95743c608f45d1f9e4ca23c1148f7be0e30d4dba7cbc12a99e18e65bf21fb3e7f1c5df5e8477af *0c6733f0f275be7d6bdf004fe54c3cf44111d507246a4d3a3f905432cdd785cf54ec80386be031 *ea5c36ccaafda807c7624393c36f64106cc2a0d616973dab0d7bb6f7c6fb6fe75a5500ca7cfb70 *5e432e15d3f1c92fb295c817f6dce5ea7275af13772158a0faf01db6a149b78f59195cf159c3c9 *eef06703edf59b3fa881293413f633744b33098ae1a9ed371bff037b80e085656e647374726561 *6d0a656e646f626a0a39382030206f626a203c3c0a2f54797065202f506167650a2f436f6e7465 *6e7473203939203020520a2f5265736f7572636573203937203020520a2f4d65646961426f7820 *5b302030203539352e323736203834312e38395d0a2f506172656e74203936203020520a3e3e20 *656e646f626a0a39372030206f626a203c3c0a2f466f6e74203c3c202f46313920372030205220 *2f46343420323320302052202f46343920323920302052202f46343220313720302052203e3e0a *2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a3130322030 *206f626a203c3c0a2f4c656e67746820313539382020202020200a2f46696c746572202f466c61 *74654465636f64650a3e3e0a73747265616d0a78dacd596d6fdb3610feee5f21641f2ca331234a *d45b866ec856a74d61a45bec6e03d20c9615da512b4bae2427cd86fdf71d75a424bf28cd806113 *029bd4f14cdeeb7347a5f759a3da123eafb54433e0cff65d621baee76a1eb389c11c8f6919d716 *dacf3d5a3250cdb7884f3dcdb51c6250570b573d03b630b4d715c750b20c1b3c3f4c7b27e78c69 *d420bee16bd3c5ee3ed3db6bdd228c0c86ae6de8e38be9e8ea6c3c189af0f0cb8052aa9f8ddf8f *26839be9db9373ea37f6b1984b5ce6c0c9620bd3152cbdd1b49286d926b15deb49812dc608f34c *9818c4b5fd928738820bbe6b3e031888ed3962fd73effac6d06e61afb7f0f9089f879ee082c36c *aa514a7cdb2e4dd79bf46ae3e16ab5c99e2014f4721808e21a36316daf369daff9c4772ca13175 *1ce20393e2117a9f06495adcf16c98ce3ff2b0180c6dd3d63f18b611663c1850bde0483acdc3bb *22db247fe0230596f2b36b356a78c4f0a9e6809b2cc3ea80451a92ec5b8481dffc4a58619097df *a1867fe2b0485369001c8eeea2bbe8e8b8556d8f128b795f51dbfd37d476bfa2762d496b20281e *a1f73c4eb3e596aad7d2d5c7389a72b470b869b781e313cbb7ba60835a92761b481e6103990bef *1aa970ba150d90042227ea3c90cb1487bfd4b08f368069c43099363419b11d5a1ea7ceb13caaaf *b301f5f474cdb322e2b9a0997a1824b838e7380661c8f39cdfe2f2268f92252e80d438994dc6ef *a603dbd68735f8f5917d9166ab63e47ab88b4011105238838221c13042a022f824ce16d8298e16 *a38205a4ddca090e799c16c3245871d21a0a305a123bffe750a825d90f05134a96ef57d20a5308 *082cf5bb0fe28dc4c02069a024d3fb800d2504968b0a378204dd4a04721c88038b12ead1ad3838 *4373ca105866c16ac533a485ca0f419ca738dbe41c27a5d3c5e483695a04be9874cbe36a9ec638 *87800e8a28959bf02feb388812aedc384fefdb7d673b808d5e176a5a439256df291e4c63e92752 *a1f7967720859feba072bf291ada2d5348cc3c7df6ebc5f4cd5024dba48f6bd2536e99ac62dce4 *68674f2f52b9126102b9ca75aebe8cee79825c5536e10a7a313f94a5e95616ae82100347454520 *d3f5218ae3caef55ee46c9ceef5b20432c297d81b768ec94570155444f243ff37de2d22ed48186 *24ad01a47854f23f44c5dd50f824af7ba200a7731cc23af90b5116a2bcd5121eb49a7617ba8286 *24fb96b06c11f18a4519e285cc9c7ddd9feaff986b13cfe884f36b490ef47fd0db9b95b0cdfeaf *b88b7222957ed120cd7748a5e349884802e749790592c005821a783960945537157b30a42279ae *f872130712e8475fd619d4f62ab3e2a8e05910b7871484edd76f1cff897d6b49da934bf208137c *5be7d3d5e8f5e8377cccf8927f7932a000013d837541e15a927685250f2adca6924189c73ae1c3 *5a927695244fc387a5d364237cfa720b27c651be963d7391891c8156f579dd509d169e2bea4d59 *dc446ac02e6992231dabad27abade7e8580379509445572c3ce282ec920509ab2ed06665e0f591 *2a8a1c413a167aa0e16642b9fdf2db288a61b109e2f8119f6e53d53b8b5b041edaa89c812ac6aa *fc46856ab5cbd3969b154f8ae39d4e7b9d41bdced50fe4a27ace5b4baf25eeb5aed981dead2149 *6b64291e55711a617574025dda3cc84ea2a3dd569be9d5daf3dab8371cdd8ad6fb713cbcb89c8e *ae7e7a37de6abfef9517654055fe857e6eb1895b4d6efa163199dd019337246935b9e23960f26f *becf8e4e04edfaf70fd462f9cd0b61f9452ad2efb0276cfd107fd335db7551b966a72e3ab22e8e *b1f4352f33ad65d064a087617600421b92b45b5df23420742adfaa9c9f8d272339bfbc18cbd9fb *cb57a37330fcc5e5e895244ddf5c4c9e89a40867902808c6a6006369ce923c9bf6918a702328e7 *0397e94214b552a50cac866972cf334458d1fba44806588d3224bd0dee834998456bf1960449f3 *348d39a0f53e90f2cf9b086ed7bc02b819540a4fdff0fe0e08ce16d008f17e6bea510f1a2db30b *a9d790a43508144fe92150d069e451916d78ab96ae413af12aa516a45d4764112a9681bd8d16a5 *3bff510c97a850c6f0cefb8d19e48a08d9be2a89f2b54923521b25b77a6352c5a92ca99ff8e343 *5a86ba0ab96413c74f449c69822dba70bb6948d2ee0dc923ec29ecb5e50ca1e8ae9af25f2cbe4d *4ccf3a74be657bc401b98de6e2dff1c5d2cf656e6473747265616d0a656e646f626a0a31303120 *30206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e747320313032203020520a *2f5265736f757263657320313030203020520a2f4d65646961426f78205b302030203539352e32 *3736203834312e38395d0a2f506172656e74203936203020520a3e3e20656e646f626a0a313030 *2030206f626a203c3c0a2f466f6e74203c3c202f46343420323320302052202f46313920372030 *2052202f46343920323920302052202f46343220313720302052203e3e0a2f50726f6353657420 *5b202f504446202f54657874205d0a3e3e20656e646f626a0a3130352030206f626a203c3c0a2f *4c656e67746820313634392020202020200a2f46696c746572202f466c6174654465636f64650a *3e3e0a73747265616d0a78daed596d6fdb3610feee5fa16f958b982525512f1d3a206b9db4451b *6489db2f6980d2369da8b3255792f3b261ff7d471d29d1716417c3d67ac050b824ef8ed4dd73c7 *238fe97d75987305bf63277328fce34944388de2c889034e6810c681534867e6fcda63b5007358 *c048e4c74ee48784b2c8992c7a14d6a0ce7123323032034be89751efd9114b1c464942136734db *586934bd70bdb87f397afbec28082cc1187acc87a595c4cbd787a7a3e1597fe071eafaa43fe094 *baa7fdc4730fcf8627e72fcfde9c8e90f9eef0e4f8c3e1f1104767c3a32108bc1caa0ff486a346 *5b984ffc24d86a9091f9468328271e8f6b7547d7b23ff041bb7769b9543de696f78b713e47eae7 *0f27af86476f4e86af9e20332d9131c9b31b5954728ae42a477285cb31f7adb811e793225d56c8 *f84ddedfe6459fc5ee5419086a0f984f7890d45a7c5e6553f989522f93d327e421028c7300d873 *c23026118b6b0448a83080ff5b1460495831ae8dffdabbb8a4ce14907a0bbf2ff0bbed29298f70 *0e0b3292705e474eefbcd7c60e729b4536e386c724087d67606952c30c662424018e4239f248d2 *2aabcc6b408468f0b8fbe2676c95d1b334eb33574e31acd6dc35f01961b1e70cbc00340a5b77d5 *c153bb4bf58cbb54fff3e8f59bf327d8579e52ade52935549eaa5bb392ed2935b63d858b56d769 *b9c52b1ea819ec704af84f3825dce19446914e9fa0440d2400b5ee0d65a5dedc1e6c15e20761eb *05f88ecf4908de50934199fe80296c3ef61963ae2852319ecbb20b221eaa8dc7f700234b932e90 *8c8832f42784e6461b88a3e7cf5f60476083a1c8bdc084625728331dcab8f6e15ce59888eb9c11 *056e0ebd0269f3b49285d0023a3581c48d98af6469a6890a7ba28e56bd48966b2a1227f95596fe *5ea7292559a250b99493d42c3fcb8b45f94852824d30f0c2b8dd6061e42ec4a45e372f91d77c5a *31ed9d06bc7aa741bbb6c140cca05912e48faeebad0a1c7957e17a0b89ac190ee5c0560fe19be6 *0b90097cdce781e78a49b512f3f93d52bfae0041ecae4a395bcd0fb454a96755d8c28cfc56af80 *290188a7daacac511b884b34fcaa108b8572533d2347de583e821fe4735fdea560e9012612a133 *52cb58a73fcc446955caf9ac33f104117c8bb13d380e2c4dba76951151c0b4dbc9637039300908 *c9701acc65a7c9b03739ff818904f9033dfdc7e7b3204848b815f75a40a12e062dee8cf21677f1 *51d101f7f116e0fd8884c17f04f8ef12f21e1c87c956e4514241ff7421aa6b48b661d41eb7ef15 *a90b6dc822bbcfcb7fd1ccbd439bc299bcf5baa9251ab4c96c9eab03ccbee1bcafe92ac128d6ae *ab8eafaf3aa1beea1cadb24995e699be55c2c1a1d3b6c8f4457121abeb7c6af33bfceb071e8163 *780ff287a54917b246c4ba0f7d82f4316be050943f4471b55ac8ac0274ff7c0a7cd669bb4f49c0 *927db0bdd5a4d3762df2c076e368c66143e7e32f72521918c07e8dc40e1898d2622f42a0d5a413 *062d823074594443c269b207d9c2d2a4d3222d6239763da01f5ef2e14a28c1b7cd8d50d1e4ddb2 *9065d9cc31f9e6415dc0adbae031e0bc048a021eec017096265dc019110bb8b5ddb0b338aaa963 *799566599a5de1f03655c7a3ea755e76bd18ac48f621ba2c4d3a41d2221648264b3c0ad28ee0ea *8224020c027f0f5288a54927245ac482a43932fece86fbc61a3bbbc7e7b8795ad60f71d45d8ab2 *5c7fb5a35daf76d4d4d8cdbb1fd5e5351036ca6ba0092d2470d814cb4855e9a1967aa4566c0b72 *55f542418e3d75d89452ea81e7f9efad258134bc5b8a4ce101bc00496309056d7df2c03041bd81 *9c66952cb08495f86aa9aa77cd14fabb26036eeaa7ae3350aefbdcd72fa6d06913a61a2909ecd5 *9f5414eb89148635d8aa35f3333053e8396bc03fbef6c60b001aa36d2a2190849a51d7f954a714 *d5d3553dd36f15187325f2aed21b996137d5edd2d4fe3814b30a8b7d6616a296726a948985ec4c *5b0c32c1eedbcef7485b96265d7bd488e0e305a7e3795ee80ccdb0f130b0ec4b752da4a461b3b2 *035bac0b12c804bb6f3edfa9b809f7207baa0ea75bab1b23623c33cbf3b128da0be9564f69e78c *e750fbebe4ea6313ac0b89a210f77afaa6dc569f06709de2fb7014599a6c8219c72464acd156a1 *69c218116db0549df56866ee81097885a312f00f2c7874ff42cfd1c346049bcbad20fa707025f1 *ff557fe34bcfdb75ad302266636018cb59e354eca46da07765b240495fa4979b9e7fe8aefaaf88 *a00a275eec3f66810f06846039b5997f01b308adc5656e6473747265616d0a656e646f626a0a31 *30342030206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203130352030 *20520a2f5265736f757263657320313033203020520a2f4d65646961426f78205b302030203539 *352e323736203834312e38395d0a2f506172656e74203936203020520a3e3e20656e646f626a0a *3130332030206f626a203c3c0a2f466f6e74203c3c202f463139203720302052202f4634342032 *3320302052202f46343920323920302052202f46343220313720302052203e3e0a2f50726f6353 *6574205b202f504446202f54657874205d0a3e3e20656e646f626a0a3130382030206f626a203c *3c0a2f4c656e67746820313931322020202020200a2f46696c746572202f466c6174654465636f *64650a3e3e0a73747265616d0a78daed596d6fdb3610feee5fa17dd8aa34112d8ad45b5717e8da *b468312459e30103da0e916d25d66a4bae2427eb5efefb8ebaa324db92b301c3ea0145e0f07477 *3a1e9f238f3c6af0d1e0c60dfc5e1aa961c39f1bfaccb5fdc03702e9325b7a8134f2d8b8367e18 *f04a811ba160210f0c5f78cce6be315d0e6c30611b2f6b0d8b54ac96ce77e3c1f0859406b75968 *87c6f87adbce78f6d614cc674796efdae6f9c5e99ba747be34c7473c30cfdf1c590e704f7fba78 *737a79f9eafcecf2e8fdf8f5f0050f5b0685f4992f3d7041d97242a532381dd76e49d761ae2ff6 *7aae75765cdfe849bb6ebbcc7183aabba74796b085b98ccb793653b434a7d16281dca4404e848f *d7eb745a2659baad76378f7335dc181fcb798c1a6d7d61a6d192f86856a05969169f96938c4c45 *e94c0d1f066571c15c19564e4ee29b24552f79d05952ce918ab079e73882c13f898f0c9b57e986 *523d3ecfa91c3f4136baead5ce01955d6f895aa3f008126577b58a3b7d2d335010a199940512ef *6cdbc98b121fa20aa89bf5324ecb136495f335692288a02f62e831bd51dc801c01713d06a0097c *a08a4f6919fd8a74e53bb4afa3dbe8729a27ab92757878b188a3026c3aa099662551e53c2a915a *6685a6a847877a2c34992231a177a3c9047dbf4da232a617d6453504b44d8aad5855fc3c997e40 *32493b3cd53343ad2115a102c977b66b17714c0f60f2b2a5f72c4b6fe3bc8080513fc08b26d92d *e0ea72b6bdb6b81d303be486e7f82ce0a25a5bcc53ab0bfe37eb0bdc02af024fc93f0edebeb78d *19acc1d7f0fb057e7703a5050bd005839c85ae5be59ec1e5a0c93e28ad8dec2c600eabd4938e61 *b53cc1dc131a210b3da1d62f7720b78561edadc24881c1268b2c07ac5dc705acd5145514c7c651 *034772f484748eb8096af89a32c04fdaba7d187197059036f663e4ff1b18752739945bf4fa6773 *a309950df9d4be2754a4a34355d6b8df1ba43944e91f07c90d6154f24b90ea20b93ec424dc1f24 *add3b59ed47394c7d7f8749d6513c8e1143a6e36613b7bf53d12e3bde1f1a015fe01e4999627bb *b8489bf961edac8245cf4a04e02d7fdfcccb74bd002416343bcb7c1d6b04c0aa03c69880d30d98 *b5a4c7021ffa162ef31d4f1f9d8e2cae92f4f92acea332cbe9c8f4eb2a8f0b95c68b5e2c6d9f49 *ff20b06c3ce99f63a4a306fd6d33b5b27ad48af37b94e3d9e04f40f4e1be89244397b98e730083 *6f79d23b78adb33578754258c4d6260600010cbe42612f0001f8e6f90790615a9ef403403a0840 *df907cce3cee1cc2901a4ffa87443aad986e06f2d1a311b1d398882a8b4af321e58a21b55f537b *4cad45ede3c7443c7952139a7a4c0c7a3cfde1fb935e5cdd9079ee414c95c6937e5c498770f505 *64c3d18886f91512d2d48c514ba4a96fa8fd99da3f345f0b9e9e3dd7222d3b7fd37b3696aa3eb5 *0f625a369ef4c3473aad69d999666876caedd9e99aafce9ebd20549e9fd6e4713d39f5ec3c3b1f *6be87ba1533b9df40e214b379ef443473a2de8f47eb4b5a2236c2ee0609442b2c65a137971bd71 *775c755882331ea853a26481c420b5f6fdd081f345be54655ec8a9568e915f24cb6411e5285135 *76a55c97e68a8b35716de404e9c9ba44f13cba255b11bd906df41c151d1568ab07aa41b1a2e61e *0b85d75956f330a0b25a515856f3d037af460f90a5ea33d54eab4ab5aa972bcd0cdbab112afaaa *26ae38ed72be628ce7b1d6259b170456aaf42022100de5a6d5f6d3addc6c06cd61d0e88ba31c56 *045d7bf00a8e22b94931f6eab97ecf972643d68fe922f910e37b8d8f2728dcf06845468af5caea *407995e525d5f6cbf5a24c560b2aeedbd725a450c55eb573d2d18e15bd094c08c120ab1e40026b *79d2bb0ab58e2e461e76158adcf59b4a9144a4e8f4c2e070e6daf24b695847c30eab29b8371aa4 *a3a331fabbd1188dee0987a3aeacc3cf78e5f44fc2f15f6c514ee0324f047bc3a1757438e28f8b *fbee51bae2f137b6a533bc19e59ebe19e53ee51c60616a2b54aeaaee3841a6f63de416b85f809a *caae4a36cd72944dcbc52714ad747a2ce7c96ff1ec0415a329a82afe8cec7a98efa8efddccd9a4 *ddcd64884fe4d1349ec5e934d67933225dbcc6056242a2eb6c9dce904c48544693452dcd979495 *cb47bd93da112c0c8343984d8d271df71b1e8323a2565140cecb72f56838bcbbbb63d36c16cfb3 *751103055be972f80b805c54200fe16c43680e7b21e00eb3e5ff645dff1769d6b16d6607f7ac6b *d2e9def414e7582fdfaa11d8c866b9cb467588a487e77b5fe9ecbb49e041c0b810078054cb935d *a4e070ee7ab5b3ed3bb9cdfd5f2140281d6f8075bc83d9434448eebcef517d8e8ddfdce76da64d *c929c22a6da24f634c918ece3dc3157e4d024e924e9187874ac58aaa7c03c42cde92892a95c1f2 *835283571f2ce0848782a62e5016164546d46d041502a42b86cf57aa8e7bd09133b153c1cd2b55 *de3d50b4dd320a02fa5ec5f520ac0dd7e9b316d786ea3c6b6d8ca256ab0fa827cd6bbb5e5d1d1f *2b57424966e14c7df5ce713ccd6c8a2149fe01a1c0edea155ea68f60a8a74adb8d17c92780559d *9b2b1644aea8a55da7741ac5d6e651461ff4413cad36b78aea38bfef1ccfe96b74e83227105d0b *43b801f36041d96de15f6384342a656e6473747265616d0a656e646f626a0a3130372030206f62 *6a203c3c0a2f54797065202f506167650a2f436f6e74656e747320313038203020520a2f526573 *6f757263657320313036203020520a2f4d65646961426f78205b302030203539352e3237362038 *34312e38395d0a2f506172656e74203936203020520a3e3e20656e646f626a0a3130362030206f *626a203c3c0a2f466f6e74203c3c202f46343420323320302052202f463139203720302052202f *46343920323920302052202f46343220313720302052203e3e0a2f50726f63536574205b202f50 *4446202f54657874205d0a3e3e20656e646f626a0a3131312030206f626a203c3c0a2f4c656e67 *746820313531392020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73 *747265616d0a78daed59516fdb36107ef7afd09e22d7314b8aa424766b81b470d2164396a5de53 *5ba08a44271a1cc991e4b5ddd0ffbea348cab41db91930b41a3014ae48de27f2f8dd1defa88cee *3ce25dc3efcc2b3c0cffb88810c7511c7931e308b330665e25bd85f7eb88b400e211465044632f *a221c224f2d2db118639b077d641a616337540cfe7a3c7a7447804238185375feccd34cfdefa14 *8fdfcf5f3f3e65cc01c6d02214a65688172f4f2ee6b3cbf134e0d8a7683ce518fb176311f82797 *b3f3372f2e5f5dccb5f0e793f3b3df4ece66ba77393b9d01e0c54c2d309acd3b6de17d44053bb8 *21ca186271000d8c222e5a0c0a150afedfe03000108f4325bf1bbd7d8fbd0ce67a0dbfdfe1f771 *a45001e21c58244870de723b7a33dab0aba5dd24fbccf218b19002b398a380c71db34c78020990 *2862a30089c0b310c5da3bccf164026405dccfa143c63055c4fda7cfcc18087778219c03ed8117 *0a8a28a6df6fcf5a3e35af1f5623fa37d4880e531fc6045176907a0bb1d44fa707a807611ff5a1 *00d7a4df6fcf83a39e4788d1c3d41b88a53e2fd2c516f9aa69b99f4cf25eeee10064f140b80f07 *70e28414404174907b03b1dc67f200f7d369aecffaada430a50491586d3f4431a5ed54f31ba9cf *f00f6472a45b4991d9a1a9192a57b24a9ab2aa0da21a93d8372fd63765d52ccaead608a1695059 *9617d73b73d6ebabbaa992b4e94404f5b90987486783880d47933efb5888b50f99f65a273746d2 *0fd2bb7d38a19810ff8de4f02da284c3f1c3a17a39640503e9ac30f99a15268e151e1c2f82f91f *8ab251d12168171d5a00bebd4e96cbcfba578e89bf6af2dbfc4f59eb91c6ce909699d413247ae0 *2a6f906ebd5a6841b708f373f3faba969959b6300b166d92539620c022b0a2142d611d13885765 *b99480d251dbacaba20bbe4ef588f9c77aa8b12782b32de8e526bcf5247fc80af4e88d5c26c0d6 *4130009f7134e9f3190bb13e039c6b9f509d9fb69c25506e745f9da11ecc7ff6d4c07a7989d4e2 *d1ff4547679e30868bc161f318c8bde69177cb3e03edc53af37f70ed038b05704f825a32dc0a76 *0a354e44f48d09c56068e5f5cfcbec7397de20d3f5d917ae0598b32110bbd1a4975803513bfd71 *43e9c5e52f67e7bafb57dd248dbc9545f3e5119c631b5ef3423f3bb9eea665d1c84f4d1f3b506e *23fcd584f62dd87134e963c7420eb0233fad2a59d779597c01761eedd3b3013c8c1f2821081b82 *f7389af4f263209a9fbe1d410943e241587ca349ef8e0cc4b1b8e3df048cef3f79624e90443f2e *12307c258b376995af9add77fa48811a25a07400c9d1d1a49714037148d9f5ea8790e2bcf34fea *ac88f81fda883bd29d7a25d33c59ea8e3a89552bf033f90ee3a0682b2c1024062cefd6b248cd3c *e5c28c5af3d4fadd8f37b2d0125359412b2fee29a8d4ac2c765d42754d48abda89457e5b2c29d0 *6669e8b54bc35391d0564f863c3566968777cdf230961b5952dcfbdebe6a4609281e89883575aa *d151478450d48159347baaafd9533055d9a927dcd79406edd0ed6a99a779a3aa5805d617be725d *18796397b8aa9222bd91b5ab94be03a94dd3182bddb2bc01bdd5c23412b01b99aed540ad016d42 *3dd6b2c5ba489b961b25812bee32811274836daf910a9837520bba45eeab81e1a6398efd75dad4 *4827ef535bcdca4f096c519a92b7255cdd52cd1dd53131c796dd277df10c18089a211cdb8e267d *f16c21b69a5a55e575b1496f57cbb2badebb3269890aeb45593ad216d1c70a1508e3211cfd8e26 *fbacc4310a09e9b455b4d8a2b1e5a2fdcca5f6d99be3822082326a08c7b9a3c9de46030c952ede *68ab360a26057b6eef70f7680e61f576eecdd1fcca464b616369e7587b40cc9088210147fef7f7 *0e4793be98b190ee63ffd695e38151c46c14ed87d0a130222194a1c110bebe389af48691c5b861 *b4fd9da5a3a773bb631b6de67ce90496965d9764e08a51b0e592272a1b6137e1e12ec1411e2965 *5d1c35bab39449a65b4da99fea3ba54d50aa9f17199cfd26bba8019534ee0342f24bb7539f2d15 *9c74d9e697e6a8b69f62e01e4908f1f73f9db47fb1034e390acca7f11d5350b0440826c4aef06f *e9814812656e6473747265616d0a656e646f626a0a3131302030206f626a203c3c0a2f54797065 *202f506167650a2f436f6e74656e747320313131203020520a2f5265736f757263657320313039 *203020520a2f4d65646961426f78205b302030203539352e323736203834312e38395d0a2f5061 *72656e74203936203020520a3e3e20656e646f626a0a3130392030206f626a203c3c0a2f466f6e *74203c3c202f463139203720302052202f46343420323320302052202f46343920323920302052 *202f46343220313720302052203e3e0a2f50726f63536574205b202f504446202f54657874205d *0a3e3e20656e646f626a0a3131342030206f626a203c3c0a2f4c656e6774682031363633202020 *2020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78dacd59 *6d73d34610feee5fa16f386d7cdc8b5e61e84c28840943036dcc276026b22dc76a6dd9480a8461 *f8efddbd5b49273b9714a6d36a328eee65757ef6b9d53eabf3e8a327bc2bf8bcf00a8fc35f9044 *2ce0511c79b11f30ee87b1ef9599b7f47e1f096d20bc44b144c45ea442c645e4cd37230e4b70ef *456b3121938965f3743a7a78eafb9ee02ce189375deeaf335dbc1bc3083b9a44011f9fbe3dff75 *7af6fafc6822a1f7ecf9e9d9f999ee7f98be7c782a126b1de5472cf243f866bd844093d1f3698b *c60f240b227527e0c6e610b1f484cf142c6f21e6019341dc203e9a08c4787a5dcceb7c5b10e2ec *3de7b2c8f5c81e20c163c613e185b160810a3520162224f8df81e2de44b120d6583e8ede7de0de *0280bf84cf9ff0f93c422b401dc082822541a0f7697431ea76caccb68b1c782d80c4103c9c5848 *8cd78997b02454e83438076893162d7afdf86812c860fc9e071cb6e6edb9e916e926eb26bea6e5 *d5350c8871517ffb094684999b6d175f74cfc54a9800603104563a246e56c8668f955727bf3d7d *767240063201847c071941c44219dc4346f86f9011de434687c44d06d918325c2e415e09a32178 *d402713b644caccd35312ec1cbf1a3474fcc586a2eaff26a872d7f7cf16533dbae9d0428c52211 *0c21c03b246e0ac8c6e2a08965d373d350dd4d83142c1a44f26b81b84930261607f8e03ae2609d *57b52160bb34236fd2322b2ee665be23ceaa3aad33a4b0ba45cf264a3001296522c105fd9d27d5 *d144c16d7961aeaf724822d5eed8f496243c64949647221e67a6b33032942d4cf7bac23b8b2bd3 *ab576475a993f8035a6e5b6ef4cafef8f32a9fafc836fd2b6bbe0031e306092017d84284f858e0 *4d918f2ce0c5b0802d6441458a8099d0a91ae362d1bb6bd98a28f634c942883133fd93c2ac946f *76eb7c9ed3fa976ffe78fd42a3874e5edd822e5d2c9001d46503627b5d505f73800dda5068759b *c35cb10b910515c01082d742e28cdec606a940315a64403385eca463bcd12a0ae35923542e0e54 *c2141f824e5b480e39500103d71b93868232abaf4bcbe79f7b4ff00cfd6e3e4eff65a4ebc201f8 *df2171fa4f26e8ff935f8c97fd9d4fa97ec5fca0a3e0d8e2c234bf3aa9100153c90024bd037248 *4408295cb45891083b0868e7290e66ceea25e08af96a08059985e4d059fdc47768d1db6fb7490d *146c4a292d357e62583929b6c597cdf61ab37dc27bea02dd795a98c62ca301233790323193c709 *6a8c169884922b362ea91e8604fd8096259581a651192b6b1bbc397e63d42c1226e34a975e3894 *d214e9d6b1999f5dd766f8735eafb6ba03a3b6a270ad53cc34cf0a3248e7f531ad67c33c9491ce *d58ac4c45c5af9c40e7e39cdd2ab60b6d9d5242dcbde3ba201e308345f499628318040b3903825 *a6b169f2eb3addcc16e9a1a674c9a49f85fd1fcdc2be8460beb78cfc4f68ea90b8b27063e2cec2 *df9b797d9e302e0711251d1267ee6d6c7e34f9aa24623c1c82e45a489cc9b7b1b1926fef34a94d *be101c4a86749c24389d279d54557e55e8f72c171d2a64512207b0f91612678a686cf64e4a2e9e *4f4f29c8d7abcab4ca554527462ecfa5cf62150d21103a246ecfc9e6ce631125248b633904973a *246e97c8c6dacc76f7f6df87bbb75fa82de905789d2da9b5d2af80faa5385fd0f16176b32b3308 *7ff7d1a9e29049e52002a043e2668b6c2cb6caef61abcfc73f382e68330724aac05452893f5e6c *8bcc8cb4355a730800b397f8243e30836d75d69d01b4ebc02d655a5468a24b3eb0c98b7a6ba66e *3b1ba8b2326f2a263c0bd0b5510b91260851ef95fc65fa296d4e4d749df5846aaced2e2bd37a5b *62a1e62ca0a4af406c87f04059489c21d2d834055495d5cb5e5c88ae1a684a079aa1f871264b09 *b559f3bbc7ff4284999fd0ed03d80f28c37878cf7e908d733f64734aa22fca5ce6e6e29bcbcdde *f982df56b6647d5f712be12af810b29c85e490329f83b0b760ede2b61fa1d2297e220919944d03 *a8642c24b7147621f3e30e2d7a3aeb79a8dc1ec63e83fb86e06187c4ed21d9e8b7de9e87bedbc3 *4832e90fe13cd042e2f6906cd0c39b9e877b2f23bddefcf16d021c02b25059023cd50a16c6ada6 *621b05d3b4f4190a365a2135ddbe28c280564b9c30974f6999a7b335ad4d070d384dcbb5b278a8 *c15841e8c30b53454c64225ac98566bd426dc796f51dd033c28eadd45c36dbe6d705ecbd975265 *4b1cc05f19e6392087219feeb0aa10ecdf810e296046da4fc1c09c9adca49bdd3a7bb41f6ef41b *7c123019abdbe24005310b217eb83df937b57d3132656e6473747265616d0a656e646f626a0a31 *31332030206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203131342030 *20520a2f5265736f757263657320313132203020520a2f4d65646961426f78205b302030203539 *352e323736203834312e38395d0a2f506172656e7420313135203020520a3e3e20656e646f626a *0a3131322030206f626a203c3c0a2f466f6e74203c3c202f46343420323320302052202f463139 *203720302052202f46343220313720302052202f46343920323920302052203e3e0a2f50726f63 *536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a3131382030206f626a20 *3c3c0a2f4c656e67746820313535382020202020200a2f46696c746572202f466c617465446563 *6f64650a3e3e0a73747265616d0a78daed5adb6edb46107dd757107e1165479bbdf292c22d5c47 *7612048e2b2b2d823480698b72d4ca5242d2718d20ffded90bb924e5a55da068f8501832f7321c *ce9cb33b7b447bf0d923de157c8ebdb587e147c42112388c422fe202611e44dccb526fe1fd3220 *ca8078841314b2c80b59803009bdcbeb01061fd83bae4cc6a5cdb866f4f36cf0f488c41ec128c6 *b1375b6c799acddffb8c8e3ecc5e3d3de2bc6618418b30702d2d0e5f1c9cce26d3d1980aec3334 *1a0b8cfdd3514cfd83e9e4e4ec70faf274a6275f1f9c1cbf3d389ee8de7472340183c3897cc060 *32aba285fb118b7967428c73c4230a0d8c42112b1b14482bf86ded301820110572fef3e0fd07ec *cdc1d72bf8fc019fdb81b4a248084091a0580885ede06c60d1d5b395936d64458478c000592c10 *1551852c8fbd18c53023810d298aa9579a48d47ec702e769b100b8a8f0137d918364cf0c4187c8 *8fecf2d8dfffd18cefedb5012342001fd40b62861866df0f0c3d3f36b7778711fe1b6184dd9c04 *11418c7772529a7472b2ab9b545f98bef08699eaf1266bc292a62fbbfb0d47bb0d7fbb0db7f7f6 *1227f3410c5b867d3fc87bc7bc081167ddcc1b934ee6c7ba49b6f6240f81ed16bdfb0de3718d33 *08804279859516c808c68c2012c93216a1300e74a145046e24b2329e2dd757ab5457c924bbbab9 *4ed785eee54552a4b29bbb568288290a4dd1fcbe14d4227151509ac8fc7fb0a04f27b3b7d313dd *fffa2559dda4df7e52a8bb7286f3280c480f0e815a24ce9c8d492be7d98be99bdf807f683e2ee7 *2042110efa90b38dc499b331d139bb3212018a442f58b4913833322635161569baf9ecd97ea330 *9c2659ba3ebb1c113f5b7e2af458fad7a72ccdf3e566ad0b444389550582864a69c9c7cc3e8277 *38defddc940786e1bcc94624f2cb12a1666d895016e7ca222d6eb2f5505b24ebb96e9c171fd5e4 *e67658f7661e7395aed30c7ccdf5dcc59d1e2e200c0858f241004ba1625b6cb26b980e887fae37 *ef50f7f4a3e4b05adf43d4e8c90ef63f26b91e2d36fa7a91eaeb4d9e9abb97eb7c3937a349e962 *3a62a1ff6e580f06882aa341ba60da70646f99ebabf62c5bf299f26a413265575f0ca7b2b9d050 *5d37e61737ebcb4252a87a97c96a855ccb9b870209da83ba6c03712d6e63511e8c99c1459d6dfa *f4634168c50d00e3d74d9c0804105d20fa2152fa5039b92028c0712715c6a4e40276ece656e3bc *b3d86c2e926c675b6d1640c8b6dde375087d5087348bd77d64b3080a6414f500e55a242e944b93 *d699fc7cf27a3293df56032b4400daae6399851cc58cf5216d1b89336d63d24afbd7372f9f9b2d *fec8a4037017463da86db5489c491b93b6fe7a773a7973f4cfb886bd8929eb43da361267dac6a4 *95f6cb93b3d9c1c9a14a5d3c3e7316231cf482701b89337363d2cafc6402729b538c1f9b334831 *427ac1b68dc499b331e914dc8c084444d8875a65237166644cfe6bc14d6352096ed96e0a6e3922 *fd2af5a87ce77af07c9eaed2221d3e31dd2f9be5bcea14779fd28d7cd720fc6a0c246e91ac2fab *71f334d0cfdbfaf67c9d4ac54e626c15bbecd414bbec4ac52eaf52b1ab86d4c5b96e9eebb34d3e *5e7565cdaf3aba16565d59234621f7759d186eab7fa5f295da864d3534ca1bd0bb33d261b53262 *3bf9336dc8e753133e50a5792ab585c5d3a9a7296328a2410ff6632d12d7ea2d4d4a19a757872d *464068ed6da3166cfa8562eb9d63f9026a5bf4d55d56ee8e9427e9943e318e9ed43c39b1a50445 *21f9ff7562453106464937c5c6a4a478b9b08ceedb66b5f7a17fb1da6457d52b7e7f372f32a834 *5dc49018ca531fbebad840b6f18861ad7352c65ae291acd2acb03898bf72ec280c745b7e3bafd5 *f01caab702e499316d81d68913087a8c451f80b291b8913236f740751f3eeb4d51038afb7ad9ec *3c8809a8fd7e405205b28d48c4108bca50251e6579ab6fa7ad3d642aa1d96667e5c2b145f2ab13 *14f83680e33e94985a245bb0c8da22988d561dba72914834bab6908401d0686da1bdd64e722a44 *223022bc0fe05481dcb38940de87a48c5542f3cd08be559e3e443f8b40f6f5827e1b899b7e63f3 *20fdcd0a512ba53bdd74d30051da873fa6d72271136e6c34e3ed94d4bf32c05d02d188ddf73006 *cf0a20485c9ffc1bae6534f2656e6473747265616d0a656e646f626a0a3131372030206f626a20 *3c3c0a2f54797065202f506167650a2f436f6e74656e747320313138203020520a2f5265736f75 *7263657320313136203020520a2f4d65646961426f78205b302030203539352e32373620383431 *2e38395d0a2f506172656e7420313135203020520a3e3e20656e646f626a0a3131362030206f62 *6a203c3c0a2f466f6e74203c3c202f463139203720302052202f46343420323320302052202f46 *343920323920302052202f46343220313720302052203e3e0a2f50726f63536574205b202f5044 *46202f54657874205d0a3e3e20656e646f626a0a3132312030206f626a203c3c0a2f4c656e6774 *6820313730342020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a7374 *7265616d0a78dacd5a5d73d338147dcfaf30bcd41988d0876549dd61992ea450866d599a850796 *99ba89db8649ed62bb0586e5bfef95257f34899232bb3b683aa99deb23fbdca3abab2bc5834f01 *09cee1f33cc8020c7f5c09c4b19022901147388a651414697016fc31203580048a21456420588c *3011c1f47280e1163878de22461632ea617e9b0c1eed4751403052580593b3e5fb4c66ef438608 *43c391e0387c7a74f8ec60727074b8f76a38a260389e0c4514eee97f93f1efe3c3c9f1f0c3e4e5 *a37da27af7649140228a81457d3ba62183f1a46516718ab8601bc9379855f63420116270fb1e7b *cc11e5b2653f1c114df6699ecde6d53ccf9285655f25557a996655b94c896089b022412c09e22c *ae29a1589382ff1d2d1c8c18e2b266f369f0fe030e6640fd257c3ec2e7f340a38037871b12a438 *af7b6d703ce8facd5c6d6fb2e237011963f071d46362fc5681422a66da6df00ed8aa96adf6fb97 *e188531efe85393ed837e7d3beffda505da4993e8bc26fe9a24cbf03983895881590243e28d131 *712b61314b4abc7b313e5cd2a2a70409370ac0058a29df2240fc5f08106f11a063e216c0629604 *f8f3f0d5f8f8d821010890661b2580ec130b1f146889b8053010e3bfcb1fc69020dc8798ee98b8 *3db2985e972e75e1eeee63739298c3eba448a153b3e36931bfaa8c2dfd7255a465a9dbb854a104 *092f525e4bc4ad8981f42431398d1148ef7791a36ca600f3759ead3583ce55faa57ad8dccea51c *5648622fe2a963e2d6ce62ac78526d8f985b1a2ddbad482e717411237dd0a623e294c6427a61a5 *e7c79f15565c722455e441deed31716b6731ff43582dd595d01d88c0243fa21861aeea274e2ea0 *9b6824c39383fd1d7d26c2b3bcb834b6697e79355fa4a5f956e5f6689a88f0647e068fe4e18eb1 *7f4c6e92d21236adb3b22a8632bc9e56c898f632d312382fe6d3b9059ebc7e73f4fc704733d69d *03d5338f0cbba4181219e6d7d90c4a52159947db934c9fb1f0b448b2e985b1262b381386cbb879 *698e599ace52db44fb629b7e352d34ff795919736e2f5fe635a5740dd9ea22d1ee8938cc33ad90 *105dfc2273e15d4d5b5f312282c9ea2e5addc1a6f969cb75a9d9d516dbac7982eef49a87ed786d *eb46478dec333443f32574501351ba9c3f79b2f3d09eedee9893fc2a2d920a7cacbf5946705633 *82e3799a69403a43cec187632428f5216f754cdc83cf62b43cbadeab23dad67ea78bbc3847f372 *34cd8b229d569b2abd484530af0a0fbcee3159f53a82b5206dc9364e5f15f979d6f93d4d8ae2eb *2837956d6b2dd2ea1a5252d1641f7d75a3229222497c88831e13a72216d228922cd2c2a6ddfb75 *1858a74b73ccf27642d292e8e0b8777fab2002c31ce94588744cd6088291502d592dc8e35fadf7 *6bc6c6533334cc5210b712d4b86f4e25b884298978303ff798ac2a11c74801a8c16829eaa17194 *35be3a174a51a4dbc63e78d831717b6831da433dccdb31eef68f4548291f36377a4c56fde3318a *64c756fbf7bd5f9e6e8e52ca10f6622babc7c4dd871653574d3a7be918dd9cbb60d0e6bddce5ee *6c70007bb193d563e2ee6c8b319ded7089298508fd897d6bae8feae63ea4092605229b37882ca4 *99221fd8b0eae684d5f92199cda08ed0db64ddac600f74db74c9044794f8b07dd863e29a2e1bc8 *ade9d21c1eac11e5284b9b29c46c273fb9a5cd6e4fa275cb3848d752d0d5651c5150c9eb2ddb1d *7d4e9ae51018cd36a635ebaabe3417a649666ca7b6b95971d48d2da4bcc88b6a7a5d956d6363b7 *4b2c621730daa46fec5c173016a358f9d09d2d1177a81b4813ea9fedb6ffda650144f7c69501a3 *506c332fe2b863b2ea39e308125103693cbfb5147039482812d207ff5a224ef70ca2f1ee56adb3 *351f61a888a90ffb713d26aef54c03b963f9ae4df6d79c3b94ef544a247d58c774445675101426 *2bda70fd91da9d0aa8a8bcf891a3c7c4eda0c5dcbd76a73154c3dc874cdc63b2a6ae2548908eed *c6728e72287ef14fdcf0ed97733ea47a1a41111c6d9ee41a4c930dafb3455a968e794ed7709b77 *c02855708c7c18361d13d744d0407e6cbf270aa7f91d377b28816299291fd4e898b8668b06e29a *2deefdabdd1e8a3922d28bc0e898b8f3a9c5fcc03a7a690fd09978896288521f2aa51e1367e26d *306de25d7a7568140b58f930200d091ab76f3e45f6dda1b74342601151cc93d3456a7e3b98a5d3 *455224d5869fd209dc8c2be941acf49838336883597a67e4d978ffedde1bf3fd2629ecf0b84916 *d7e9f7275b5e9a2194c2f3990f02744cdc0258cc9200afc693eecbb75682bf3b636bbb49401010 *e6762e39cd675fd7a9645f5753b0d8966c1d7dc6258ac16ddcbff80f33b6b17b656e6473747265 *616d0a656e646f626a0a3132302030206f626a203c3c0a2f54797065202f506167650a2f436f6e *74656e747320313231203020520a2f5265736f757263657320313139203020520a2f4d65646961 *426f78205b302030203539352e323736203834312e38395d0a2f506172656e7420313135203020 *520a3e3e20656e646f626a0a3131392030206f626a203c3c0a2f466f6e74203c3c202f46343420 *323320302052202f463139203720302052202f46343220313720302052202f4634392032392030 *2052203e3e0a2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a *0a3132342030206f626a203c3c0a2f4c656e67746820313730392020202020200a2f46696c7465 *72202f466c6174654465636f64650a3e3e0a73747265616d0a78dacd5a5b73d346147ef7afd0f0 *1299c18bf6a60b9d9449c10961284d1397176006d95612b5b2e44872424af3df7b5667e5157136 *210d53348cd1d93d9f56dfb9ec6a8f368333873a27f0db7372c7837f320a88f482307042218927 *fc503865e21c3bbf0f6803a00e1594043c7402ee138f06ce6c31f0600ccfd95b43462d66d401fd *32193cdda591433d1279913339de1869327fef7231fc3879fd7457880e30048972185a215ebcda *39988c0f8723263d9793e1487a9e7b308c98bb73387e7bf4e270ff6082ca373b6ff7fed8d91b63 *eb70bc3b06c08bb17ac0603c59b385fb098fc4ad067121880819081e0964d46088af50f0bfc179 *002032f495fe6cf0fea3e7cc61acd7f0fb137e17038562444af0222591948d6f074703e35dd4ae *07d9f4ac0c89f03978d69384c970ed591139118940a31c1b301231a78528affd74dd6a2a253895 *397ec409f7780f2cea30b159d442d0a29164d23d8fcb218c1148f7d9b36dec8af1f226ad962855 *9743ea2ea645667542480917e11d4e08be8713823b9c6098589da0215f39215b25285ef7c2415c *26f9d10c1c50a6cb1afb92cfcb32a9aab4c8ad0ef1239813bc0f0e314cac0ed1908e43a6c5fc12 *d2c283797fdd21595a693714c7ea2a5a1719ff54755c278b24af2b5c8cbe5ab5469c121a024526 *4810c8e6a9efd4f21397693ccd920a961b21dd0ff0ec24ad4f9352b5859b15b338435551e2f524 *2ba67106408aed599c23769a60c73c996590de34749339f6acaa343f41100c8d7d9f5e8e77df0d *29a5b0006e61d771512e9e28ee2a5214bc0c5e533c2f4ed3d929407cdf4d154f1f6c4d17a97a48 *d359175a596b6d72b64a21b9c015a850036b488e0835cb08764d1a46205c6704307c9cefce8afc *3c296bb0a7c30e9dd83c1c02f68131decc6ad52084a0b0bd6e835e6043b301a96103d7d7f1798c *9124b6d49691209c873d58f03a4c6ca9dd42947f5446cd93e3c6352a4b1fc78f51508ab82ce34b *6c52cc6a862daef20b734c35b77fee2c9b4ad8d1fd7879af87788257a6af1c2f1fad3e0d19e1e1 *0f7c89a07ea46ffff1ab960c3c22d8eda1d59036b4e9b189a68e46aaa3d184cfe67af5c8a00f2b *7587c9a6cdf0e20e055db36d8d5e96c5496eeceea6f7342bca13141fc1dbeb34ceb2e2d1ad9e10 *3e91b40f2ff10e930d4f30d8410ac9d76c5b4fc0225bd61dcbd7d3d6662d1744fabd88bb61628f *bbc6dc33ee53087c96d67f27d9ed91678cf85ed08725dd30b1475e63ee8afcad16c37ec497ac0f *161b269bd10f43e253ba66ab2c6e5f40dde54eaf73dbdbddf5ae11bfd81c2022183a0a7a90fe1d *269b21a7b047f40d5be5809b125d1bfe0817396bad26429f0482f5c168c3c46eb4c628a39b1c57 *a15e67b8ddc8006e0f7b1159c364d3480f36669e61ab8cbcd2d55556257765afcf48c87b1148c3 *c41e488db92b7ba77aa9b687567a240cfc1eac5a1d2676b335e6bef9cb43d8ded13e186998d8f3 *5763307f6fa87621f6eac5ddad76a1646061e42e0a2c4da11579aaac5e5ea2e222d64253d181ae *53c7a2a22d86413cd76533229b32b173e7aad27760b50bc2a737e3c9162ab1cac5473685ed66c1 *db8c0775a1a972a1d1169a58e5aa0f85cd97a2b6a2b4568e3c0888a07e0f666d8789adbc68210f *2c2fb82fe191b40f361b26d66d668b698dce92da58bd9ebe5fbd6cefda697109dcbc5e04dd30b1 *4ee716f35fab0a2e28b9b380fe3fd62e43c41e6c847c53aca7dd2a82bab7ba80454446bdf08161 *620fb8c63ca498e03420bee883c16b22d6524243be6325c13d49fcb00f1f8d3a4cac9b9216f3c0 *4a82c11ceac5472343c46ab286dc731bc642da6c587a60a261629dc62de67e6504f32312d23e9c *467698d8e3a8310f2e23980c48d88b05abc3c46eb6c6dc377f856cf6e03d30d230b1e7afc6dca7 *8c78555c24e749390c840bbb782ed5b9d7c5ba4c50edfa34ae51aa66c5b239f9520d75d8a3aeb8 *6d57529ccf5130e73f5ad11dee6c95d65a9cc34b0314c709ea733c2eba563cecaa833a1e7037f9 *1c2f9659f2045bf322df52c307ccc5bbb34b5414395e675951ad5055e99e7859af4a34009abafc *51239c9b5343a549f5104db9a304554b6d32bb2c565b735dcc9ca6f95fad985ca27451acb239d1 *7f49c11cc8442e7c1507953692041423c00995c3115577ecd74919d7ea44b8196056e4555dae66 *78027a537e52f54537eac3d7f60e135b31d4423a27c46a16befccdc85fd64bd23fa673ddf72585 *5d639ed657cf75bbaa93e5d5733583af1e9b4d4673e89bcf477552d5a6571d46dfb6ffa2ea83b0 *e8c3dbb8c3c4ea4a0dd970e564ffd7f1d10daecb570b35cbdc743652d5f537b8a5f9b32078b224 *4c9f295e23cc81af0f867a5de5bfdc62f27d656e6473747265616d0a656e646f626a0a31323320 *30206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e747320313234203020520a *2f5265736f757263657320313232203020520a2f4d65646961426f78205b302030203539352e32 *3736203834312e38395d0a2f506172656e7420313135203020520a3e3e20656e646f626a0a3132 *322030206f626a203c3c0a2f466f6e74203c3c202f463139203720302052202f46343420323320 *302052202f46343920323920302052202f46343220313720302052203e3e0a2f50726f63536574 *205b202f504446202f54657874205d0a3e3e20656e646f626a0a3132372030206f626a203c3c0a *2f4c656e67746820313931302020202020200a2f46696c746572202f466c6174654465636f6465 *0a3e3e0a73747265616d0a78dacd5a5d6fdb36147df7afd0f2121b89595224f5d12e03ba366d13 *a4c9567b18862c40145b6954c8922bc9e98275ff7d972225d1b1e8a45b3610852a913ca20e0fc9 *7b2faf33f8ec10e7235c6f9dccc1f08f873ee2d80f7c27601c61e605cc2962e7daf979406a0071 *428a4212383ef51026be335b0c3074819db72d62ac20630df3e374f0ec0d630ec128c4a133bdbe *dfcf747e3ea48870341afb1c0f8fa6871f5e8e7c369c1e9d9d8ec62e54bd3a3b9d4c3ffcf26a3a *195d4c8f9fbd21a1d61b653ef29907dfaf3be20232389cb69c187711f7e956da9431c402171e30 *f2795863902750f07f87c300403cf044fbe7c1f90576e6d0d7315c9fe0fa321028f818270e2128 *e4bc167030197412cad6b6930d2204c6e53120e2638e5c1e7402864e88428f8a11131726280c9d *0623c6fd6234e62e1ffe8e397e7d7672349976e5dba890853429abf1753e22c362010d44d65ee5 *f3bbba744f378203f80a713c982e8aa9059a684c8c9a34980d4d0e5fbe7ad7a3497ef5299e558d *1aec61350282280b1e50c37f0a35fc07d4e89898d550987b6afcfaeee8e45016e36c3eaee2b2ea *d6022c8fad027821a221b541808e8959008591029886c47dc4a81573da31310f4961b4396d5633 *1e3e7f7e20ab22793b81d94ccaa52c94778bab3c35aa00669f05564c6cc7c4ac82c2682a64ab45 *5c2433b070c542d6dc57e32750232ae26c322b92a55af2f11fcb222ecb24cf64190aabb44ab28f *b298646b3dc037aee2c2282185d1b9be0da6b263629650613409958710fab904e32715b0b91745 *746714d025e0ab5d1b04ec98980554184d40e94e4663eaf9fcbf50afee1fbaa98c0ae21079c4b7 *6117774ccc0a2a8ca6609225200df3bf7dfb1a141181ade7b91628a231312ad2603445ca2a5e3e *ad2201473eb6618d684ccc8a288ca64817b4b8ded3a9e25388fd8905b64763625645613455eae0 *ad7f9da47518a0a4c8af954cf7352aaba88a177156953dc7ac3125880440d385710472814e6f62 *f8a04b8697afcf76e593701efbe2d11d7eb9496637b23629e5bd4c16492a821551a872894b843d *2be5f3491dacac75d4bd5d1551568afa78aedecc641f30dd82b1982302fa825e82dd71741b35c3 *a33e1e5ec2ab70c464c35d5126dd70916c3fcdab58b65437917aa7ba89e503883522c1b0134ce0 *e4b045b3f499a26e9ec7a5accbf2aa87d54d740b5dba413d37e226fbad564526cbb751ba8af7c5 *33534444add040dcafe259b42a550ffa887490eab91da0ec2ccae6b25e109338f549b1396a16e5 *b887b1744e22ba4cd4bd53169976130b42c429b3c0c6684c8cbba9c188e18a03d23cef0e4be24a *641177b5644fb92b7156da765e62be0f41426883101d934d2138412eefd83642a4dd88c15a28c3 *7195e6c5476df81a46e4164cb00795f238f25c2b964cc7645329e621ecb6641ba1c495179d12ca *fe269a14288db38fd5cd56093805ef1f58e08334269b12f82e82ab65db68107f4e1b7753df76de *ac164915955532db79d4026004f9c4864c93c66473f49423eeb5643b93315bd5cee44b91083fd2 *2c0465277660679ca83551365552ac4749e386e0ee6d4851684c7af60646603c1a8890e6e00739 *ca6b7d73b4d937b53dd466c1fb6bcbe74065e4c4de394f2e8ce91b467c14601b12171a931e0beb *2116746c8538df69bee5e060d354c89aaf5fa510e93af0feee32eb83390aac48596a4c36f5095c *e451dab215faac2f0f55521b8af42c16a5deb988762f3acff4a749191a52145891cbd4986c2ae3 *792804508311caac5b1bb18c76d6ac0b6baccb9e66648c2b8406c09fda90b7d29818775083113a *fcd57752f1e073f08ae9a4323d7a7f38d99527886b582abd2796346e8e2491ac009b954457a9ea *06442fa22a569dd4c173be904d58de56cbe67c23a26c5103a7d69ee8ba0df7457c5dca7b246fe5 *4d5e54b355254bb505150fe2d4618cbba9cb50406c88203426c6b8bbc1744eb44a1671d9798a8d *f8499c15b7865094b828f0acd8d31d135310d140fe7510b13d407f4c8441b1d8403678098d8929 *c26820df1c61bc58abfd0ef4ec71bb2ffa5e4df6f61ee151dc2080d1dbb0fa3426468fd260fe89 *4769c2b2ad8ec5f5e143a10d8e456362742c0de69b1d8b1b06c22a8b9fdd776549fd8612fad2a6 *434d246f9a4d9730f920fd499df617c5fc36560d758a06ba913f9b1042864836c86c95785249a2 *fa29297b5c8c24c3600a6732cd039eab941555bc58e64554dcc962e3e454ebaaac193199481435 *d7ab6c56d5f9a0babb284d652e8e0d2f8f27e3b787a793dfdeefeef77050ae55f7726d32501484 *b3ac1b2bd52a3381e26996af3290671915ca135eaaef189da08b3d445d1bfe8c43636274820da6 *7302699babd57230f586db66c149c810f56dc89f684c4c9eaf81fc3fc76771b860c486249cc6c4 *e4dc1a88eedc5a7f562d962f8b826c1e7a4020a319263e46ccb36265744c8c66b8c128d3d5e3d4 *418423b7d7b1570bd0a16dfc7e4db3d6bb9b54e201e2d886d0596362564961844a9b7ad4358f8a *58443e93731b926e1a1363c4d260e4c9a9e84b01a8d93e97a290a139714428433cb421e4d59898 *87ae304f7ffc2710cf78cc86a05563625ef80ad34669fa90d49f96861cb9ea4f99ee7d8bc2b6f1 *8023d61bff06aeed6a5c656e6473747265616d0a656e646f626a0a3132362030206f626a203c3c *0a2f54797065202f506167650a2f436f6e74656e747320313237203020520a2f5265736f757263 *657320313235203020520a2f4d65646961426f78205b302030203539352e323736203834312e38 *395d0a2f506172656e7420313135203020520a3e3e20656e646f626a0a3132352030206f626a20 *3c3c0a2f466f6e74203c3c202f46343420323320302052202f463139203720302052202f463439 *20323920302052203e3e0a2f50726f63536574205b202f504446202f54657874205d0a3e3e2065 *6e646f626a0a3133302030206f626a203c3c0a2f4c656e67746820313734322020202020200a2f *46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78dacd5adb6edb3810 *7df757087989ddd6ac78d3a54517c8669d4b1174b3a98b3e740b44b1e55a8523b99292ec62b1ff *bec39b48c7669c87022b14ae4871449d391cce704619fc0870f00d7ea7411984f08fa731e2619c *c441c2380a5994b0a0ce8345f0c7004b011c6086514c9320a6110a711ccc6e0721cc1106a79dc8 *d8c88c1da15fa783d727380d7088d2300da68bad99a6f32f431a8dbe4edfbf3e61cc114ca08529 *4c2d248ecf8e2ea793abd198f07048d168ccc37078394ac9f0e86af2e1e3f1d5f9e5540d5e1c7d *38fd74743a51bdabc9c904048e27e20583c9b4430bcf239ab227153232cf5428e488f044c29d2e *73787f9c0caf7ffb7d72747c76287ae97051d5b7ea7ed1a8ebac2aeff3bacde74aa0add4ed4c75 *afe10175e3cf9087f799ee20a4868bd2f461181faa8e79871d7e9fdd671f6775b16e916001741b *638a384b25d4f356312511c1f5ae9160a025c1889136afb336579d0ae0eae1a5be959777b72071 *b3d2fd753dc2c9b05a835e45ae67ad16ea9a95ba7ff33d9f293ceeaa60ce61d1491045314aa244 *ae0a8ac4bac0ff766540035020910bf263f0e56b18cc61f5dec3ef3bfc1e06428a20ce61428c52 *cea5350f3e0eac3dabd16e926d5be60962110dc60e12b9f4c05a8a5218112b1f13945ab0824db1 *4ef32acf664b3051c265bf504da5b25829afd6f24afba0b545b2ad7592a008e30ead557b067650 *b6e8a12e84b518f55faaa664810d0f74af51d7032b97d5f9c2654a0b0ac2dc9f973c4641e95e98 *8c45e2274fcb08f2defda254959bddb021377bc71b979bd97033c2436d48f2d63f5e4a284161d8 *0b7bb248b6282198a138b26805259bb6e46ca2971b66a3aca833aa97aef97c29be0a8ade7ac921 *2184ba780f39d1cf2027da438e45b24d4ec8100d2d5a41cebf2a586e04219804713119e18851ee *04210a61e4f3d9f9c5e45075747c8096f4f8706debac6cc46de9f8a98e420c3c3c189a9c03da36 *883c9ee6fa6159acf2c357aa97957a925555ad9b1df1e6ae6c8b950e063a90e4f56d51666d5195 *e646a383527e9fadee20f6349b116991ad9adc1b3c388f1121a40766ef20f1050f2362bca824d3 *ba8145b1ba4545332eab76bc80e528caa259e6f3a71c2187331c89e23ea86f91ec708414c1a1c9 *8818f5db65d1a03c6b2d0365fea03a2fd6d57a56d5a5d41d0ff7c5034ee105b81756609178e381 *9171e3c16e53f850b5271b8610764c3c1d0d38c188f25ed88545e28d06464610628c62c31c2ead *35787d3c0f53c442dc031fef20f1fa7823e3f8784620bd4094451b3e9e7294107576a00847a331 *164e716acee3d7c7471fa5b78776d382f71491d4471163294a38ee815538487cced28808cddfda *9d21f455bd59d6e4631133f4be99ad60ab6490d2bc78ca55300a07f834ea0307168997032da238 *f06904c700485cff7fbbb740bcfa28096749672bb16260bf1174debc79e71e8ac57a9ac5bda9e6 *7f3fb9ac70ea4813de07162c122f0d5ac4e5e19131775464da036640469d97e65826eee57fadeb *bc69c451cac74a08c76cda07523a205e4e94844389668362706d3f870e9ac2c13ae63dd8fb0e12 *1f2146c461446c0220248ab7ed635500218d66a25a18961e51d4458866575a4131c209de9156c4 *647851346bd5ea220eb44dfd89ea1a1779945f881b95ba66fae9e6a16867cb43f5948d58725015 *b1c89e22161c8a845930c85d96e2f0285a061465aadc26eec1315a35441d4a5c8581886a953612 *79afd057a04a0e95e6bd722aa9be189ee78bec6ea5e7137b553fbd91f428cae46b45382eb35b53 *5dbb9eea105de8ace7d1eb5ea9bb3777fad1ebdf2627a3980d8f3e5d888b7dba69f36cee4d8628 *a0e84392dbe1f0dab614307980e273bb3474b3aaea6f4e65c8ab768851ccfae0fb1d24be24c888 *18e5b1a3f92aaff5463da8cafc605fd6439214c5690fbc9905e2d35a4b18a5c96ea5db876abfd2 *311c89681f7cb883c4abb616e9caa6c68decd2de1964fa5c74f09c6228892045e8432dd402d9e6 *23a52861d86075335f15102c2572d7eb82de9e2c97703847915ed88245b223cb85664a3bb44279 *ebf2f01b48e9384474690a8200b9f775d1c37be8270c2047690f7c9e83c4afba96d9549d6cab2e *3cc05ed5291c8c701f121e07895f752d232bdd6a876fab0d03327735aec1d9fd7e1a708242de0b *f76f91eca877a488538bd65fef8821406cd53be2ad7ac7e7f3e9d973eb1d02210f931e588a83c4 *772632228fea1d425fdb73be2bda8c40ed172f092c02947d48021d245e12b4c893050f4c19e269 *1f229e83c4ab91167196d5fde4b99dd88a944d7cf4db99d8aabefa505294fa702c522c3945b931 *bf8f3d4250c4faf0a1d041e2654f8b6c25c1d2816e27c15d060c0c3e2f09dea048fe7507a0e088 *247417780ad823503a7407ff03f34cc1db656e6473747265616d0a656e646f626a0a3132392030 *206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e747320313330203020520a2f *5265736f757263657320313238203020520a2f4d65646961426f78205b302030203539352e3237 *36203834312e38395d0a2f506172656e7420313135203020520a3e3e20656e646f626a0a313238 *2030206f626a203c3c0a2f466f6e74203c3c202f463139203720302052202f4634342032332030 *2052202f46343920323920302052202f46343220313720302052203e3e0a2f50726f6353657420 *5b202f504446202f54657874205d0a3e3e20656e646f626a0a3133332030206f626a203c3c0a2f *4c656e67746820313738362020202020200a2f46696c746572202f466c6174654465636f64650a *3e3e0a73747265616d0a78dacd596d6fd43810febebf22ea97ee8aae89133b2f45dca9870aa52a *1c47232104484db3691b6e375992b46585f8ef3793b193ec8b5b4e3ae9a26a6b7b3cb69f79b13d *e38cbe59dcba86df2b2bb76cf893a1cfa4ed07be1508c96ce105c22a53ebcafa6bc41b066e852e *0b7960f9aec76cee5bc96264c314b6f5aae5982a96698fe78f68f4f4a51016b75968875674b539 *4f34fb3476190fd864ea4b7b1c9d1c4fa60e542ea2f713d71f7fdca7e67934f1c5f808ff45c76f *8edf46932fd1e9d3973ceccdec0a9ff9c2032ccda43eb28c8ea3169f900e93befba0089a674b86 *b595b40cb6648e0c9ae5a29b7432751d31bef8f03a3ad9c7ba1c5f15e582a8594565522c96d93c *9d517f5d1035a6e6697c179f276536e1e3654da48bfbacbed927aeaa8eeb7491e67575409d713e *53e367b30aa50519a6dc6552840da61a3109578c8bcbaf695263dd1d5f50639f7ae28aa8714eed *2cafd37291ceb2b85c11a54a8a654a4c34b222fafd4d9a1339fd9e26b775965f5307aeba8de5b2 *98ad269cf331db340bb7036687dcf240f5dcf61ab3300f0d03ff3bd3c074305bd0f47f1b7dfa62 *5b3330df29fcbec2ef7e845c603b091372164ad9f8efe87cd47930f5b6936cd99e83813de158d3 *1e12f2dfd00a59e8b9687aeec0fe08c3162dcaf6d99636da69329560156ce12f2953b017d10eaf *8a826a7b5760dda2d853f44c51b33d18c2f167548fb01907fc03504f87645b3dae64d26bc16aed *c4f3b4ac3bf53cd15253899b03cbbcb8c7caa6176257e385b343354e0dd32a7b506d4ec0783808 *afea906cab0df4e5872d5854dbf3df48ca75c7fa41d5d69db446aed0a5f8f8c0a806ee31473ce6 *3dfe7fa106ff11357448b6d510060cceb3162dea215b173453c6ffd918bda9fe300a6d0be604de *1084ee906c0bed792c0426cd834237fb05ed6dd82292b60858fcd15df2a4b7599e9934254387b9 *ee10dca387645b53d26322e8d0a2a67e52200043b9602edcfec0075b0d0e21b8c4dd80892ec498 *4c398612cd4dad430c29db10a3bd5e8d4a7242e678e1008e921e12e305a57950fa67dd0112bdff *488de642a6fd83f4c31747d18b938e0f5ceb2e2ebb4d86ecd8faf97b7fd0cbd76f8fcece3e6eb2 *3c74204bee33978b2168b14362d6a2e2212d9a448238d095e110764f87c42c92e2e93946e70b87 *87cfa9125331cf2a756f175754be03cf88cb34c74075a9fabac8d4a4220121b3b0c50054d44362 *5491e6e9a90836039c1fe0f35b2a3acbaaa552c36a7189d1dd7c47723275391c4100c4f101472f *6770b8b796ec4093d206ace1b18f6552e477702360de804dcc1bb08cb1f0c7a768124037bec3ca *39d612a8917d90e1a22e576aeed654076a8a5ccd99600a80954b05eab682e5762415b87610007f *9ddc5035fdbe84ab08caaaca8a1c210721a4010dadb8cf89e9724565939460e5223a79ffe7877d *e2469119d123cd405e8935f43d9a33ed2fbe0d2e99c7001b78045d998ec060f2aef8bbd11c1029 *6b4172232e50d2ef49baac01f7faa8668574764054d212546ad0eb8d5a40e113b4377050adbb3e *dbb693c7f3f96a07c66605f0a3787e1faf54bdc3080d85116af334be6bf22a6cd4fade52eb42ad *59b7dfb5913593560d5bd20d4366c356faff0fe21e12e396d43c3aa3a875ccd3346e4a1d17a94c *ca2874e0b32184392d8e1d19940d3170a8906a710fd576d312a76559940f0aea4bc6851c82a81d *1253dea3591e491771cb62a5119eaa37313e962cd37c33ec6d15f45882e87a101b0ee1eeee8098 *7d82585aa7b8cada4366a7689233c71d840f74488c3ea05876f8c0de993e07b1d51c764d05f39f *954e88cbc5de2f99db85b0d81f4210df4362d48962e9bf07b4079f31ed7521c4c02c7a00227648 *8c69afe6a107cbfe396e8cb75d0e11ac37883ddb213166ab9a87b2d54638e361fe88616d084bf9 *1082e81e12b36115cffa7bc6ce331c0e70d8cab9e1e9a2558fd1219c9033318804ac87c4e8109a *a7e710fa207fd8fe701430398824aa87c4687fcdb36eff7f71949bcdedf9104d070338e07a48cc *e6563cbff45aa5ce09bce6379fab4ea23767547b05e14e19d7b07f4c0ab2052ced0f41411d1263 *68af79365eaa48dee680a817f32926994d82892785bee11f4cb2fdfe8739a9f4879fcbae5bfd35 *1d984521f95d4c596cfbb4e1aa8757ec84f47b45942a5b64f3b824327dc1539e8c04bd8a54ab4c *fb19a05419340ec6ec3e4fe6b7b3e66360d3a2f2683e4faf29773e4fcbbb9411f9754d659c60be *5a518396850cbf8a17a99e6679ab58712729c6787d00ad32dd919df6576e60ba5a24eef414e78b *3153bdc57d8aac4039204a5ee4533dc6c5a78b0ab3e672128c6f939a884ad39a437d13ddfdd820 *1caffd328a56c1363e2608c7575f3881b0653b24aa89355a24457a807ab0b89dab0f9730d9fa33 *06b1a1f9b18c7780eb83c26db93e7e2bef561f8d43c99cc0ddb56b5c19300f7cc4ee77fe0336cd *0fed656e6473747265616d0a656e646f626a0a3133322030206f626a203c3c0a2f54797065202f *506167650a2f436f6e74656e747320313333203020520a2f5265736f7572636573203133312030 *20520a2f4d65646961426f78205b302030203539352e323736203834312e38395d0a2f50617265 *6e7420313334203020520a3e3e20656e646f626a0a3133312030206f626a203c3c0a2f466f6e74 *203c3c202f46343420323320302052202f463139203720302052202f4634392032392030205220 *2f46343220313720302052203e3e0a2f50726f63536574205b202f504446202f54657874205d0a *3e3e20656e646f626a0a3133372030206f626a203c3c0a2f4c656e677468203138343520202020 *20200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78dacd5a6d *4fdb4810fe9e5f6151e99a1c78bb6baf639bbe9c280db428b41c49753ab59530890153c7a6b603 *4555fffbcdeeac5f48b2a19c4e875505efce3e5ecf3c9e9d995db7f3cd60c639fcf68dc4a0f0cf *f15de250d7730d8f3b84f2bec78d2c34ce8c3f3b4c0298c13823aeed19aedd2794b9c664d6a130 *0735f62b885962cc06e8f5b8f36c8ff906a3c4a7be313e5b9a693cfdd4b5bdde97f1c1b33dce1b *400f5acc86a90562f7edced17870dc332d87766dd2331d4abb473ddfeaee1c0fde8f768fdf1d8d *7170b8f37effe3cefe007bc783bd01007607e2019dc1b8d216ee27b6cfd71a64734eb867418312 *d7f12586f4050afed6380a00e2787d31feadf3e90b35a630d701fc2ee177d311288b380eb0c888 *ef3892dbcea853b38ba3d524cbcc3a1ee17d1b98a50eb11caf6296fb864f7c1811c4ba16f12da3 *8408d63e53875e14b318e8b21cd913bfed00fbdb17597886cd8db3b4c7bae969906d008229e169 *9c66e75220850b0c32c7811764197ddf2636b55bc04e439365763c18f32a65053b2f5f293b5f28 *42041f2f3f339b031d820bd97c05c448225e3c0b5e6d6849f018b1b9770f09ee7f41c26a5fc571 *53ddfe686ad4efa2efc3fab2d7796a097990a70af17998c04b09b3a008cdc08ca3e46be5a30f72 *5cc725dcf6da4056ad89d67115e41ec7dd40c1265e80286009b82ac29d21d2446b9a146803ddfc *ae8f2f046d1382769f0b3703ea7c5f6af19788be2186d949906023eb31af1b4ee6591e5d87f16d *391ac7d82a2ed40d07233594ceaea238ccb017a95902bcbc1d1f0eb1157ebfc299f33c4a13a27d *a3d425d46e85fbd79a68dd5f414af79fa693f92c4c0a72934545a833d1f12143b7c1676b455618 *e811e694aa3e2c113dd18658071602b3daf0721b9a2cd96ed90e11f5538911d66fa7c9248e265f *6beb2f73334a207085b548acd22c48f2ab342bcac8d5086922ca6ddc91eb68721951f5cc23b354 *29a28b690ad10c69771781e0a511e444d05771ee89fc8b038add3200ea78717c6231de8232a5a1 *c9b2fbb8508a5b6ea5ade0a68cd397c175904fb2e8aad8464f11259b741619d49feb4de72e9484 *6da85f1b9ae84d5798a6e998a2c41a9019aaf47f98c0820d05545e7d99a5182c3ed7831d0814f5 *5cc8c4de8258b4673291450e834996c6e9f9ad8e28eec1e2edb721c43434d1e58f12228c7c5ec7 *913783bd83d1e1ceeef1079425c14c4599585402b3d3a92899f20265334189799a4e6fd7c514ee *dac4656da0a55244cb0a221648917c0c07e35af2e35779f9f97b1d85efe5a90f7b5ba70d31a6a1 *8996290559a06af4f7e1eb0f43730563c0524ddabf2488fbc4f5db10891a9a6809529005820e46 *e6fee03dd084a21f799145c9f94f60e78fb5a6db2ef1782b7ca3d6446bba82a0e93a8b6033e079 *7e1bc242ad89d6220569bc4c74666e51daddde7e8932556b0ce16d4690606527bf9d9da6b19605 *6613dfe66d60a1d644cb82823458888385d0b7c8450c5c488cea0aa08e0b0a36b8adf0885a132d *170ad2e0a20e6a5031c0525fef178813adf03a88e741016100fb458ad7a3200b93912cd9503049 *a7da9d9ded5342ad369ca33534d19157421ae4211d2b97532c69531ca4671a72f222284251fce7 *5a8a606349fb5e1b28aa35d152a4200d8a3055f44c9badf0ad5cee00c5f88af3171b764a5e79fe *8273027ff248a4e2d0661c0f6260faee6988d7f07b1126d3708ac3f3bc7cbef475717f9a6fe1d8 *e53c2f70288ebe86281b4a67173235315f9e18b415cc43647138ae26f5140b66c7092ce6379e47 *70e86389f2d5b110c8f2ab701205f1e2bd67693643d9495dde3edd5ab8b922c45ca1534512e510 *f292f379702e0ca1a5655459466bcb088a9b8f4440309de638269f2d4449788392ca4c94432468 *e882c53a2adc07cdd3ab38bc0e85b92e6dde2906c3e43ac27e22d6c416826e2ea2c90502a21c45 *417c13dce6280b26137144761aab274ce7e87002f74bf430bf3c938370264edaa4642fcdb0117e *0f66a0f316f6a421a271c2369f622b48a6a5c854a2f44a9cd4a659ae10a8057622319b306fad1f *39f48ef7688203ec19c5b27bfcdc532ba20b0d0a519dfc856797b9cc3d18099859579bc2f5d795 *9516ec96fd566c591b9ae80e7c4a8830fc4458a70cddc2052e6dbfef7ccb121fece8236e211ef2 *a5e5ff484596c5095dbfd52b215a87db7c80c3318b50bf0d355e4313adc32948e5709beb1d6eed *670f4cbb3b2acea7651c133d1132217dc7d1242864ae05d9727e5e4c0fbc8ca7d8896452b1cba4 *c2ebe8286331caa07ad22414b0e5e4cd87e1bbd1f829f654d654ef35490b85ba486f4403325bb5 *9595b95414aee54c4bca5baa72938fa96e5a8ed9322b41c09ee78207f9cd27c52b7e8c2ad40720 *99304563f94920bc0eb228c02c26b0b051cbc52bdad63925b33971fc367c166968a25b8d2544b7 *1aa769bd1913e3117896196459a0761bbf6561397cdf790bb32c7060bb0dbcd49ae8166b092979 *89c3e2eef722f08a469c8ab2928548b2032cdd6a9387fc4f27f04887589ebd4a531b14ed8385b4 *39f80fd4f6ce15656e6473747265616d0a656e646f626a0a3133362030206f626a203c3c0a2f54 *797065202f506167650a2f436f6e74656e747320313337203020520a2f5265736f757263657320 *313335203020520a2f4d65646961426f78205b302030203539352e323736203834312e38395d0a *2f506172656e7420313334203020520a3e3e20656e646f626a0a3133352030206f626a203c3c0a *2f466f6e74203c3c202f463139203720302052202f46343420323320302052202f463439203239 *20302052202f46343220313720302052203e3e0a2f50726f63536574205b202f504446202f5465 *7874205d0a3e3e20656e646f626a0a3134302030206f626a203c3c0a2f4c656e67746820313835 *382020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a *78dacd5a6d6fdb3610feee5f2174c0e2a0162b8aa25e3a6c58da396d82bc2d16300c5d8128b69c *28b525579293e6dfef4ea424c632ed60d807215044f24ed473cf1d8f2ff2e0bb418d3bb83e19a9 *61c11f0f3cc22dcff70cdfe1c4725cdf31f2d8981b7f0e68a5408d809180fa86c75c6251cf982e *07167461199f1a0d53aa988ace8770f0eed8710c6a91c00a8c70bed94f38fb3264c4a6e4d0f4b8 *350c3f8f0f4d1b0a5787813d3cba1e5f4c3e5e9f5c85a2f1e3e5f9d5c9d9f8faf06b78faee9806 *4ab7ccf188e7b800a4ea314095c1386cc039dc26dc633bf133c7218e6f43c1221e0f2a1de2a216 *fc6ff52c5020dc7751fe7df0e5ab65cca0af53b81ee07a1aa016bc8c53835212705e3139980c5a *2e85b4e9a40384825dae03403c8b139bfb2d93811190c0656831755d128052ad8376ff63712bca *f3e8f9d0e436afaa453ccdd299a827260a0fe9f0192414af4d9aa8e5132ba0860b6e6216eb0105 *0a122d05b58e42c16394b71c3c14e65d9c16cf4bd1f40629c8f3377b49f029618ebf8704efff20 *c1db43428b444f82d4a94948663ff40c24adf174b8930337202c607de0a045d2e5c081516d3760 *91821b347b11972d07788dd4d0185543e53524708f38ac1781d022e992c05d485f2dda3a1066d9 *06074d6458ade0ed5bc90908154676b2025385e3f722345a245d563c60036343ead4ace0f5dbaf *add14ac65c64a5f9182dd6b19402176ad81c2ce2f4aebcafe9d9491103f4b6d78734da22d16710 *a95353d41d3d2fb26a94c7f3662061466d07960ca2bdf4c0bccf3dbb0ff4b448f4112475909ed1 *efb7d9ec59b551b575636d62fa0c42cf314cdb850c2d42f03c9a0267fe302b6069e3b3e1344a45 *e13616f768368b67a2387b4ea365328d168b67d1506678b787e5bd545ed6bd896a9c3e26a29e2e *e3b4941dcb87d74592dec97ee079808b445320098c46685751f56c9c4ea679b2c2a73d36bc393f *fa787d79360e0f447d9ee54b51c25048b33216b5f23e924f3cdd270bd978f3c7f8f87452f5201f *4f0a718fc4ed2c29565b90e04b46872683a59ffa7ee604c308d7349560f2f7f987cb33539543b3 *b44128772c420decbc408f91d770c02c78e7a2c8b0e40f8bf56a95e56521da615abdcd16a2dc78 *a2180955a0617a2f64958fb1803e465992964279b69ea2b35126dca320e21520e1eac0dfe21d68 *94de8052870e82edc1f04888d3f84914d48809fc4ec47419a93c663943f1581c9555745a4c7802 *2575c442b10a508b49d4f8d43a97b04b2151df0ff26ec442e32229a4761d4bd853b65c258b0d8e *24c6ea7514acc5c18925e86f2e5aa4c8df162f28470689d038ce72d116ff8896ab453c12cd4de7 *9b1ee8e2b8f9eb24fc6c4ece2ec3c981d8b954ece11d3b440b2ba6a0a11e8d50acc308cb6d1811 *5df2743c4e5ce6f660fa55907493a70dfbc92068d0368b9278fe50a0957271f29494f726cebc05 *d69d66222e8438bb7d88a77236fa398f0b59ac93b0962397115817f781a316499723c609771bb0 *cdea55048459b1d4ccc52394c06cbb8c56d37abefde9a09aaea3e5ed2c7ab98ed9490ea43ecfee *4500b5483ae4d8016cec1bac0d3723b44eaec7b62eda32e048099a83514dc7be4589c302e2f561 *c9d602e992e2b9200a6aacc84a355876da657bc4a7bc0f86b548743bb95aa5bbd612eb2be8863a *b09872abf515b709b5f0dcc625be1b34674a90ae319786d52484674ab0626da74d3c4faae69238 *d751c65c0ef4f66187a320d1a6d85a07cdffa54d03a713539e9b89b6f8c72adf15278c33a0be0f *9b5d0589de68a9d3353abc3427e1f5c9c5a78968ae160e901416f1cc440e44eb2a2b9232c9d29d *8c3814e2aa1761d022d1332275348c1c85e3f3f14588dc00191bf4fc076e6c0060f5215d2a48f4 *dc481dc18dce24ea01943eec4a15247a93a48ee2ee2dae7cff5e1e7544627955ab88c61789b1ce *11715180efb524599c0481d78731d122d19324751492eae0865d1785a9a04bd062bd4c4553ba5e *deea27093b7088e5d83d604241a265a2d6d939026cdf2696df07e72a48f426499d1d53801ad590 *f58a3d49cdf62c42592f5cda22d1db2f75b6da7f7672317e39a6c1fe3dd6739f50cfed41fe5390 *e8ad973abb031a5695b64dfb60528b446f92d4511caa24e42df99ce3011af875252ae2dca4da36 *cf35097e9acd622d59cc21b6db877da182444f96d4d9ed7fdb268cf6e11c4041a23749ea7406f4 *eb0e3d6c7817e3bdf05f8b446facd4e966af938b3679edb399063e71ac3e385841a2b5b9d6e9da *7cdc6cd3f65aecbbc471fab09d5790e82d963a5d8bebdf77bcca66cf214e1f7e97d102d15b2c54 *76a625eac21b19ef43d4b648f416491dc587e29c7ddb84b4650eaa3ea3be9c868a322aabe3f062 *db67334609f5e98bcf66a13884b7ba9f41b0715a9fe7881a7e6ec1c2ad7c26491fb36fb8e7c1ca *5c9caf2f450d8f9fab8378ac545fa3aa52f56d43a7fdaa4f67dc1d2665112fe64454e461943b5c *e5c932ca9f45e5e8ea4414e6eb742a7625d59385b8dfb467380723d1243f2b61b18cbec5c56688 *c99f59059cd8f213fd86ef19ac9b5c88194b15fe0bbd3767ff656e6473747265616d0a656e646f *626a0a3133392030206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e74732031 *3430203020520a2f5265736f757263657320313338203020520a2f4d65646961426f78205b3020 *30203539352e323736203834312e38395d0a2f506172656e7420313334203020520a3e3e20656e *646f626a0a3133382030206f626a203c3c0a2f466f6e74203c3c202f4634342032332030205220 *2f463139203720302052202f46343920323920302052202f46343220313720302052203e3e0a2f *50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a313433203020 *6f626a203c3c0a2f4c656e67746820313739342020202020200a2f46696c746572202f466c6174 *654465636f64650a3e3e0a73747265616d0a78dacd585f6fdb380c7fcfa730760f7580c4b3fcdf *c3dd805c97762dbaacd7784fdb80536c2571e7d869ecb41b0ef7dd8f1425c76d926e0ff7500ca9 *288aa2288a3f925eefce60c6027ee74669d8f0cf8f43cbb7c3283422cfb76c2f883c63238cb9f1 *578f490166308f59a11b19a11b58360b8d74d5b341876d9cb722432d33ec08fd99f45e9fb1d860 *b615dbb191ccf73425d967d3b3fb5f93cbd7679ed7118c80622ea84689d3f7a3eb647cd31f3abe *6dba567fe8dbb679dd8f1d7374339e4c4f6f2eae135abc1a4dce3f8dcec734bb199f8d41e0748c *07f4c6496b2decb7dcd87bf6425ae6172f64fb96e347d25cde1fbaae6b16799f997543936a8ea3 *635ef34d9f45a628a7e9265f37035ae56546cbb4d86c3765ad5768212f1bb12979a1b4cd6e45da *74b7ac69a845d9e4e582a49aa52091b45a0dd10570b121732ddf8ba59debbc101979ea8959d653 *8731df87f7708c2008ad308ea5c3ac005d067f774e03fda03e92bebaeb7dfe6a1b1938f6127eb7 *f07be8a19463f93e286456ecfb32d07ad3de2ed468b555b21f667e6479816b0c3b96c857813bc5 *560c2bf828a163c53b63f1ae5f6cdfbead87e009bc354490e39b27c89c57d50c2e0f0ccf64c477 *80cff077d40b304610ae2fc00b3b4bf6bd10b91644a616412ffcf1966ef8dbef97d3376fce3e4d *4e938b8f93e1e9e8ea8a3cf08f1f79a391ffeeddbf6f09948f827d08c11e788e01210329c3972a *93658ea1cac26e88b26017a2b092ca2806e64c10a3d9f0b29e579b15c61f2e34152d709ad6cd86 *a21858db5a91810a68e0ad44b3acb29ab87f5f4e0f45778201fd71384d6e2e26e7d393fe90c536 *010d09dcd44af443cf1ce19f64fc613c49fabe6fb6fb0624ffb0ccd32591f29e0a6f0db1a46148 *b4383a6411610b00e7a212189dd814df3572ebbc2a694d1a898bb962d40d6fc40aa04decb4020b *be2b456af71a9c9ddf8be2479f31665a24982cc50f926af837413cae0fc90e9998e50d9821dfd0 *0ecc35df7070b5d8e0141f38cb53aef28bad9f0316c0be4d335c57b5dc4d8b7ae42452e4a52006 *826e5d085eabcd65d508ad8f37076ca263206ae17cf001576740b4a655a6976a1a41192dadc566 *0e2e19109bf22b100d452b08b4212615c31de73c55ca1ef2a220a122ff862e955c88dd8e6d14fc *e992970b9161ae40978781767918765239ad701a8a1c4b020a6049400e59520f68f6b014b49384 *04c7b0db8911bd97f36b92566794e2e1801fe90930dbcb9361bce4f7bc0d4a98a33f2d22d53d90 *2923068899da7d5b812255379a6a0150c400a1198d886ca2380d08e1426da77b1cad30909e2ce6 *be84dcdab1e45885d1229d0ad35443f5a0946adbc203cdc0f1dae3efd71e39b59f2b433e3c2e0b *5f4231ee5872ac0c69916e19421fbc222720c9061d1fbcd2373f5883d8a31a34c2f00f7c196d30 *d4cb6ad3a45b04bf13784f7b1b9221ec54f77926d466996690986fcb14734c4ddb1f550aac0927 *ea3099a58178befe5c5d4cc658445cdfd54504c96e76c039253920ba98747d99a720722855c154 *f6915d79d5d164347b524e0ef47cbcae357879ad460570f2d3628b95e6283e3de88683c0ff49d0 *05ff47d005cf075dc79263f8d42287f0f91487e0e563503ce60ac7b342f6123cd11a720c7d4aa2 *0bbea3c0fb29e828df9d5598f52326bb933c257a1f6bc0c4b23220924006c48aa784408cc1c841 *109d2819c4d3c544e34673ce2eaec6273425e429fea13e4b7e10ea8eefbecab3275d5a29846655 *34de6d651772b897d37741e6638059c41c61bfa0f6d66a37d6c0fa80713c93e80b15eaa0ab5aad *8b3ccd65098666f6fae6e3f9e48496741d0d1534ab6da936931f819855d9aee58339fa91a8479f *92a89a13bfed237cd5822875fbcd4d9b591c3bda1d34a079b74fb1b541c0af543b00e45e6f0bbc *475d11cca51760ff2159d90f4a8a7a10b4421c70a958cd44964943215fcba63970a91878e6fbe4 *c3153116a2141bd53de20ab4d1985c23739b3624a13e357051550317df562cc8fb53b1b9171dad *fb96a8230019f0312183833e4f3a11196a21ac3bb8ce69f8e2382e8901e5916449c0d15a14288e *68d9b7a67d69305eb6662ca2260ec62d5501a0a4bf602c6533edd047182015f221ec9f6d1bd999 *b248c10e882e1c61ba865364038ac72c95fe4ef0c0ec973e8bdcc8d11d3d668a8a3854e880a087 *44aa6e64ae46857c65112f21e421d94d2d38e73a4e512d2f6aa518ea6c5ef059a176e5650dbdc0 *3e0a0e740f819937b528e6039aa84620689f84666d17881315ca81fa1646d64cc9a99740ad6482 *a49f1ebbef36d5ac7b203591c9cb631a321e8b1f078ca7ded9ebbe85be905cac6994df4f9e7e48 *d453c31720b1ba1af7cda15ce5b9be6c2b709407ba9e7995d7eb01b1e658339010df39a43d693f *cc12791810ea30a01695a8697bbba7d1522ac520496146a0deb7691709fbed8cfc7f3b2894bee5 *44eea1f2ea42750d2008eceee27f08094b4a656e6473747265616d0a656e646f626a0a31343220 *30206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e747320313433203020520a *2f5265736f757263657320313431203020520a2f4d65646961426f78205b302030203539352e32 *3736203834312e38395d0a2f506172656e7420313334203020520a3e3e20656e646f626a0a3134 *312030206f626a203c3c0a2f466f6e74203c3c202f463139203720302052202f46343420323320 *302052202f46343920323920302052203e3e0a2f50726f63536574205b202f504446202f546578 *74205d0a3e3e20656e646f626a0a3134362030206f626a203c3c0a2f4c656e6774682038393020 *2020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78 *da8d96df939a3010c7dffd2b7894999292840079e4143d6e10ef8476e6a6ed03225aa7482ce2f5 *fcefcb0f41d05cbc717432e693ddcd66f79b0cfe4a50da14dfa9944a6af121d40044354c433235 *02544d3735298ba5b5f432801500258a0185a664601da8d090a2dd402d4ca8d2b4253031814e48 *31e64c2acdac022930b9c4d98362401da0dac54330f83ad1908434500617ac9b3074cd04841229 *58fd183ae92a7e977f054f033bb80e57472640080bfd7598ca1fa41254015569c75f99208c69e5 *cff2c65f640511758868e9b6b0a6400c888eaae93065e969c78e879a591fd328dfb2f4bc0443ce *126b614f648a868d59c26516960c211cbe56bf2234ccb2f0f449aa9a4fb6799c85c927e93c0bdf *e2ecd0f258e3f187c37693eee234176dfc42d510db1771e42c930dad8d9dde184018185ab57eb9 *4d57db74d310b819e81c5f4bb63a6f60cdb25d43aa42f2908779dcdd847a1bc3c8f26d91df9155 *ee26183d3690c1835cc5f1027bf13c779b7df3b02861876326437318b75911f98ed86ebf4de26e *3eb1d90c28774191d0b25cc3e42a038736c9e265426eb4b0eb6c341943fa6d42c7f6e4c99f59a3 *c5bc0d9963aaa0be79a2da2a80ef5513580b514863dbb5db7030e2117351a18fe7b675395b3ee1 *3a7ed03d023e153833db1721ab531aeeb6d1f960a2a2596ecefe9245fbc515a9549c556554b45a *c5fc0ed355d2e9245ef1c5ef51bcef4a191fdad7f55974764b227c2dcfc8c00069448208015deb *e9f38d4e37acd2816f851a5115e87da19e9439b7dcb63d7b2da5c33a4f13c7b35cb754df9eb062 *1ebb666c19769b89f2a0bee023f3a6539160558d4461d2aab1d9a309875ec53f5515a55bee3553 *5c9d3aa9f3f118cc5cd1f6caf97a7a13a7a510f3cebab4a7d7f76ef7ceeaf55663d0f1eabab7bc *913defd1bc14549750d7a72682ce8962e921cf6473788cf29b6597509f7c9ee835369f7c65349f *3d3bae7d879adc47a6b6e7bfce78c2d5811ccf75bc7b96fcd1c279eec9c6076050f6db5cf9d824 *b922cf87520bf1ccf602999061f1efc2f1a665a220bdebac863f17d8c5701fee54e69ff8f48f55 *bab16aca9e738aae357b185b3ccd6f9c1652de4d18af26cf6f9db3889e764bd65e595c7de8f16f *61728c79cfa496666c2fa8c35d18d5b22b2a90eaeabbda098f6b8d256cd37beed534e7354c0940 *a6f8317c413812ab1bc0a0b03153c6a0c16b571a41801898e3eb3fff6eecf8656e647374726561 *6d0a656e646f626a0a3134352030206f626a203c3c0a2f54797065202f506167650a2f436f6e74 *656e747320313436203020520a2f5265736f757263657320313434203020520a2f4d6564696142 *6f78205b302030203539352e323736203834312e38395d0a2f506172656e742031333420302052 *0a3e3e20656e646f626a0a3134342030206f626a203c3c0a2f466f6e74203c3c202f4634322031 *3720302052202f463139203720302052203e3e0a2f50726f63536574205b202f504446202f5465 *7874205d0a3e3e20656e646f626a0a3134392030206f626a203c3c0a2f4c656e67746820373638 *202020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a *78da95965b739a4014c7dffd143cca4c217b61b93c9a66bdb40652c0984ca70fa81b638b60014d *f3ed8be09a25aca49d4c329afd9dff9e3d7b2edbfbad40655dfe8e944401e50f712c9d00cbb614 *db203a304cdb5032a63c29df7ab002a0020da85bd8562c6cea005aca72db03a50650466744e38c *2640d761ef6a081d0502dd018e123eb594c2d5f7be81d41fe197aba1610820465827c82eb58fc8 *c4bda10f47aa47c3f39604001d3b46a7579cf947af00d111b1ab2d6f075fa936f0fd810a21ec3f *567f3fa91a22a08fc8d19572030d62dd04f529b6ac784e579cb04f1f30bc88d6c0328ae3b31167 *91a1138c2a366179c1389b6e779b382a3669c2e51d89bc4be7aa83b8b318499084bd7c84b89329 *f7cb922d7ba16a19e788c8fc48f66f476b4a98a7f5ed8265a20a91aa545405c49b826551dcc2ab *78e10a4f173fd9b2e0842911ac8953443315da7dd6082992b82adaac58cc2ef3ed3dde39fd914b *bbcaa574c7b2e2b5917426dfd09029947c54a4d9477772e62a84fda9776379fe7620a99de7b756 *8524bd8b6a992458669b5d21666be382a5e97ae77b2397034002fc4744049f7c3aa20f5d195cbb *bcdec75167342e9be62c3bf0d2fcc55e5fd2eadfab9c5bcaeec9a7e1cc775ba923f89d2fd3dd26 *597304f30fb2bc09683814eb58d66cf2522c665a7d43ebfd962545c771a5d97c51222fa2821dbf *765907d3b25510d2d7eeabcb1b4c67b4ab16de6b222c85b2b71849db464d74b70d117fd914cbe7 *ae58e7afdb457ad6305a3dbb85f22a480e2c13134a9616c1e3edb537d56e079f7d6f4ac5ce8a65 *43a1d17aadf7731123a803d3542042ba6960712eb6e6236735016ecf478cedf289001bf3311c4f *02598d10c339adfbdec539c4a12253edfe9e75eaf82ab69af3174bb9c73bea0da51b1e9f12b08e *dcac7c480c272ebde9da72e64e69109c2b50227388b24db488596bdc63891c87f9f858961da731 *711a46a4b2b9f72637f273c06a7d3ea66e87f97c3c9952d9bce03ecd27e15896ede2ba76acdca0 *51ab629af1479353e6848d65af2f4c6cdd2c3d02e2e25fc78c8071656e6473747265616d0a656e *646f626a0a3134382030206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473 *20313439203020520a2f5265736f757263657320313437203020520a2f4d65646961426f78205b *302030203539352e323736203834312e38395d0a2f506172656e7420313334203020520a3e3e20 *656e646f626a0a3134372030206f626a203c3c0a2f466f6e74203c3c202f463139203720302052 *202f46343420323320302052203e3e0a2f50726f63536574205b202f504446202f54657874205d *0a3e3e20656e646f626a0a3135302030206f626a203c3c0a2f54797065202f456e636f64696e67 *0a2f446966666572656e636573205b2030202f47616d6d612f44656c74612f54686574612f4c61 *6d6264612f58692f50692f5369676d612f557073696c6f6e2f5068692f5073692f4f6d6567612f *6172726f7775702f6172726f77646f776e2f71756f746573696e676c652f6578636c616d646f77 *6e2f7175657374696f6e646f776e2f646f746c657373692f646f746c6573736a2f67726176652f *61637574652f6361726f6e2f62726576652f6d6163726f6e2f72696e672f636564696c6c612f67 *65726d616e64626c732f61652f6f652f6f736c6173682f41452f4f452f4f736c6173682f766973 *69626c6573706163652f6578636c616d2f71756f746564626c2f6e756d6265727369676e2f646f *6c6c61722f70657263656e742f616d70657273616e642f71756f746572696768742f706172656e *6c6566742f706172656e72696768742f617374657269736b2f706c75732f636f6d6d612f687970 *68656e2f706572696f642f736c6173682f7a65726f2f6f6e652f74776f2f74687265652f666f75 *722f666976652f7369782f736576656e2f65696768742f6e696e652f636f6c6f6e2f73656d6963 *6f6c6f6e2f6c6573732f657175616c2f677265617465722f7175657374696f6e2f61742f412f42 *2f432f442f452f462f472f482f492f4a2f4b2f4c2f4d2f4e2f4f2f502f512f522f532f542f552f *562f572f582f592f5a2f627261636b65746c6566742f6261636b736c6173682f627261636b6574 *72696768742f617363696963697263756d2f756e64657273636f72652f71756f74656c6566742f *612f622f632f642f652f662f672f682f692f6a2f6b2f6c2f6d2f6e2f6f2f702f712f722f732f74 *2f752f762f772f782f792f7a2f62726163656c6566742f6261722f627261636572696768742f61 *7363696974696c64652f64696572657369732f76697369626c657370616365203132392f2e6e6f *74646566203136302f73706163652f47616d6d612f44656c74612f54686574612f4c616d626461 *2f58692f50692f5369676d612f557073696c6f6e2f5068692f507369203137312f2e6e6f746465 *66203137332f4f6d6567612f6172726f7775702f6172726f77646f776e2f71756f746573696e67 *6c652f6578636c616d646f776e2f7175657374696f6e646f776e2f646f746c657373692f646f74 *6c6573736a2f67726176652f61637574652f6361726f6e2f62726576652f6d6163726f6e2f7269 *6e672f636564696c6c612f6765726d616e64626c732f61652f6f652f6f736c6173682f41452f4f *452f4f736c6173682f76697369626c6573706163652f6469657265736973203139372f2e6e6f74 *6465665d0a3e3e20656e646f626a0a32382030206f626a203c3c0a2f4c656e6774683120323333 *320a2f4c656e677468322031353233370a2f4c656e67746833203533320a2f4c656e6774682031 *3635303420202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a7374726561 *6d0a78daedb7537c9d6fb7b01bdb681acfa4b16d34361adb33b6ed460d1bdbb6cdc66ed2d8b6dd *e89bff77adf5b6effa0ef73edabf9de4605ee31ecffd5ce3e60c3989a232bd90899d1150dcced6 *999e998199072022a7a2c2cc0460666062124620271771041a3a5bd8d98a1a3a037900ccdcdc2c *00217b47000b07809989878d05f487400e10b1b3f770b430337706508950ff93c40910b2013a5a *181bda02e40c9dcd8136a03e8c0dad01ca76c61640670f068090b53540e99f279c004a4027a0a3 *2bd08401819919606261ec0c30029a59d82230fee324656b6a07e0fcafb0898bfdff34b9021d9d *405200aa7f69520340922676b6d61e0013a02902a3bc1de86d4090cbff1b5affbb7371176b6b79 *439b7fbaffd748fd5fed863616d61eff9d616763efe20c7404c8d999001d6dff77aa3af0bfe4e4 *8026162e36ffbb55cad9d0dac258c8d6cc1a0860faaf908593b8853bd044d1c2d9d81ce0ece802 *fc5718686bf2bf1d4023f72f0346454949190d69daff9ed47f352a1a5ad83aab78d8ffbbd77fb2 *ffc5cc7f18343c8e16ee006d26d0f832831241bffff349f77fbd4cccd6d8cec4c2d60cc0c2ce01 *30747434f440002d1f10b103bc980116b626407700d01d24ccc8606be70c7a04001a131f80a99d *23c23f33caca0a6004355b1bdafc13ffaf101b80d1c1c5ce19686264fd27c80e60b475b131fa67 *e6cd6cff8439008c2676d6d6868e7f429c00467ba0a331d0d6f94f8c0bc06868038a3a198246eb *df51eeff7ed17fad92ff09b331813a307404da5a034dff8a32ff77f47f25b3807a76faa70b27ab *3f415051f6d62e4e7f02a0928ced6c6c0cff4440f5987bd89b03ffd4c2c6f12f710bbb3f866ca0 *5a9cac0d9dccff44409578021dedfe044045d8d902ffcdec207b67b73fedec206f677347e05f19 *2065533b973f23c60ed235b570fd2b03a4eb049aff7f3348d609e8fa972b68ae1981ff3110ec20 *555b8bbf45b8fea9d9daeeaf87b8ffe9c6c6e23fa31c20616ba0d39fc1e20019031d5c0cff4c3e *07c8d8ec9f9308f8479a83f59fc9033afd733afd0982c40dff387180bc85fe10c859f80f817c45 *fe104856f40f8144c5fe4d9c2041f13f04b293f8432033c93f047292fa432019e93f047291f943 *2017d93f047291fb432017f93f047251f83771815c14ff10c8e5cb1f02b928fd21908bf21f02b9 *a8fc21908bea1f02b9a8fd21908bfa1f02b968fc21908be6bf891be4a2f587402e468e86c65640 *e7ffd837a01b83d10814fecf65cccdfaefecffdc4fdcffcca093b18585b185a3b1cb9f43811ba4 *ec023a4c1c9d8ced1cff2c326e8effdec2fff94e500d7fb61a37a806a33f04aac1f8dfc4cc042a *c2e42ffc67edfd85ff6c95bf10646df617825ccdff4290a2c55f0852b3fc0b414e567f2148cafa *2f0459fd299619745833dafe85202bbbbf106465ff17feb313fe429095e35ff8cfdefd0b4156ce *7f21c8cae52f0459b9fe85202bb73fc802b272ff0b41561e7f21c8caf32ffcef19fecf99616661 *fb6739fce5c7c2fedf79ffb90e98415f31fe6b21385b589bfcd794fcdfb79cb0b09dbb173d1b80 *9e05743f70b23283f60793cf7fa6a9da5a808e092951d0c1c8c4c4c5caf2afa8b18b23e82477fe *d7f70ad0fdf93f6c6a01ba6c814077a031c2d2bc9d316fb065725348a9af58fe7419340db8b059 *73ac7c7dcf6c2762d0621cb875d1a88c03cd7a9dc6eff2344c947de87d62b7177ca7880eef2f13 *e217010eb129736ffbae06fb699eadf81ad769721e7bf6a40f4127a8ed4dbf6e4fd9c11566d6c7 *4a13340b06322f074f7215a944550e605749c07ab55d1b7ad383393835c4d3ac5543bfd651b092 *28a1a5389486b185aeb9a1257c875a9b0af2b50c856ba15db9b2eb70c1f89d0f9713ffa60ff664 *0cf32d9045386bb179ca923f348d1e976b4d47d4ec692d52170f00565fd4cd486e945ed59b5af5 *ed579bed52fbc372f7f496725b6daf07d8af976d78239a09dc8321592ad8696e27f533d8727164 *25a8131eb1e60a39342b27c8ca20c9af4c2cc562b7380982e90a6740da20ad8264ca920674cf77 *4299c920a246b4a6af3849d35d1681cda68031becd3eba8a35b1f86bd15ef953142d6fe9fe4fdf *1f09c03b84d5df30aa596fbb8fe3e0ded1a792b1e4e64fedf3fa7b776fa8724fc877d9c99f893e *f4f8528db367de130b5bf9081d5b2205af19532a271642961dc16d0dd37365ffa42139b448f5c8 *f2232b4d9060c845a972833783ef42462f9b91665ab2c52e24744478e6459bd9ac88eacd05c81c *3aea812dec94daa5ba77e072dab32df1c32189c4ed79fc50787af9e431869e4da4dd558ab78dca *c66702e822a29d36b6827a19473c47ee9bb331bdb4a923e312a3221d3bbe14383a2ee18ea1b4ed *59a2f16b75ef75875e6194f6792eb49baf0eb13fe150005f8f197dae06fa98ffc861c68853e798 *2c2ffb56d853414e1564a12bd5194e5c7e71689186b073f6b521628c94340bdb88357584ff6089 *dd497a79d913cba817fd97f49c40beb6fade74e30ba2e447c02e0be94af4cbdc2c0af6531b9342 *890737c36647cf561191737dee0b0f3f0ec4c7053231ffa132e4415d5c67e2c237bbc86e037284 *714a31996eb8e45199d88ca04253c7c450a533193d8fad100357056cbd90cbacdfd9ae5fafef20 *7c87b5dc9442eb510016ebf272ea1807d3ac9278ca79f6b4c52a740e30244e90b14c53548bad83 *bcaa49a50db4ac074ba409d25c0eac41b32611d25706f935c3379ce9059cb4db07c752656d2e55 *e7036b5b8bdde6927cfc249418fee5ad842ae30149fe2c0ce58e5be408ae88c3cb8e26d017bb00 *636d6d3f4449173a183881ef9d9b26e0fd34744a9111065c1894935d9723a2c83d6ccb4bbdd975 *3ef5a99d55db00654d42209786b76b24be17a20f11293d7dc44d91045f7fcffc8fcd152998c893 *c8f49f031392968acbb988433e4621589f5477ae096754b6bdc1fa851d2310ab4666af3c8f2659 *9039be281d9d20eb71395f779c957e2599119cfa812863b13c53d9e5bf97243f5d7e61edd4b43c *8b42a768b8e3ecb7c7b155f833769aea1a13e11eee6eed696d83c86d3598f3b4fe34be9e1d7a43 *224c6ee5e7aa55d7e7940da8bcb4fbdf3c3ba206c808e5caf581c80ba74d60f92d60045faae98a *f3d3b624b5e0fc7ebad0dfc7a836d2ca154b42a2d214efd9d7cf59cb577278a53b3df714b31b29 *7f6282c1f99666d51b1bd082dd98127160b7fffbd5b38f1b96161d26ff0e9e0bafea209d914465 *b4dfd1eb67eac470c3b4ee6d1b9845e0179a4e17eeeda8782fd4d0778ffc4759ead3279192d596 *cec7e32c4f14ef79c43ea6c8a4fac3f0a1e4e977aa774909702bfe5ca103bbc12ef7a2f38c4d5f *20f1a3ad23021e31aca6e3acad8eea0706c16dab499e0099b75a7a59fd1991cf536fbf5287463f *0aa89f2a604c3def50138a3c5042bb0cfe60b20b62b80aac9c2ec3ea5f344dc3e9c9362683a9ce *4d7c42925be576cb3a4570db8b25c1fe3e7f8eabc66d4caa03d377c5023c692c9a6aeef5c97203 *22a32706413b7ade1b553955a208cc3d1cc0596b21b14b966024baa420c20c6157afa90e6f84a4 *9f21b80749a131d5161fd2e9d5c86bf9243238d82c5e5f18b99cc3b9624d95abbe6cb79f2e1c2e *8da02eb2677dcfd44310b2fcd4a9811df4b1e13db426f1c4f8e152a9bed80fd36edeb66e80f697 *f5c20a535c4173848103462d9d1c0e3e0d58f3371402d19a2524c0129970c01d067fef3d8c60dc *d1ce6ed4c1b761a345c9b669a78297c6f3917795c6f2e84fb2e37ccedc83341dd29817f861c9e5 *dd244f60032623f9d02f1c2f8e64f18caeb6b68e7d278d9aca1bdbd57d3bafac398397afef70b6 *d90b490764e449555f5bdc48d9594c5dc9771c66b06d65a190fd5e6659bde23760ac9bde883093 *60714fbc1be0cffd75e02a667a8c21cf327664c343430bf8f085bf8503bf0cbe35220411d8456e *c30abc9832f4858cb9a8e6373068b83104be6dc3247c8b14c93ed5931fcb425fe591ed7045df81 *8bdd8533f604cf430f166a7812f74c69a7c1876c67d48de66ffef953e76354d65783b0d366a34b *2f02180805df3b1ec64e839edcdb1e4a5dd80f6262e428931791b5da50798b15a26b871ffbb7f9 *dfb583ed84e808a906e8734ffdaccc67f6058021c74288e01b8f48ce0ac01e0b2847b0eacea4ef *6cc154c67953ee6b921d88452123c4bc9881fdf43da277dccd7059d0ba6b470776befdb98086c5 *d92d85e3f9909a3b811684d9905842f7c82f4d78195089da9bb62e750acd7e8a84a99cab6432ce *e2064762dc4c5436011867452746713d9dadf065bc0239ea61d805933c2f1916192ac326a66da8 *8c23dd14c8cd4edbe9f4d2d7d0463f8882763515f38bdd36ad3fa252b309c6c507507c51a86b28 *2148391a174655191e9fc77af1cc8b6dfec57829fc5db39efe7b909d8cc31c4e2f1319a271428a *cb8c302bf7eb0956edd5db409454c7b7409b5724fabb236999cf61c5bb1059d7ad5ec908ca0582 *c85448130dc431d9ec4e77a49f158c8531f6d82e78198b2497ba49be55e762ea9b83494439e067 *09f6b3f7fca40bd64714705b2b812ad62bed0a5c6d15d1beb2a44d98720dde77fe46db3c700237 *e01875c086a1672bd992f8ce16b4e9a2e1a0607efdda737bf333915527f0835412fa54bcaaabb0 *e95403af5b3d4a6c9b4947743d78e3f6b4416d8ff2212cd13e58b17510bc3f8107e5830ff1ed58 *670bbbd3f1157fa34630c6a7a6c78b48ae008e51c459fe222826910f026c5b4d12855298d6acab *37251f1aba1f85653be8b28a9edf67acdcc203f43667d5ed1a11f89149c07ff5f3a19a757f4891 *a94eb9b27355eaa46049fc30c5eda19c11cba8ddc0fb1b9170ffd3b6758e12fee17d6c3459b2c8 *cf87fd4f8a29b6b75c7abe865e4403a8ce70631f73d869321e50507fc06b741ab393e0a8b538fa *e39558338af813af0977495dd92c484a7ddebb7b737ba7961c1b9792e7ffae191f4331f2e1822d *2e956cb2ab9459db804fd730e6189304ff9715788ad21bc50e74c1c5272365ebec636717d7ef46 *b37d27bb7b7dac0a237b7eea6ddecfd495eafc820363ea014229a9eb8b0d4e5c4afe39f52e9484 *23aa50aa4bd57b380479124ff010f38cc04739e8c67bed6fc390ae1739cb9fd6f7f1ce93d45da9 *97b9d8afe790387e062c60ed4d9692a4dc9e75480be2a4ea759414d50fdbbedb76e5a612f2f0f6 *5db0063143de1a4d94d28e6227cb4ad55f1dcc7ddd5433b5a46be56c6e4874cc65485516896195 *7174041b5928b17b4aec57b9c89b2e6c8212f85a3813783f38d9ad1e5098d6bf5e8a60ab403bae *d2ec12bcf9cdae8660815fbb0aef9914e5e1d3c853366af4c27120f153f7c89c1771702b1edfba *36761468d372647e9948a322fd357eb912afad36c5a314629c00977a500aacf9d602f7d1264c17 *83557b032cb1df559c3479b682771bae76145c658a9455b2c5eb4682262fc91a10e5354e93e375 *80512e1a46b6b09e6a3e78e7659de8e2d6d5edbbfa027e8e4c09040f8296dc379053dc1d609b74 *f4aa7c986d3fcd38d8a158bdb86e8cfd366520a5e3bdb4eb2c2922a2ccc113086f57ba754d1ce9 *8e2485b32e3f94f1a4253c418fbd3387dfd93a61a490c11e14eb1c9196a8d5b071f2fde2c2af25 *d6edcb6fd165088552026b18193d439874ca244d08882bfa77a0b343db8aa7d175f9981b1cb60b *a4fbda93d3843cfac58f9f19943d240ed20bb27c3dad66f1c59b27690805489e36c28660ef82a7 *373b63069525c81393a1a8ced3f273b5664bc0c74a0a37eaaf92cf8b90431f24c3c9c73bd2f8be *e8f287f4f0adda473126de4282851b731044fb1e0c0cd261afecd7d1d1ad9065888a910c572281 *cb74c950057aea042f60b178407d89e6b8e816515b87556c04b01f31c008dbe670eb482a5532cc *6264cb89ecb4bb348a5f7eef3d987879ebbb84645e9a6e2f5c300aed1fb50f63a5d71eefec9e41 *f4845d35c52da8e44a184cadc187d2f5171cd831303489fac96b3591182c8f432ce23f1afe50fc *24e9a0c654f4694d0f1c5f28bbacee5b805c75277fdec950d3a8b1ae11965ea859f680b94885d4 *bb30d18bfd0d98d1821406328114c3152c4a19bc2d15dfe9a210aec97a2e642c96dbc7abb89ce2 *901fa5210ceb071266aeb46394734678aa46e784a45dee0a0d88c7938211feb673e49e90915173 *99fc4a130d2703e0bd7c23abe98b695fa6429a7e3c58f4dbc731be16eba4f65da82e8439ab0625 *8f7cfac1345ec187959e8f3538362a2e83634672d42387045759d279716cb4f38978d4d2c42ec8 *017bfad6638fc05731bd054dec8d917f42da9528d1aa1adab0632f6706099540ec1612a6b1a984 *2d5938c04c9f86f55aa3a9dbcfb319e7d9b1d41a5971d9ca564e6023e183e9e7036f8e8e301a78 *0889f0df49594e48151e9226287d904d688b35b42861c9b6908973fd7a3e4222cc582a18e87afc *6b3e986e1f7069d01e7fde6fb19180b1210ca8d3b2debf66d2262eccd363c4a57f7a18bbc22adc *7ad7e163466a9568c53a70cc02db6660d413c79a24354663b2bb28b019a99877908884b0c47e35 *359f65378a65c40ca670ddced50f603579be71c1b31ac5244f6a8758451cfb282e884ad59bb3b5 *f6a9bd5c8268ba14278c9d87b2b36e76c34fc593e133e11c87909fb3ce159556c5af2553610004 *785beb0900c331f727c46f2f596aced051c2c61409495a40760a623e9a9f0bd7c06f8255dd7a6b *7d040f9c67c427d48f3aaf6713c5bc841a0a2293d62fe2e7f9b15eb6016d1db1fc4554b03e41b9 *5791d438d4a58c6e062e12f384489b668a4f94c70a9c65dcbdef39becb9dcc12a4511f88915197 *dd88ae6e5d7184d8f2ec5d2fd28ee8056d4a0912cd7bb6bd5a415f7773e2c55e699ee3142b9bab *8e60aa0e65955dae7548d166eff2071c53baf02d7726b8d6eb926325121710b20181cb3983b078 *ad87ef0e8a1143f64a79c21b72e0239829d07d779d170bdd05f4bcacecacb49c29fc24bc763eeb *45240e21a5bc7184e3a8fbc289ae21c97cf99b9ef3c792896595ba3a8bee956e76adc97aabbe3b *f1f2b5cc9ce73130bcbd27bd84fe5ee79896ccc528d705561c4be9292db5adac972ccf2aadc7cf *3a6f738b9892519654e430d09032ddb417aa689139f3ef091db540d4b85458223c7c5e46a268ef *f0c2dd6562b795fb32aa4c5602f6bebeee75696e02db67b38c02da319acb8f4c3c82aa27f3ea65 *bfccb11b74a7cd0279657ebcf10a8b8d24c0508a7beba76d1eeff1358fa3870753d28eebe17f95 *94920fa0707d1e752f4612f2a64469da652f2ad629973e10aec595174c412f6e0c581a50ca3fd7 *c64f394a5ef773ae5fd4160fd43642c465f795f609ac4afed1a206cfaa8d2f54c8f2cca83c94f6 *d9643832f8653ffeb7ed0a9c194bd3830df363d13be5da57e49f93ad7ddf35cc910e7838f13930 *af3cd959072e74e5058304d40492ede6be717d10b94cae8ce2ed245240222dce1657a8fd106d85 *b107b97ef473ceb8e9a9b1647ee5e7abd56d29724e08a53e68ef043f3e89a925815741a55e8c0d *dc6968b964c29b53979ac4e3b40c089af604e1a0542a497d8631127c9b33980d9c34e5c197e999 *ffa6224d2f287dd95bb487200e3921c24a7de3d16a90b71f48c34518b7bc0cdc5b72da77070c56 *6fb4e26058caca7a4f22811d271b4167f116ff68537be01e650cbf8b60848e70ff9d8d0a85f00d *aad98f095264f2ad3b5e9d8cf9e352136d10c30f8c82aace6fe7eb72dd7c6d8cea324f95a60d7c *b8869a8639c8f6a7fbde38d6f17d926535b34f1a089dc3ac7334dabb854397d618476c1dad1951 *92d248f51d2e6f9476148315217838e387c7fb0873bbeafc727d2f7b096ef634c7895634c80d0e *7d9f93f0af3e335aae1afe5868a673c7d2d63f495196d40961eca7eaa2b87ec9853f25b473a392 *d56a4b64cf5e11835d228997ab965fc7437378c0f608e4494eddf25376bb76033bf7ae53aeace3 *c4270d9178455fe5ba7d595ad01a4f9a6f540c75ea76a8b4ca940acc34779c0c74c8f5b61b4e4d *c04e5154cad48a6001587e9bdb0f9bab3aeb8a064fdc58d39bf6415f55c1c4f7254d0cd79c60df *a37e5a49f466ae2ab8d6401fda6cad1c7b59a8c26f91030e9dd0ee906e8bdd211dcda3efcf91c5 *93c98783710663657d5add3292629ae38d778686917099990a80349d79b3e340d67a07f7f65e70 *ba64e22b781c79856b251212139f9c1c77830b0efdcd2fbfcce013ec3cf703a53bc93afbf3adbd *6f7c06a95bfa90fa8ae251dba8ff66254b7af96659fb840e81e621d29d9ef1a382d433d9dce393 *f234959a7f10b8a6536538490f674280f43dfcdb61a1b8556b60ae9a680fe2d974143bb1295eb9 *cdee2b2576bc961377d60c3eac10a00e6b78bf7d8dcdfa50de5e3aeaf644da69a0e2710b66ce28 *b43bb0a0473662fa7bab095fef17129569e94212811e2b06ab081525e1e81be511da8f5ff532bc *b6bb0f69d522720a9a00c707be39f3b0aa079176b744e490f921018918aeb847eed04554396c91 *432374025df628977085214d8d4e9694da2750ccaf2e7229a68119e9811f552939abd8bd6c4e6c *f66a7d74433676f8d264e347f75671dc8e096716d15edce8c2541ba0b5f095106b2e20d20958de *df72613a0fce5fbda1dfba4a02fbdeb85305f2dabd5bd72ee17b4284eb6b6928951eef3b5f5f1f *795143247fc093458c50ca06f29d26e5b85a6b487ebb4881cbe49e7a915c5174ed20bc4be9573c *b06539ee23a2313e63945dea9e95fee4842f334931ab08c93d29325ef89c3d3389ff10b5ad9167 *2f05aef11d2f98a92d9bf398b78a295c4b7db12b82ff98bf74478fe7390b08877d48fc5d49d8af *5386b2719858c12665dccb97ea3bf3ebb1c63e757f01d680b1b645f31953277b101dd266bee26f *73bbb85ebcfe0bcefb2fef86ed9970bec2c5a7e575b0fcf14890db30950368490490c652c1b3fe *e71c50c66a892b5e644823f328ccfbc1217e3543d5ba127e497d729c1ef6a5352238fe97c7abc4 *531f48c5cedbe95213aca9160fb5be4e02c1c2cfd6e9d0fbc8eadb0735d867f9c957d723b3a6b8 *5e3466a41c4f1c744c6d5553f6efcf84cddb2bb25317c85bf503ea4b05d6abf2eb05fa20b44744 *0f68d7bb1a59720829984c3004b0b18e93dd77e42a2990049e0351d2bde8c0f49b9a5044dde9da *d3caa617e569fc5a5b7320eb8efabb8054ca5eb1d985b1d755de395c8371f47309aa4356bf5911 *e7fcf15b65a82c9e6ec109871067894f7363b845278f928f9682857513fba2a6e9a35190cf9089 *aba174acf21443a2fd9dc0fdc104ce4d171d3eeebbad50b5de495fa0ebf75e75ee46f5d356d63d *20408363ececa71d5ecbc7cef40030f1c7ecf9650e0c1bbf73ba5be6a9691377d9619a3e488ae6 *d775523f7548f23ec57fe4eab4278e39b282fd92df7724c06277250de975664d2fbc240003477f *91a2c7adea938660e0a35b68bf193c098e2f98d4c4c8c1caa6d0b87ea325796bde835b5a12d0c3 *719958f0c5f2892af62b8937b99a917fc4091a223d3f5412f5601837dd70116d87734218bebec9 *03b125156ac82a5564e017044d4aaf8e8f2e1f3c44a35f573ec4f0ce734bec8f9827afbdab15a1 *387bdea56d21a55a309f496caa79a2d69e64d0f8c130408db9e0c8432fa91312fc6678cec3dce2 *2be6cfbe1a1737dc9497c3309b8af660b4ecb3bfe4e36a5e7b8e53bdf2c65cf57d3e9b132acb5e *34bd2151688e198a7a352f680988135dca8b5cb6df080eaf314c3263282be2565e950a7dc3ef21 *9ffa115916359386bb5903fb94f9f86bceee52b290474b0a97dc92fbe35946685140ad39060a70 *5bbe8dc9e0a4397b5bae7b541351a298a5b144c19c9b4167c20fa13a62d7f61ba357ba51668acc *1604f52474c4c95da191bec0f20be7820e9c571b99c244e1e0a81cc431b1a0c96cf2a3c27645d6 *c2e2256fa3559d6ef5c17edc2aa39f700badc759093a716bb850375a6374357dc8db6820b79bb4 *e57635e963011a3f5219e919fa3ef77178e6f047b39e9d7e46bb13654e64986a6a976036b46174 *051d34f53941d898c6a43d477b9a8f4344f06b065ef3e3637447b3c3f29946d607d8fe3a30c900 *e9809506bee956a58ea5e365e24394ad6d19029698cdd0a037d3e1dc7bece3c7a9b2352d750bbd *b9ee305303be9786b36bc61ab449e1efeee31398f5199ed798fa5beb6f3f096628f57e0d105671 *21df8c2d7aaa429493f007d8dd57de76be285f7dc32ff51e37d7466f17f2bb6815fafcb2edc42d *5521c04048ded5b43fb3b7c82c2ace12340216bb854685dad707584ef45570568bacccc5dea42d *50c1e9c9f82173fee55a8c467106413b4a998e4a407cbfba3d3feaf4c430c8d4e9c1f61be005e5 *53e461c2b15ef1d074251b63681061670d764875225d3e655211a515cd1b8b050245cdbc048f7e *3b8ddf9ac4896c4dd5d4f68906ba78bed767810d14e5be270b31e45f328d6c353f1f3f10d4d528 *74ea37c5bd77df5795982a2c3eb8e6fda02a663a103b78fc65143e3ca63051ed29ccf9016ad733 *c7a91900eeb4350dabe59ee8ec2da9686a31f01c9d7756815f48d14dc3413d24e67d7a6a130391 *d487e6d550aec79558b71c8948ff53dec5b68a7b1c4b12e187ef230b452c6bf860158f10fc08bb *db93d770981b1fd95a58a8592d41121540ba50f75d9c67cb8363bf630dfb892f20ba76239bc2a4 *b603a6eb624e3a8e4d723f7db52329dd55b9c57c4e26209cad66db8ebdedb326ce0cec760fa9e9 *e377c33e3523c319a80dafdddd57a6c7bd3885c1444b887ba102f7d5472488bc06dabc7c8a1900 *85d3a09a84848ac1696a6a9a5a24be2c7916afe78766213085eb58bcdbab906946d19ac1d93b1e *3bfd06186b4cef90d08a35960718aa606e4273c37768917cb74b2b85af52a8f096044698649e76 *483eaf7ab7090863d846dffd864ef55f6a3cb9f9baedfa0812ba9dc4785dca2bb3bb563fc8b7e5 *a2a3458e525de3f680f14946a8b4a7d35e7e0dc655f6d7586fb3261dc36976b7669bbdb368a0b7 *079e31a569ed3ffe526f056a75744b37b559e59e2456ef4c88d57b8d564638a85163d167a2734d *b0624d31b8f974782018afe13b4a085df3caf172f7cd764d43f0ce7ceecdc248b7be73c6b31c9f *ef6146be2b345818a528b7bcc6c044739ac8a17343a0d4f7595f1ca03763c2ad90965380b44b78 *2ec392cce972d2a1cbc5e545e44cac6f28b7e0d34e3e47de1c85ae0cb7925820d8c7844768a8b9 *fbfd5e21597cc7d02751d1335e8b9079a964837b205c8835feea70e6db37b468f8311529de3958 *935a7006ffb90d72c05bf3a33a43d5424c3402770e8f7724de2453b9077153bf5b41b302c9ca29 *e1e13d7aedb0d4650e717cffd6829d1ec2b5b22b595f9ef1f9074eb6071cf04d5db7dea64a5298 *4077edf53063270d6a385331ea91e900536f2795726735b09d22b47b47e56a1fc2e73b084d195a *455c5198476672a2376c6b185eb16fbf6e197c72a8583f4d8141778970da9cfecc877950329c27 *8bb039bbbbb37c1d9e1042dc24e1936d8f875ae3e0473628a7a537d18a58fedd931aec245adc83 *36f1611f8363a5ff7ee958a1598d077ce7211543b0dcc3cd22139d6d374d0f36cd62f188da1286 *9189f10393491e76b02e32b005fb0d2cf02b5df9a6243a60aa8cd7dc8be57c34c6689cc587d06b *dae12941aba55539edf070a018e7b53061fded2b7a7b5b25dc42de67c782ddd39c9be39872d730 *36ee8a06474f8e0dc77575d18fb57c5535a947cfe2366752e9d1e0090cf4768e904aa41db1fbed *5bb6bf9ee9bb5e4c2638f1ecf69217106c8d7197afab6361643cc910acd0a5b883f77983d7f835 *1bc8f88f3ea0ce00bd49b42a9b8244e62bf329a20113d422e067dee2579cab8ab54a790edfbaa3 *bb35fc8d6c3347097f77e3dd074647699562232e3fd91353c584c845c61db966a51f029bd6eb3c *acad057f1bf02478658b7820a4408773d4a325a13542d4f5b1a0b8307f53d6c59573954518ca27 *6d5c4316033c1970c446b6fb076214d7f94e629911b9396a470fe20e463702dd8d674d59e06630 *3f3e3c0969c7d71ed03607193260fa7e35d1e9cf6571d70c080d1823bc55ad947971db4d8b7d8c *c7c9d63d7d724d650adc97313e8366058b3870c116e32fadf1acbbbaac9d0cb0b525949f5e2810 *7bd0c70072bd05a71f958e5a5d93acddf12e1c1528e22ce116587d0f25244cb1e73325bdc54bf5 *9a547013b3fc24146dd5dcf3f43bd1ef304234b3f3d302e64dc633bdb4715a6b02fcaacdb2319e *f2548cbea183e626efd87086790469323af52b7674c44f64ee4a7e06cb08f1f43acf9627eaba08 *36cdef31edd33ff8e40e1988083ba25692dd605e6474b0e09cd5968ca581dd48c973fd89f1ec48 *af81a6ac4e72e949878acf733737b8e56d86dc6e648733f8586f6a4d1cbe93ed87f43e4893048c *ed7b01defc0653f1a3674f61a62c753ef97ede7890c271841f10f7008533889f3153984838f468 *8b3c284d6b5488598c4af8e44378127e1f916caa9ff8521376b926c8783f5c2e70700468587dd6 *3b5bf468578c29de05f085a988427829665a6c8d5eb515f6e671a766e12279c5cd629705d485bf *85edf5f323921397e3b43ffc4a73785036195c3dada0232d5f9cc1ae9e631fb95832cac68928d6 *436765bcafd192c1b660b215e4f870cebec81a036c32206467af1bbcf0ad18227ac890df2e312a *5665dec5fc683a1f64e762510b4c7352601f8a59f6e3bfe0e6768c9d5229cba010f0bc70324b31 *a37b75a4c070b0e0e2c643536ea61caaed2a5d86aad496e867f08a507e8ab8f1b8611744fdc535 *83dd885394593baa4fd96836f74514d7331815712ad4f291654ad0088188a12e64573da1e2fa03 *0c63d80284fd6f51e5aa2fd022cf0c46a32dd2bc0bdb7761f880c6ee83dfbd18fab05ac1b0c8c6 *991b54c5024e1231337eaf1b3d64563c55b1583c650eeb03bb9f070dbe3ab38c366f6dae13db8e *15f8a140496e1315c55188c8edb9ae91a65a65883be06bc3b67e6a4c53cbcf26e5b6a2ddff8645 *c5fb23f8e1d47504b9d7ebcef390a15c7b60e62623cecefc832769a04c67d5d55770d2cfd0bbfb *fc11ec7e5f272a1888fdf262067507f5afc0348b34eea5618e0294e6fcb9b4e9cb622d57b93e93 *e9789661f424e84763754e2717b4e9d3eeddf7dacb92dbadbbad9b3abc90d7a880199e00eccc9a *8794766126c3002a5ff37c8d0c0d77decfc1953b8a6d1524e449d5d7279ebf27b438bf50ccaab8 *7b1eccb1860f79be3ea0ffd675517a139c2a6d5e1e5293754ec5bc85800cdf1dba5d55d81258d4 *1abef381725b50eac221ad61d86e942559f64cb6adfefe0d8b9e0141356ef54a14d0d6d943b969 *bd3309e1c4d1070b59a23333135b49d83f2b91a3bfb7d31e1a96eedcbc394e8ea751f7945a7729 *9f2b703338893effbe2ee140bb3f2c4a75b0a447b18e3f8845e51af2cd82bae4d11fc382876ddb *19eee3ba60b158f4fe0748130f2dfe9b49f1fcb6b3c61dc3da6ec9d59ed656287d60c1d13cfe8a *b2df82652301f73806ff0abcb242131f51e1a376ee064a9f930d4456fb6f9f782d404d6810c3be *89cb0bcdfd111787a0a07db8d4cbf8b46ca36d04985100cc15bd8f15f374540494b77616f7edf0 *55f15104cc2fcb29cfaeb88b3016c681613663b444c10cc3d172ab88dbfe70511f4b380cfd2c98 *63a6f91a9f665b26350a0d428bef593935b668e2cece9e22a69cd3d86c25fe0729ed40beb4a3c3 *4ec3ecdfa1faeb3192910b29ab2b48c6caf4c878dec3a6274cbf371d1af820ce75c071a3034637 *2ecdcdb9fb7e299c05aae7756585b1e487386c9a75d148cd76e8a0b8c76fd140b12b633f238a9f *40f23f47a211ad053b7f37f640620a377d73bd77cf2619db08caf31f9c7ffbb6629ac5c8e4a127 *3e78b698f4603472b32fd1fe6597c7aba154ea8e5035b54fb7c5f141d7f1a83dd7d0ea380bc2c0 *e29282cafc77d98706b957703bffa275d182a274ada2f24828b2be78da960f1b0a7ece585adb39 *e327cd841b867580b04fbbf43c27a6022c30d76ca84e168326cac968a87b98af6d1291ba7b2339 *41e9ba3322b0e44aa9dc0d58e16d712e6946467a9f5b1982a4b39ef9ccc1345cc15133cabe959f *afc03415aa901864283a1191b173e0b5dcf13ee0877e8d7bdcec3ced3771b249a2240e73acaaec *fab69b6715202689ea5b50dd967c2c7e7fb153480370c09b4af0bd796cf457441e49304fa66d52 *df7314fbf502fe68aa139fc9a57d1a47812b40d8288fe60ec588081f7c88512041d15f6f719eb1 *f739a800a723a25db1e8baf6eb4e4b47a772b1264700a50793d6d72c650e9c3d5cfaa21fcae8e1 *13ea2b5fada8fdfdb87895913749c2291e8adecb3e137299c4132fb3c92c8713b1b0670d9839a5 *934ff6160c7fc826c7db104b2051957ab8265f23065c51649cbc848d154fdd3693c8f0f4a2bfa5 *7fc10b850c4021258359b4134a35c7360c312caf1bcc36e569754bae0f586803775c8210dfab71 *35a5592e98e988c9edcc43c57c1ad3b2175733ab673ca721de5b69e916aa2c689e4d469ec47554 *0ca72e878d66e7c65f5cecf9cd389233c8ed94f3c9d625f0d705cb2c09ef29f40642b72bacd9b8 *22a009fe9054a7725f3af1e7c1344b10ff12c2f861e32e02bffafcdc65bd298e897c50a55533f2 *e5eac29210a29f84aba0df9e32174cee3a779791508f17edc9a431d2832a227662c0b9f2ee083d *f69b458b26e1723c2be7c343787dfbea8092155a7b62962ba936b90535836a2ba228b0409cac4c *ac80c5f7131059362d81282a246f1e772237e9bc181a5cc7b68415990fea3afe0bb5ea4da4907d *2fbd7d866a5e109d463c12e652bd5ff3afe19ad7d1c636d8f7ee097ffd22b8cc9e4cba93ab55be *70d9d7f891f411b13ed5b81f5f936068a74862a8d6d3e5b7453f322ee320c016174dbdafc5d4c4 *782e7eb537dd0bbc8dd4b4e3e3e5b9774cf8d9afa3a7674deb75ef1db1ebe811a41956d68af8ce *b5cd76422cb5ef08f6e05580f48626ce7f2b78a15f2b88e7ddb58cf821a665c37d287e526516be *f23b46ee8946d0c03bce98b153ecccca3ceca51ed4a4c12c09011e0b931ce1a5ebc5f1394f1bec *8afb52afa0c6b336ff23def795b3d6631dd51d172ad50a0cf23c365dde2cce5b9840c73201711d *e79fa4ee54266f832e8ac650d55b270f99f08e454abf947ec7d83f0db6eb7b291129cb100d8d4b *f11fcee93082c1d601e48834b9047f7241e3aeca5ba43f5447052c137f4349a2b8f2663402c7f9 *8492fed05f1823fc380ee910b8c0efb3189c238fc435d2dc021d4ef9cdb56f5863c4494be343ce *6431237c16645822361ad4d66a6447cb1cefb269544c8af6eddba86d8838147d57d55525d0a309 *b5a294d9e56619eaf3251ba4ad1111811f73be6bbdab3695b6af6c095fcb381a16301200b5e0b6 *4d0f775b0f9bb3cfdffea98e90460a0dbf79b262a601c1dc6661d04ea143dbd098eca6e03614a6 *5f57e50d4cadb1ff40f25de45c6856cc38c45768f1033418060d0976b93a0937ce5d6dd7fbb232 *e13907cf3ea12422f4c3f5ede7962f4d934640c6df08a81315c5bdcfa99245dc66f5bb5b30c533 *b892a23be6468245842c4e243d09992689af9c22fc01ea1c2aec2fcc406e332c58331b363f77a1 *d19b2c665db0babbd02893e9ceefc80242915d5d02770e3e8ad9083348b4e98f0d018f0b67b5e5 *379a4aaa2b57cb11bb6f0d17602f85fb01153afe0f440bb093da36c88bf5fe88a1500c04b93fde *f0fa0d9f250e4aaa35ddd6d73b6989abd4dd218547179a00eaf64d3fe52345423728a16d0478e6 *513703f08833e97d9e6d08954663a2ad053662dcab4268ae1654c5777b06c9c6d57363e671cda7 *9c198f65c486342694dd9779589220a93a3f7b0c51a1e2560836d9902d477e67aff29d6c53f683 *2fd5b87b35eedfc9e9cf167d1c43088ca2f1d99692c28c74846197b33a9c684d2f5c1844aa0ba9 *a286302791eec9f9f1e0d2f17d4d9922176c4a52f8ac07e1f493f5eaeee3a3e8d7a4e6bdf431bd *f7319fc8d820bfc2360bc4ec865fd7329b177a87260e4e091e0250da79acc5b5e2d5a739a6626e *1e7aa3533087e85b39589e5cf9add4424296cfb80dc3344edff14aed6ba2cc0322eaae34f7284f *bc259b6445cae8e7d6902bb12bc10d4d7d28795f35db3017aa17e06ff94bb7f6ea1bc7df7ceb63 *e0d6d620c691f28a90ce6aece7a45f63a22f10c55182d2a8a14ad63f4c3addb3f0b5a501d78636 *2e6df5676a9c8b98e9c11f1754e25a7c57962fc55e01f1551e48741b740b663ee2dcbb180134be *89a4b2dc89c6d8e1abcfcac6c30c3ec4a68b2c64c5380cfac8ed61947a2526541bc8a43cbf6033 *323ff14d7907cdfe0a3b8e46c653475b819c4694a0defb08c9425f3b2835d3f36a2330316ff378 *815a8248d02f71d2f6fea63d6a6474ad345ac0b8121be44c6ea2a76eeca9b0b7aeb3212cf87517 *9d236fc5f622fb361c3824009bfb5b3603b9255a7f2d49405529323c640b12699ee18a977f428a *030e35f66c66aabd2f61df7473214a34324708f3e27aa9df6ce9c0d05ad82ebeb72c929f79c68a *11abbff64c981bc5905732e027e743066cee61a8422b71a4a01aaed86b38e4afaed4ab408cc395 *c42e61c09ebbebb2a0aee2a70f06f4483f6b318847982ebf8d8eccefb5563e22f211e492a8ab5d *118dfbd0e72ff94e277c47e21a97365fe86e7ad00b66ce0f46d6101b0d55ba92ae8eba2b41988a *b6e70f3b1bdbfed20bc1d55e56fa69550a4ceac0a662827116f043caefc9578026ab3f43af2d91 *18e518e65728e5f8a9d8c6a18da91bb9988c3d6a324c6d91123e794e23a44c93fcabace74fa2a0 *6b99873303b7f0dc2a7f8d80dddf852586c80db4436cc401f37c0708be9c0e2a529d5f11644b78 *90506af379a867038d51b38d464b232eabaa0450c510bfeb919550c3160973d83ea48cc328dc7b *ce76f0f3dd747e32c18bbb5e813747ec9ad1b00cb378f1c7c694027fb83597b177da9d2f30bdc4 *7c30c5ed322c68bdb7ba323bf67b589d5a593bb239886eefe92f581e598fb28f75bfed657bc1ef *5666d6743b93cd101a978680b0956513010a72d771f973e37d02e040725ea34f0479087ddccbc1 *fa4ef7bc28491f766704d0e43ff09ec418e42023ae52d08ebb38b9b83ae618c102b6631764ed00 *c8beb418754df804a4a93d2cecdaa5e02fd95dbd908726f0c7ded63c340c9ec9b8ce4323820f7c *e90376fc5e27a277cc79958d3852cdf0a3fce49a4ec4a2b2c3eb46ce8247a4fe536a291f9e68c0 *41c87fcdbc25d36bbbeaad7234f12b4cc645a67ec797fb468a4d940fd18e77e369f66c993bc8e2 *03c84ccae624054b6192918e6569d1a14a1bfad3152b3fdcf23debb190c3cf35208be1422c0c5d *67c67c484d44420cc471a41fe6c8f3a2bee2ed68f7d3300e9d4bb85d4c6f0151bdc62e32afca4d *42114789b087e6bd0407285bcc3e41cb59135d955894becc91c9214e0a05b6bd1bb40dad22b443 *fd20f8ee4c8065e4a3d5654106396824635d24267a045d4b6013b3404c05ad2753a653a799f416 *7607e1cc28bc4508e76788ee97cc04649462a5ce13e34f845b0f955ba2ddfda86fe9f594a5c6d0 *84b501cea51d727fed70a3fa4e74a6153cc7266a1b24a3c2fe2b6815504c7d4870927456b5c7cf *2082bf040d65e340c2dace74c35fcd3848bbc283835f11cd4aed0dc78174ad0a8dbc3c17356243 *85709e9d6e3ab3e86f4b37cb180127a27084effca542533277b97a662672942c20781b1915ec38 *9bce54c05b7e9431edfebcd08e8ae686be3309f9f3af2968fd1b7e1d72033a7a83cf9dd55d3fbf *1b02c4153e3293dd46b1b5abe4589a91ad76aed02d60a7c6432c836ee4863d67fac5699c7da87e *7419c246ea12a17bd60fa8538728a5f58db409083df75f9715b346658411526d83c3e205ca1cf1 *d5c8149b544520c408d2e60b2d835bf42a3e5eb2b3c36704196b668a248bc9e3f694d3b0651de4 *8f080177925a2f5aedcd98f5fb5d19691b2e165e8cf5dfa1e395a2623d2c0a556dd8bedb6b1600 *c9f745b5c208de65b43d50a6ccc1cc9379244ecca572945aaf626ab8a1e13f1f2ba47fc96fcd49 *bd6196504b3b2217213d93281a32a4133f06f821a08eb9eb1156353ab4a78ef8505be7ae73718d *56c294c63c6219a89d81cb637d4456d4c6a9ae62bf0b49eab58914bf6289bd320073c93796ccc8 *34b66e58f15b9d92dad236271febdf94a6b7cae5a0cac48da6fb4ae8219d26102de6161b42bf9a *d5f393fe0edc3537e126c31b73384071660d03ee26a43dbfe605cfed4912f78ade7d6e208e3b77 *1d95fe99c7efadff850bc659158cdbbcd0cfa9de1a9b2218fc415b27985ffc34d1b2c8ad640556 *db704f62fd8796318684058b5ca7496fed6ca85b57fc3de2ed12ddd7b1c8ac99e162df7304f9ee *9b02854f4ed0a7ea7b28cc80a99a8d28759ea4e2cf5b1408143f70a4172da6184e486d2702e824 *91c514e97864b61b2ed2a22b7c5a382e874592d1ccee639b94978648818aa63f31cb9ea19e57b5 *2737dfcdf2233fc2257005ee4e1a1425a57277bd7de849d79c546ca4fed165ecc6112910e89b20 *b46455ebdc56f1ed4b88c34e69abae020e699e9dc2bb245be459c5b8c2528c03960fa22b220b2c *746f2f5f0af6f664e0c0d3fc14d43031fe5836466ed85360704a1f607003876b34fb93958d25f8 *8244bbcd0de94d14b241dea62fe2d5b62689aca0c06531c0b9cff00cbe46b73e4e178ebdae5da9 *e9740cea00a3a97b2b67d999736db1bf47a7409b5027d7b7347dd284cad758ab3c86b688fb3a52 *69020eac832d3c767a2788161232cf717e2433c24074009e4798dec43ce5e26b6593848a0cdd0e *7fe3aaa9830bcc786c450dc15d18d31caaec43dbe8ef4fe80119828aa54f18528364e75bbe772e *74960f3e565f2921039eb4843599c48ae2d9e65731fcb964377216e1a292591957607218748f9e *8cf0850623c0b93bf421df8309a3e37fcfacc2ed8bddba424ae1f67db4e00e275358a97e6d7881 *e258ce1419ce9bd3795cab39a8d8c8549319dbf1773a90030e97a3842f3abaccfb5f3ef77165e2 *95e72649c853b4cbe460531633a8ca529fcdbe79e174dd94935e0ff55c1465d847724c2c93fd88 *08d66bcb4a1330506a94fd184529728115dab481626b4463e1d5153767e4537f43a3de5391c211 *b3c73b9d229a4f5193344d9cafe2572d8a2cbae9718af24223490b0d4d4bafbeecd1d282bebf96 *89227ec875f59991e554bf9672c30d4deaa1397dcaa8575eb0617ea17dc53f59c9717f7d132d45 *fd8e507d07aa596eb72af5f465ba00457d600f2368f1da9efa03f0dc411a98b4d2aef4f57555c6 *98aacd4c2c35baea16e5006790e72242f3d0279a67f803be29d7b32ebcf1a3876a6842f6ab9dc6 *c0eb4767fc7c495ebfd917e6abb09aa4b701d3b64fe57df5321eabd4dcf02387dc3c2379b6402e *334a35c1edf39b4de9361b3605fa1bcd2a87481f94c689c2727ef841ba54c4b94e5f2741e28827 *81e97716d2052182d64a3e9ea3b31cb99fd53378e2ca5596e128d6b01f60af4ca3658c9c908b74 *1f23f98c5fdd3ffc60a498c10b55a20324b77fd7fd3ed69450fce01b77f3bb560e418a35782396 *7e6feef6ad5c5f7b43cdddbde29b42caf35bcc4f1bd8c26852f4168fa05fc83afb6c6900bfabc4 *e6cbf438d9a6f9b05ac84280b17f292ce6ecb0e34524840d0313edb1046fb9bdee5e943f8d449f *54c6e7733b0077b4261e97fbafd2f56cdb9e6425c2150b31c8b2989df629b2c267fef9f12b322f *dd6432c548e3fc2dd875b54b7fba9a20eef4179ecc220617976d8d328dacafe5efa49438ac9ac9 *14087e6a49babbebaa1fbfb6451096e92457b09dae70bc75f1075315987f74787b18bb6e5c7d73 *76519c496ac0c542e23ee1599ad73614b7d7fdf1768989cd4ac583869cd951b5128136badbcf8c *69b7f4397cc1e4f32752035e7ba95f3f51935f55a6f9039a6bd9a899a0ba5b94e690f706074aa8 *6f5e24557f486fb15dc427abb604dad762a1019d84f441fffc27de3f2388a7d442274967734a5f *a227d39bb56fd64fb44f2fc545a02053283b5a1ba30e17f17b6b1fd224e9ad1221a80329c238f5 *8ba08ccf2e48e9a56d1cad5ca3a27380c15d3e9feedf84a7be0add7654e1830ff103c1005e2438 *808d94667a70eb01ccf738f8c60cb9ae2f70a35b49a1bde6341c37692595f003e53e16b90235dd *8c8a05b0a615b8f8687adbdf2e4bdc8d7eb8edfa2e1765a7367b08eabba24b7d0e8e569c8406d3 *96a78b43e36f6ef39af470d11321eb9966d2db86a4961d26fb72c1e98f66a8366e6d35ed9834ea *f5dd2b243b2259752acee99a9ee96496c433c5d096ef2b7945c4448d5f3cba6a442317b4191b7a *907948296e7beb07219bde3e188207d188f5252b6ad657f23ed84e4ee986c40d3505725561e7fc *198c8c877d3546b59d854f322106851c1be2a21f3be17656bcfbf24a5a10908ec35da0cf8ccd0a *0c78ad910e50bcf525e9ac04a7d622034d373ff5934812ac4c0b897fc7adaebe474fbeca9bafe5 *892db6bc7a26072c39ad1014f2b6a397a0631b68654dd694198c2533e8f7f5335f159e30e9c20f *370cce4d12717b1fbc6596e05eb1e0d2d2c6fda462b9e758d07de109c4e25ddf72369ce3a8e527 *9958a5d66bc2a95e549c8b577370ac04f30ae629966b4e864f6bf8dc8fb86768482b0653b26d43 *20ab15f56b9e362ac78df4772c8fe51a4e1604162c315e491e1a299580937f352285daf23db5e2 *e189b7b9ed6a5bd39ef5971428c21389aa6f130d3f9099a3e82e5da53e261c8db4e70c2eadca68 *1ab1235c6867f65e3c23a5c7a85118ccbbddb8d651c6864f532bcc79e9cd85f7ce44da66430c93 *604a9362b26d35544f18c62c5a55b5338f53bd3b13b9eb96269a57c4a6c3e3af1dabcdef34eb8b *c0ee9486f776597f57b1befb786ef59b935dfba658a9cf125ce155b235c61b1fbd89bc40c0cc67 *5ae643636de3bd6999d9c93c84067f00b47be5e3f3a4690637e6dadb18a389b3deebc332e636be *a89023d3b1840f03a618c3e6a6e47b07afa0008bb9872407de3e2f234f1f3717a74506bbad0652 *aa12ce4c47e5ebf84e11a555c85ad1064c980c36ab058b0f9be1a614aff5f2001a83111414a712 *7d9b6e5353413de2613551daaf6589328fda0aa518d18fb29f5b5f183e331a3016795c746773ca *9cc3ecb3d2a27f4afdf92d8cb40f9f9730bf448619829f5b3192182979aa462965df67c3f6306e *dbd06c20d7fecbe0f22937d9c1d10bd84820f9f806f8e2574721d2b1574c95c28c3ef60bdf143f *636613362280739d69f8a0875f8061742f679be71e44ac34092e60e137098f1de221bdd4c327d7 *58219ed980bb99fc76b369cafe60d5db68079fb1ade9334e7ea32dff6e842dab3803bd76d7e864 *32ba9295149a9ebed55719bdc3c4cee138048c6b28ee041bbe62047db322dac0ae3ee57702f3da *95f4c3d0ef7cf80afefc671dc26318700c8b44dfefd5675142940eac6de26b8770ad9abd913bfb *565b0f9d841db17d656669d57fcf90ba6f20a62c7b8e6fab51dc2a1f1673f93ee837e3758d4dc2 *efcfea78afce299e5ac09604d19b33b75c59db3da8ef38f1f0434440a935c99a5bb25fbccd748d *94e62e09a438ebce43da2da994f5478f0f48a0ee9a8f4b9f9fdad80221ddf7d470632f3843d3bf *f814ce29362e7793d8505224e0af1c50d925deac883b7515620e57c59475ba57dc975b7c640aa1 *3c27e5e99e4084ee0d602be78cc871c15820f27c0a1d21af8436b7328f3bfeeaf48ab9ed01ffd1 *dcebd7321f46e9e68de098655e97006b72abfd2124d71e6b0caa016f480163611195cefaa55356 *576d2ba64048dbb9e95685e423efe9afdf74f95773e7d139f405dfbfc4e1e2250aee47627247d3 *fb7b9861f5f86d5957e1e00db6c3d9231440d45833238f6423c09a66a8375293333d475d035762 *d3425aa65dc5bf49d749e7a79c0b5fa73710799ac0053dcd4310cb0e1d49992157e47f127ce934 *b92fdbde68f722b2b896b646880a81c3a785a74456c3071cff9aaffd85e8c7ca8370557784bd6c *06df869d1520a609fb0532b6ca3b144181ab23ea679c94eab7a450ce1a379f818524795ec5dbc9 *fb0b919b6f479778e64da86dfd5d9b59b8dee42afd983590675111f0da6763d478e3a8f5553d64 *0b1e6d9916affca8ba68fa899bc760bd92fc038c349c9dd3d9c442564f1918a9eed205361c5f94 *439fe7090828f39af674ace06c43eba9493a9d85ae50a4d6d016161902aae6de64b57ab20dbdd2 *cf1794d067df16559684a457d32d7394528cd7625f25f31fe9af1e06d9167928f06a63c83db9d2 *8e34569db0c989cc20926a6eb1cb537fbe375af61eece37721cf140eae366fdb277a55b8047797 *166d133c530ba27e1908489d391141e39ce9976b22566db01284943dc070a56ace5749cb1b25be *8a5aa89aea3ff7e239e59fce3db97ed814ebb8727b3fb56469e994387b223bdbfbbda9f0fb2856 *4198ba6c433b5052c74801d109b75662b42eb5e8c57707622545b762af5630a6e4801d2a698fb4 *6596ca4228e22db5eedcfe8e6e6a9f4b2841458436296c9f99920a66f475889691da219e989fa5 *eaa02539ebc9628b74aa69a10a895996ef5e52737939b55ac5e751c0cbb9e22ba5d28cb6ed6e5e *ba751bd518fbeba468cf54802d162041ed4b54e6503ee17280a0ef244e8cb57f21135a37a9e31d *4afcdde9c72342cb36ddc5b0ada3e7f22f9476eea1ba3dfb270f9aaf04df8b970e6dd45b8d1974 *790305c7245cd1d6bb39ed2e97abc10b7c91c60618c19446f8d8cf2ad267ac9106758d5cec545c *27f01734b0cdeeb4eca0d8699e496d86e0fc32b5c9e5c58428960930864ee7e12c221019d81347 *ef79bfd5f7aea6fdf0786d7eca26d789e84b132f63a19d8383c0fe9e94f661b5cd4273a0951e1a *ade2339ce8679d00645bb65fc4ab6166fba54cff0f7f10feff0efe3fd181b135d0d0d1d9cec6d0 *d10ae1ff00cb91d14e656e6473747265616d0a656e646f626a0a32392030206f626a203c3c0a2f *54797065202f466f6e740a2f53756274797065202f54797065310a2f456e636f64696e67203135 *30203020520a2f4669727374436861722033330a2f4c61737443686172203132360a2f57696474 *687320313531203020520a2f42617365466f6e74202f5048484b584a2b434d545431300a2f466f *6e7444657363726970746f72203237203020520a3e3e20656e646f626a0a32372030206f626a20 *3c3c0a2f417363656e74203631310a2f436170486569676874203631310a2f44657363656e7420 *2d3232320a2f466f6e744e616d65202f5048484b584a2b434d545431300a2f4974616c6963416e *676c6520300a2f5374656d562036390a2f58486569676874203433310a2f466f6e7442426f7820 *5b2d34202d32333520373331203830305d0a2f466c61677320340a2f4368617253657420282f65 *78636c616d2f71756f746564626c2f6e756d6265727369676e2f646f6c6c61722f70657263656e *742f616d70657273616e642f71756f746572696768742f706172656e6c6566742f706172656e72 *696768742f617374657269736b2f706c75732f636f6d6d612f68797068656e2f706572696f642f *736c6173682f7a65726f2f6f6e652f74776f2f74687265652f666f75722f666976652f7369782f *736576656e2f65696768742f6e696e652f636f6c6f6e2f73656d69636f6c6f6e2f6c6573732f65 *7175616c2f677265617465722f7175657374696f6e2f61742f412f422f432f442f452f462f472f *482f492f4a2f4b2f4c2f4d2f4e2f4f2f502f512f522f532f542f552f562f572f582f592f5a2f62 *7261636b65746c6566742f6261636b736c6173682f627261636b657472696768742f6173636969 *63697263756d2f756e64657273636f72652f71756f74656c6566742f612f622f632f642f652f66 *2f672f682f692f6a2f6b2f6c2f6d2f6e2f6f2f702f712f722f732f742f752f762f772f782f792f *7a2f62726163656c6566742f6261722f627261636572696768742f617363696974696c6465290a *2f466f6e7446696c65203238203020520a3e3e20656e646f626a0a3135312030206f626a0a5b35 *323520353235203532352035323520353235203532352035323520353235203532352035323520 *353235203532352035323520353235203532352035323520353235203532352035323520353235 *203532352035323520353235203532352035323520353235203532352035323520353235203532 *352035323520353235203532352035323520353235203532352035323520353235203532352035 *323520353235203532352035323520353235203532352035323520353235203532352035323520 *353235203532352035323520353235203532352035323520353235203532352035323520353235 *203532352035323520353235203532352035323520353235203532352035323520353235203532 *352035323520353235203532352035323520353235203532352035323520353235203532352035 *323520353235203532352035323520353235203532352035323520353235203532352035323520 *3532352035323520353235203532352035323520353235205d0a656e646f626a0a313532203020 *6f626a203c3c0a2f54797065202f456e636f64696e670a2f446966666572656e636573205b2030 *202f2e6e6f7464656620312f646f74616363656e742f66692f666c2f6672616374696f6e2f6875 *6e676172756d6c6175742f4c736c6173682f6c736c6173682f6f676f6e656b2f72696e67203130 *2f2e6e6f746465662031312f62726576652f6d696e75732031332f2e6e6f746465662031342f5a *6361726f6e2f7a6361726f6e2f6361726f6e2f646f746c657373692f646f746c6573736a2f6666 *2f6666692f66666c2032322f2e6e6f746465662033302f67726176652f71756f746573696e676c *652f73706163652f6578636c616d2f71756f746564626c2f6e756d6265727369676e2f646f6c6c *61722f70657263656e742f616d70657273616e642f71756f746572696768742f706172656e6c65 *66742f706172656e72696768742f617374657269736b2f706c75732f636f6d6d612f6879706865 *6e2f706572696f642f736c6173682f7a65726f2f6f6e652f74776f2f74687265652f666f75722f *666976652f7369782f736576656e2f65696768742f6e696e652f636f6c6f6e2f73656d69636f6c *6f6e2f6c6573732f657175616c2f677265617465722f7175657374696f6e2f61742f412f422f43 *2f442f452f462f472f482f492f4a2f4b2f4c2f4d2f4e2f4f2f502f512f522f532f542f552f562f *572f582f592f5a2f627261636b65746c6566742f6261636b736c6173682f627261636b65747269 *6768742f617363696963697263756d2f756e64657273636f72652f71756f74656c6566742f612f *622f632f642f652f662f672f682f692f6a2f6b2f6c2f6d2f6e2f6f2f702f712f722f732f742f75 *2f762f772f782f792f7a2f62726163656c6566742f6261722f627261636572696768742f617363 *696974696c6465203132372f2e6e6f74646566203132382f4575726f203132392f2e6e6f746465 *66203133302f71756f746573696e676c626173652f666c6f72696e2f71756f746564626c626173 *652f656c6c69707369732f6461676765722f64616767657264626c2f63697263756d666c65782f *70657274686f7573616e642f536361726f6e2f6775696c73696e676c6c6566742f4f4520313431 *2f2e6e6f74646566203134372f71756f746564626c6c6566742f71756f746564626c7269676874 *2f62756c6c65742f656e646173682f656d646173682f74696c64652f74726164656d61726b2f73 *6361726f6e2f6775696c73696e676c72696768742f6f65203135372f2e6e6f7464656620313539 *2f596469657265736973203136302f2e6e6f74646566203136312f6578636c616d646f776e2f63 *656e742f737465726c696e672f63757272656e63792f79656e2f62726f6b656e6261722f736563 *74696f6e2f64696572657369732f636f707972696768742f6f726466656d696e696e652f677569 *6c6c656d6f746c6566742f6c6f676963616c6e6f742f68797068656e2f72656769737465726564 *2f6d6163726f6e2f6465677265652f706c75736d696e75732f74776f7375706572696f722f7468 *7265657375706572696f722f61637574652f6d752f7061726167726170682f706572696f646365 *6e74657265642f636564696c6c612f6f6e657375706572696f722f6f72646d617363756c696e65 *2f6775696c6c656d6f7472696768742f6f6e65717561727465722f6f6e6568616c662f74687265 *6571756172746572732f7175657374696f6e646f776e2f4167726176652f4161637574652f4163 *697263756d666c65782f4174696c64652f4164696572657369732f4172696e672f41452f436365 *64696c6c612f4567726176652f4561637574652f4563697263756d666c65782f45646965726573 *69732f4967726176652f4961637574652f4963697263756d666c65782f4964696572657369732f *4574682f4e74696c64652f4f67726176652f4f61637574652f4f63697263756d666c65782f4f74 *696c64652f4f64696572657369732f6d756c7469706c792f4f736c6173682f5567726176652f55 *61637574652f5563697263756d666c65782f5564696572657369732f5961637574652f54686f72 *6e2f6765726d616e64626c732f6167726176652f6161637574652f6163697263756d666c65782f *6174696c64652f6164696572657369732f6172696e672f61652f63636564696c6c612f65677261 *76652f6561637574652f6563697263756d666c65782f6564696572657369732f6967726176652f *6961637574652f6963697263756d666c65782f6964696572657369732f6574682f6e74696c6465 *2f6f67726176652f6f61637574652f6f63697263756d666c65782f6f74696c64652f6f64696572 *657369732f6469766964652f6f736c6173682f7567726176652f7561637574652f756369726375 *6d666c65782f7564696572657369732f7961637574652f74686f726e2f7964696572657369735d *0a3e3e20656e646f626a0a32322030206f626a203c3c0a2f4c656e6774683120313634390a2f4c *656e677468322031353230360a2f4c656e67746833203533320a2f4c656e677468203136313030 *20202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78da *edb755545d5db7258abb5bb0c0c6dd21b86b7077874dd8047777b7e0eeee1edcdddd5d83bbfbcd *f7ff75cea976aa9e6ed5d36d77bfec3587f43ee6e863ceb6160589a20a83b0a98d3150c2c6da91 *8185919907a0a6aca168646969640ab2916550b6b13202fc357320505088da038d1c4136d66246 *8e401e8006d01420063401b0b20258b8b9b9112800a236b66ef6a01fe68e00eabf18347474f4ff *65f9270460ecf61f9ebf990ea01fd600cabf0fce404b1b5b2ba0b5e35f88ffd7892a4020c0d11c *083003590201a20a8a5adfe52501d492f26a0049a035d0dec812a0e8646c093201c8824c80d60e *401a80998d3dc0f2df0b80898db529e89fad3930fec512760018011c6c8126a0bf69405713a0ed *3f2e7a802dd0de0ae4e0f0f719007200fcb037b276fcdb03471b00c8dac4d2c9f49f02fedacd6c *fe5590adbdcddf08abbfbebf608a360e8e0e26f6205b47c05f564531897fd7e9686ee4f80fb703 *e8af1b6063f637d2d4c6c4e99f2dfdcbf717e6afd7d10864ed007004ba3afec3650c0498821c6c *2d8ddcfe72ff05b3b507fdab0c270790f58fffaa801e600ffc61646f6a097470f80bf317fb9fee *fcd73e01ffd3ee8d6c6d2dddfe956df3afa8ffac01e4e800b43463446061fdcb69e2f897fb07c8 *1a81e99f51f96e6d66036061feb7ddd4c9f63f7cce40fb7f3588fa9f99a1f95b8491a98db5a51b *c0146886c0246fe3f8971240fdff4e65c6ff7b22ff5f90f8ff8ac0ff57e4fd3f13f7bf6bf43f1d *e2ffd3f3fcdfa1259c2c2de58dac80ff4a02fcc71d039005fc73c958ff2fd14656204bb7ff5dfc *7f8fd400febbc8ff2dcc7747a3bfad10b6fef1570e066e468e7f5b410e122057a0a922c8d1c41c *606664f9b751ffb2ab599b02ed2d41d6c0bf82feab9700061666e6ffe653350799fcb4fea7f31c *ff7601ad4dff7bf17f35fa57e94c8ada1af2a22a74ffcba5caa062f977b80c58be71fe3b43f1ef *1838aabad90201ff834e43cec6f43f17ffe08988d8b8023c1858be7d0330b072b1fd3d7dac2c00 *6e7636afff0df7bf8058fe6b2d67e4680f7205e830333233b3fc05fde79ff91feeff3400f4fe1b *8cb8b5898de93f83a3e268646dfa77d6fed3f03fba01b273027e17fbdb03561616f67f739938d9 *dbff15fe5f97c2dfa6fcc7fa5f67010874059a20ac2cda98f0065aa4a4a73ad67cc91e1c17d3e9 *ed66811c0cb22dae572dc8f3adb2e9f24909dde62e377cab0e626c98e4f968715b38b17ddf97a6 *3d18eec6b1a4ea4a025ee4127a91d1f4e4a16f50b671d21df833e91723a79e6a447a5ccecb6e41 *697f63563fd8195752d62f7a83f93ad9c6660f77f948e34be69ce78b45fe608be26d925cf70bbb *1dad010ca326ffe49432fee8f181aa7f646870a0eb1aba679f802eeb173c05af3314326584af5d *1681a0b65a997845937af36e970ea7b1b7c4eabbb482237e50faefc7a5219fa1b2a40b8b113e98 *51ff74bf0f963d06adc1cdda2e5ecb715dbeb8a4f5e069ac90abf046f307f589e5e8669caa0da2 *17c92bac4fad68d711d72ddca707430d0e82919f52e0da37db59022cbe2ac7cac795429c5d4317 *cf63ef1e7d1a12ea3adeaf37c226c9f1551cf6804016c997b5b8ec0e72f0e1702e26b02e373539 *0c5d5576353630889a0f2bd214664924575522d7d505014f7ca3f45812ed6d8a276c233182b7b4 *5531438ee6d30c7e50aba3c5f478195426f1fe0af496a0d42c0dd8362dd92bd9c36fbb8de1ba29 *5b385142a24a9f9f2bb4f422a3e709cf760a627b932cafd56439a665b43e988b079cd1d42ad960 *f0ac3cb06a0711c5ead2421158f46430f60564ab16d6aae738b4af4f2f5bc53a886fa6517a4567 *2c1404c62d0f7895098621d69763bf32c940a3cc6afe90302a827c5f2517f22e938db27b877cdb *575411fc61a5be65bf97672a7f67c24442e81bde1e767059b524b9de14c9c02e8b4f7109b10934 *34f811f4bbf2249995e026f3f25b5cb58afee51178b24182a9b23d160975fec7706dfba9b54633 *07e077ff06e8db5ae4e6c37e7a98d828cb407648cc84e0b9e6352e43dae07add928e945f03f3a0 *5713a8c151bf50846de25d1dac8d36099016f00ed5c32f5d5045b5b9e24511fff05ef820897ee6 *4e9d5a91d21115ea56942f45a9c99a2acb5be9bb33431a3b061d270ad1e42bc6e39c93454875b4 *bebeecf3c1bbe3b52d822fe9c047b74496110212c1d664c743056a85a2554756a6883ce5eeb5cd *56b14975fc1ac1cdde3d57173d930bc10a71c2f80271d1649236e17ba900ab4ad7d69d9df244dc *824f183618dbc53529c25d4b48889cf63358526517aabb7d0c5e00333bd308ea033a700b82de98 *38f8a06b775bf25d1d253cac3e843ee4d18f28abbd740a97dc3e103ff4b09fe46012b43a43d61c *256f89baac1b3c24c6d135ba1b49a75ba9b1829f2ee61063052514f49bed278ca555c671c26c3d *db9d6d25eb5c3b752b0328ddfd0f9d79c602d2eebca62251fb2c17313b731f74d67a1e4336f628 *e404ee180e8a56f7b1e1630cda3a51563f6251ac4276532261c342d94b2e478f979ee9446038eb *10be6e90e5c8880279e34875904c800b8e6b774dc360c14ab7f626e8a05b223944e9fa2bed7c21 *dcb8d1b479e022b94d11ac2f09f9a14fb733a0679dcc17acf2a1323ad3111746edfb41f1a6a990 *165c8eebadca9de4bc7c52784429e4dab6c20f47b7b5b894cc978e07ce4f631f49f5ea2754aa13 *bab40992b288836ca792932adefb7347581b7f7a6138cb49a2905251d504c58edac813cd85a48e *f3ba1351dfa0b724e3c63eccdf63aaa59591931195146b93089d10ac46b96e92462f81ccfb3c45 *85e96f1b5e5397b0cf6c66f4eb1ae47385fd3c1471e9aa6111a5bfa39807afd3e5aabe6e45c384 *478811eae8131fa8afe1e951fbbda5556b45864ede903a9232a23ef82a1df04ac073f46e3184bb *f87ac85d540a56124970128825149c35f05131227cedeeda2ac1792d505a7f0334673b43faf260 *0413a29e75124b5ea6f4e9eb952e38999e462da3f6f34bd60fcce3b1fab8dafaea33fb2161ca4d *feeab9374719fd4de76cf6a13dedd37ed8382461f9ade7036a39d8264ea9f63b1483dd08cbc632 *99cc274163bbf31fa5d1a0ee61f18af791e8a9e569770c7d7532f5a6653ccef4a9f612e662ccb0 *5e8947bbeae44a0d998f543109e28904b8e1280b81968a8b83ac97f2252b75973a167befb01db4 *72cdc770997d76b8a1de8779091d968ed3cfc2745aeb04aefd7b582d16b3082850045fe72f4a80 *683b76b772d89723569fe6c65a08c718cfe834ea045ddb4ec611d44d3b3d235fe29db0727727e6 *9ca111922bc7de4166f002ecc5e4e861a4b65dc55668e3722b1a4c9d0297376692c620b1c01c2d *aa24b1b4a3e73a0f5212b0d705fcf42a58538d9cd223e66e6060d0a809d4bc78990cdcb187ce9c *84a579328caac423905de2e32eb507b1ab630a53fe2b51733d961178c00f76b146531db5936935 *64b7837da03e5a15663f5470b7e9e1d054aaccd166b03dc005721a39cb823c1033f17bae5d18e2 *b70e16647c5c59b8ef988951a41afa41cfd941310f346c758cc31352cb84dd78230dfbf8befe94 *2153967f4c34fa6364dc9aa08652abe0911831aa9053c26e3e6327072d144bd9f71ca1741ac47d *4a0f1a9587364827b01da8dec4a18d586783895df1eff4d4745c7fa6d30d988c72fc410cda455b *d58715aaf8a2b4c9619080eec8992f27a81054ce1ae48df547a2125425b13c486d5a34f2a340ce *0d6c5e32a69f026fc839f1bbfbece90261c3ea29720afbddb841f4e936e25ed61933e6cf88566a *e915d6961092b2de2be4bb24ea5f1237c43d4a1861eefe1018e8d3083e0f0a2c8ada8c846bac85 *612068a8e9e45a14e6c38262f5d8eef6bb836648063c897c2deaec5d2c541934435a73d96b0ca7 *03cec2b88e7ccdda1210d875f33ab5670499d012cb7e1bdfe0d9cfcfb8ac27d4b548f21bd6c1e5 *747bd71634291e0931a96edb8c2f68dac268ca035c5f5c505cef840f1ea3ea7315af0a44ce983f *3fb8a22d929a854c53a4e683d166022a35a7aa305d346b03ae82e3f51db2af98ed12c0d019cb98 *911a631184ecfb1d17367b91d5084bd4fd39832fda6e6296c33924c40a3e6f2379660b7cabbe91 *442848fc8cf4c024e00ad8950f553e0a0767105eb3fecab3d80108b24c9484877b7d95d877ff20 *53e04e44ec867c6f120b1b6ed079dc59e4e23460c25f67843dfe62327bf59c0961ead3653e4cfb *3aeecdc37f4e0a2bf14967ebdccce631f83bf077ac1478d9e0519ff56633de50c7209b064e8927 *13f7820ce471694057d68bfa65825510fc6dd3ec6c6aa62027c5cb18d7e076afdc641a3250c86c *b2044b22333719e239790d57f59aa3b73113f1cf4cc0b70afaed4ea225cc2ce3c358e89889c20d *f1d0b744a434dd8ab1bd6c7c1d2dd2266891d188165e938b9a6ceadb24cb76b10cd708116fc551 *9d7578fe11bbda2a0cb77bff0d8a48f4de3a0e4749ff985bcfde7efc50cce410722bd948e159cf *b9ab60f21fd44f0d2de6a7a36df0b5eede41439d411135830133010ae3a5957e2f09e51906ec48 *6508838e5a382fb86d51570f3ff90887ecb07f55a02f597be1f03888144dcc0d9a31699fe90848 *835e3c8acee7b19eb3d9b5242d8e1d4c1dd8bbbc6f8a4536548a61d4fbb62ddc3f78c7bd8bf76b *fd99ed7f15aad8a9f7bc47faf50df7321bb0973f10e3c34a6398cd9983d25c324464845a17f413 *157c9384e502a0d5220c520b3896ca7816877c7e6b459232d088cb008d8dbb244aec877f46a4ec *a205fe5296c667ec2d1cf5de1b7055d1e31e97fd39c06c3a56486ce11ae0fd2550a2b06668c00b *23d3b4661db58b9807e7a05521a60d0bca7839519b0866fd248e4031b49690fd3461af3fac8e81 *6829799272578837ac7e05670e65365dc001bce6e7748c95e72fc8a8cebd92a4545ac2d5b681d9 *619f0c00b71bc8d3140a672efc29f5d7990e9232f38eb7ec48a2f8b68b5e58cf4c808dd57bf2eb *b3896098b027b54d4b78ddec5c111cfe6f305163a84d411ba26aacf1a6187c3e42d562e82a5172 *9c2e855dfef7c2af421be9f71b73635f0c04888ce817c4ce863e2e4b84eba8c46dd70fd0f6322d *fbd7926383498996b61bf5594b2e8acedc413fb0be88589624b55e6467f59a38d28c899f0a4cdd *9e41d71b585465fc18ad02ebab49cb4b7f4ab2463f56ada93a8abe140d12d316306c73ca0c931f *6a08cf768b48265abbf8a6f836345ca735deea0f7df4fc0b6c6f3e08b1bfe8ad630983175644c2 *ae0bcccdcbfcab964e188d7b082b7f3393a8d9e19382a336d79009c1293fbc01ef66cd1bb8d047 *676cbf7639e89a33a5c0d9d3bcfaa383e65cc69af664e94f21d752a665fb576bf21e8f7e7804d9 *b64b5e13860554e5e16ac7e3fa37727df3d04289249b4ce754303c16b6ba4789272597c4f39f88 *876584b309896ff5e83fce610af385a09008155bbf2bcbda6d7c8dc56ab56bfb7449b3f7c23d49 *cd5ab2c68c52ca12898c9943b1b3d262921ad9f75affdaf4929ff5fb4937a97c801aedd3e21159 *b3606925137de6ea5dd95fdb3c0bbb15612853f0573bcbda454685b7cb523ad536096b2e500c27 *0b49daf8ce207828dc9726b9420c7978a1a876fda8ef9240b320a4a3b6fef1b4e9fbba98d01481 *523469b1eefdf1589a5ceddd9f86f6b5ae616d9eb8fa574fbc24dcb9ba1504a76acd71d9a93d2d *8d3abe8f21a4d81d7f3ec827b0f6e0d1287b63c3df4476930ad90530629682cc1d756f8718a788 *e997be0bb9ea7b9728279cfa66317adfc3e86c35a31c30b2a366ae5ef2341300418e598a06c455 *589bb8010bcc95fbb5499b5946fdc30baf7753a9f84fa1806bb2671dd18eea1edf22c2d90f5a6e *0c3b617efc0d2b9774a0b022d4d72631a5709470df8790320be25cf1ad47a3cb08d127e56d58d2 *350ed6095040f259f69947919899fa4de507216dd39326135bdd4e4abc089669a9227142f92e1b *6f158a424034a6c84c9f52b910af0884e70997dc6daecd0ae8f7fb16958058197cfc8264faf554 *dd5b520dd1526f3222c2c9a3341e0edde4f8592c1c42ceb776cb4385c709ce4332f513b5f4e178 *551affcf35cbebec0b390aa48f3b2c38cb01d007489a3946423761aa702890b3580c29bc2482f5 *fd846449f09ba13a55bc3cb4b2435dd7d9dd8762b161a88ff2912079494c8bc170ebc28d97b5e4 *dd6b1244a535baa62a3f58d130c970c51ef8c5148507517a41a81a55ea3e0a1a4396bac4479e2c *bcd00c056c33592b41447fb54ab21c5447f938122d4c60b68e1d5982afcc7ca76d1c49083efce2 *59d5e26d8f42a3d6514bdb6508c0489699932b55161b8976a4ba16474013f89501dc2ba23a8ee9 *faa7119bec0f3487c2f0cbf7239b024455e9da8bc21b8fd8e3489a949f58d310f5d2b35fc17792 *f1976314a17aa94ec99d96bcb8c0b18376a46cfb86906210353236bd3c99ad8ea49b8952d7ee65 *a6a81bd982674fe2e87d8f6de98d7631dfd8315e825d2a65d7ee178e946590653ddb6ef2d5e815 *0b3721fab47b0125b164c5f2881a8ae9c5068546cc247929cf08f51978eed0f14d8276eb6f1d74 *2ef8c99dac1eb15e04c6492be2fcdff120862eda7b2a5eb8db671d9a4637ec8d5ff82d650b9f6f *68eddf0b42de928574b2967745c0ae6ff07c18cf418e87cd7918d3bf1c6aa882bf1cad7268641f *1eb6e465dea4875994b8459362621a451d46915e319660279f88f89cabff820899166d58e38b1c *0e25e7cd76802e717cc20139d3c5e57b25e4220a7b200207e3f7de80976b049f2e265344480d02 *98d72ff4f517a6007ad2af6eade08f44ea5274c7e4fd621f5737923ff2bda15a726d268d6f0591 *b428054995c04f61d16f42eb0608a35036171aa8495f86e939bf23205eaa8ba466c911c7ea114d *a7b728b75a9bbfb42fc2c0dd333637e8f4f97a5912a23a1df8985d59a1267459db4d6ed9852b5a *ed2cf77e2d882c10acd972d8d46d32eea365cf1076fcfbc143feb42256db2364eb4dc51e244fdd *c75e3b11df85cb84ec44adb7ca78483f68e36fc103226f0864d2bb974d2fec47ff52af791023ee *e88df2496ee0ec6f4ae403df355977d2cdcc129d1b36c9da476b56b1398611552d46ab2ed06d26 *56f0c8cd875b77504ddf24485c5c5ab65a38a51677164b2d98f8fd2ae30d0a8ea5c1a02b1cffa1 *025dc7bd1295ea183d1495aae6a5e7971d3964c55999b6c9e02e142fe3a9b4fe2e82aa45ea445e *904605fbd1f11f87394e58d0abebab7284a38e92ebb55da911f51e6bebba56baecf0c71de65a11 *f4dbb651a55bbaaf5e868a24c9ddc84e41e5faf6b7443ef74e1e6dc49313fa5b250342229b666d *94f5fdf4b9686acd3d8ff3d148a9ecac6dc405dda67ac257cb9e8abaeafb20871495045d5fc1d5 *1bdbaf4791b3e27cf029de647a86a36bb060ad553d86027c25b9085fe7d2f2d84e9b723a752577 *d2550c5c69bdb0486cf4a565c2025d8fd4dff7320213e3b502d7a08f04204ae039bbd838c2cba3 *9069a5774e40ba17d5b67b7548fb6be08cd9003309eb90db57557e0a0a76526d4d1829df742579 *c39958dd54cd8401fa8cfa8536bb5ae6de7cede54a5828a09df3b5e77e1a0f48a3b48c8b2614df *e517d5d057ce2eec0ad5a3bef45bfd6459c72d28b506107322e45c9a384d343387d62f3a9ac72e *d1026ef4db7d12cc05737c282debdf3272937ec26fbf5b5e1ec94d5f4d0afb694d161504704a69 *5f4dbbc308b056e250a5acf812a6909c41e759df36d812a52456a62b3a14bff8e8f4c48ec07a3c *1d08ac852dc22252cdc726c775b7a371704d50cb667c94d150fb52a2d7f19aaefd69682658cef0 *5fc6b711c0a4842951960bddb161c1784105f3c4f0873808274c307029c7c24994bc6040512d59 *8e10b466c34befd11527c2c7834f43bdbc53a7b64908882c3538df7a617a4759ef94e7d58d8a3a *ca22674a37c1683318fd31b38b7da2bbe5537d97c3cbb36e7bb4cdbc5626329599fc6aca635bab *de1cf4057fa5a6c0c24555df3996dcc1134aa6550d337469f649f941b4a474f8e5996218127c20 *baf905432723a3b4c22886c38bc464376c2569aab3fd880d1d09f70eae969c71cb9faa3e02e742 *a394a80c6f677eaaa5649c22e057c60db272ac894cc3011170d96fee9d4c4a00e62703525d301d *cdf2e1f9d0eb0c2318eb4f76418b013f0cfe9402b0ea411e3d5cb6626e8823f184800f1d966361 *14e2fa2e7fa310d6673db153392d239c8c7abea4165b635e37bbefee43cdfbf17f4483300e3435 *95ecca10076f331e9a2800b1e7bf26f11bbc87a1c8b8a4a13c6e69921b4f495eac74904729575c *5e19a5332ade1812f7645310d1faf5e9e6fa44930aafa6719a079066f1dc062dd6078e5b600304 *183b017e086033cd6d1afcd38b9bc993cf0c1cc0f6f87cb6f140f09d6c991331ffeed0506569fa *46733e84093b34c4780f0a9730abae8efc40ae58a7d0d1fa83ec3a7a9d1015f119d70ac1db4376 *dbeaa065d3af647de1e86376950272feb0741093f2de3d9fe8a366731b375ddff867a3b20e14bb *839e677097a3d9808fe59e1febe755a3d7d4df633eaab70b60877a9b61d3a9e31bffb4512373f2 *a80f7e3841fd46d3992d0fc973a9d395209a2ee98a25ef9f381d497558d0505a71772955f52489 *8d8a91bbb1ccb57a6efdcc0b657b0e2db2b8b7f6d9167582c3382c2274f87be7ba608a5fbc4a82 *085f555aa6ee55d410c4278d1ae7f1a5ba2829d2e6bdcdb1be94b9eaf56d10a95fbd352703e7fc *745eea5a64c11569f823ed521c23bed4b1a3613a05355fd06d4b7cdc63177ac98490475091203c *766b547cd81b7693cd9d9f524cabcb10f1675e237ceca57b74598cebbdc4a9b4f64c2b0a50fcc6 *8772f0ebb4caa90bacdbeae8d2c25f91dddb60b7ed4f1481838525b8c1a348bdefe954ae4cf681 *8f63ba33bb8ff53355f3ea788a1d56f79bf5a0abda5ed147dfd46074124354a8c43b2a961bbd34 *a5f63101f3eebe5bd2ca3f7f26478c34de9ad5142b7bb96e9b8cffc1759f703619900c6de233e8 *d0ca9be37a6f30b0208e001fbb3b6c5b8fcaa3d521d0dfb2932d0aaaa4442c6fa888c38fac2ec0 *0833e12543eb70a9b760c27464c701214f620ec5e9787120caec0d7a861d1b26fa9817302eccdb *9b21485ea2c335d21ca1194e126ae36960196c076581fbb66aa7ef330fe7c033d042ce5eb361dd *3e6ea059ac4be81d3eb64b510afec86189a2d91fe9f56ff813be9495c138d6fd0621761da296ef *3b52d230cfe387cb72d7e3c88cc8c8ef597484256594ee29aedb72bb4b8111624a8055578f508c *d589dbf9fbb68a44c379670fc3c6e19ee1c296eb9ae0e0922021eb49d23a2503c7f465c648ab39 *20a3ccb0aa7c57aae4649556dfd4995d559d47399ae8872f4ba0def08907ebfa290eac80323c3a *6fdebcbc8ed9a85ef0d540ccd26b96d27646d040fb26f38cee4a899000a2485f26ed81e30f8b1c *2d26416846bba33d9525b1397e2f6b456368455148d3e1f0af37e41b0207e828fbc866a7687925 *85ee584d37f37efab06cc9e9d987d76c9727fc929e506c95956939b2321659eaece2b05bdde66c *7383325100a80083f18249d4152976c938b70b6c553952ed0741c5739754c3b423bbd5fda7e96f *44f5195f4551b600076ca4c63d0cfe6a2c52c92224dc1bba3563bd8db5a95d6bd6e681d3013741 *5a7f10997b01796b6d9e5c768af41da7dcfe4f1a0c41781de48db1afe879c87d3cec05fa5a330b *44da09244cde4a2f07c2b7f9cf00b3db2b91ceefcdf69f8da8585b4a2775670fbdf54fab5fa81a *892132e156f2fc9491a47985a9ba7f085f5d2b8be06ec0b9989f8995c4175f8c5925f6e9347be5 *d5e2730bcec3c29f4cfeae4037360b937ecded4e9df31afdfe8048253370d5313fdedc486da66f *b86ae6c9fc170e6be6f1f1abcba6875cd83df9731f0ee3c6095569aaf3a21a78198aa10858aec7 *b196edb6f16545dbb186e1646d10621334bba9bb2cfcf2ef93cc66ae5c0b88f323b95b18c8952f *9c652bbe71a3515ec51366d2a7e42316b84235dc81a5f52098a60b0407d9185367d3df26cd24f7 *d7643df40413f6dc95527c645cbc04cf40920c334a217a615b2764aed8a53931c780ab64f70499 *2ea59edd69dd0cf059e024fbceed9c7348192fadefc7aed63a02d7f534788232926623a2897a8b *9b22f3f7145c1739cc48dab78a99f611d8e0e848bd7896229e0b38b8a5d6074a353feaf1f67982 *1d94d82b2801725304671ff2e4c495848f1ed716293461aa3c3ac3ab78521e535f7989dd081573 *513e24f48396bc31851073bfb299d06592d99eaf42b53b2d67e29ae9620a43c90eb618652db66b *eff055f549d5a6597c233321e0c7c4da929fd6f1022457376a5742fe6c6d3b35f0d5e8a68ca495 *838526bddf6ff9283f2e1b0dce3a0adac2ce5f76170be959ba097896a8678f32e9bc313344edd6 *eeac5061a0f99f67e86e077c673a5a1fd9773b4d3f7149d5e9c045e7b475ed29890e040273dabd *8a3ed45fc5b620c4e9fbbbbc399fd1bd33e34a3158e9afc167fd916462ad288270bfaa5edf5a84 *88d78ed6937e0fc1b5eb503bc07e7ccb963bd4a1ef7b8625123a97be0c84f6a950eca59ae51f4d *b44f4eb0f79ed177bac9c6fd12f6fe6e169f398edb719af0119185dabc9101fa1d8418a3bbdcc0 *04164d045a1deb8591091e07b24375ea0ccd212e0a1dee3a7c6b2a6da822a1c8184febc9343108 *5d6b77a8e473399c3e23a4601f4b23d783f8435e2727764ec42fe88c473dc110599c5bcb56c01f *d793ad4d74f68721efebfca8c8a3ca9560a5e23dd271c5f4e18af3dd332849fca7b2823b7fd273 *a1c95c85149b9baa93347b698ec29f70518f0098660956c9eb3f2e70ae2cf25b0aa246210c2ff4 *c053b1853133baeddad9abe9990f56631030b89411ed5520ca41e5b53a1fe194d20576e767d56b *85bab07fc4001e820cdd65ad13c2539a646842f0febd43893bdec1ea976ddbf55f9373c741286b *a214c228345e197593bed15cc8c2a727418fd62da2d265f336d7c00f76baf62ee866ce4348aa08 *00d9cb27d68f62124fc2509f304d9bc0494c0609b01f93f77bf3db7cf82ade8b75d9cfb3a4eeaa *925710098130250763cb34fd14ba61822edffb0f1bddccd576d1ff387d11df4c340d1e01895402 *e962436f3e73bfabc627fb93603ea777dd9cc644c5d689a35728eb639f30d68799226520d7afb6 *2404bb5423752d21cd062aa8835f829e88c3454f39610adae136cc52ca5d97cc89cfc61a5a5b89 *59bf2c296d082f0b8978cc8bfb793287f3b55fbdbd692816e46e9ad699c12e696e7bb9958ac398 *3a11b4dea510de0433d15731455844d559608494f3af0897d20ef8784bcd45abb2e38db275127c *59145c8b3195e6a1659fa1dc6079ac22d6ac22d6ed26f513496773864a19763ad92bcdded868fe *f90be47a275f496429385e1bdcf6a7bbc24738938f4f3d63aee6cc8fe9d287ed609a59c43cd809 *d9a46d4a6b5679252ceffb9fb1acf9c782655fcf74bdfe962fae782b25fb856e585d4e064f5d45 *5de43fafdb6e73537915014f1ab2dbc38d6ffb025cb4f96ddb533b2c4292efd4f253148de4a861 *187f9a57231d7c0eecd004ebe17023b65663a07c3bcc330a6e2997f52f18b900b335ed14022f63 *766a4fe81cb728dbaea2321ec7530d43d4975a986968db6a53191e2e84313a8edc17fbe62e5071 *f4b1f723d919dda6b8aa99225fac4ee4d150f24387072e4c2d7677b7fc765df3cbe3b54a5c8be4 *63f917a307c2854e09b7de5bc09ff9a06443ea2712ab417c4e2ae2d468cfece9f0695c8ac46458 *eb5741aef90826497a988ab836c9550751996f2e9821c80407d9954acfbe3e180ebf66a08d8aa3 *ba719d40f0618a9743118a6a5adc5e8c4a40c0108932b4efb04955cb8d154a5d6aaaa154620de1 *fb8412a624310c21239f394eda13ae8c050fc9293445e1a5dfcb3b28b57a5349b3aa2b24e2dd27 *ff4e23b0fdc98cfbe89081d9e36a449d33f2c63af0dbabae7554ff835dd1af08884bc6bbefce9f *e65b70c0da20e07d9556f0cf202b90eaaf332ecfbfef9940a357b4765d9d496967aee073e4575a *fbc16037d2339e0e458ec12043a609c41dcf49734e328cf8a0190bb917fb8d3e5aa63957403867 *06291e8b3d4b70f07996984f34aede3d487a3d7955ac233b5f1cec91ce836bb299c2cf81ca9c8d *a968dbeaf760d8da5ea6436b6406bce0ad2558e449bc2cf8bbc191df73aa584acb28057a5ce957 *fd1d847c03e8cc284140081857e3099fbe70fe9f3f27872886b90eb1021c4643d460d82e1847fa *c9ecd9150e341f27c6d60de292c48c41b46515c29a9b0588419b6f03bd6808bf4441e0ddbe6e07 *e987725d01e0d10b11a17449cb152ff2afcaab395fe9b6684488e0f81109c5920c7d58363756f3 *d1ade8bcc5917e79e050451dfc78e53c7a44dc317caad2e4766e738d4ea764552808db5dc32aed *dd07f869f0fb3d2542d9b22856fee08bbce3fd4a764e358988d316ba575ccbc17d0c4ec236370a *299b68444300a67a8c22987df8bd1c323b2f16f81b61d5ac16214238bf16cd0b87d70bcc43b487 *4652f2b6721e726fe46131820976f43eb066beba114251561d7920069ab182fda61a9c359b996e *add0abc82ecfc282b63393b745d60fa436ffb09cda30d327de13660b9e0513dc8081b70bfefe62 *f20e4e4e89822083a3c69d20bf76d6dfd03c2f010fb4c8a47eec61a663db6ac18f7f49d57e8c7b *911fcbda2397b13c89787151318345c88ac45d7c0426af4adcf2cb4ff4f5bab605058016e73c43 *b18cc12576bd05eada9b5e108622b932fe4476616bd4483d8decdb90f0ba66f0a629ba0b81fcb6 *ca8aa2e92f76218762c8c3e6ef06b49266aa13e46e3cdfaaa323d164dc05e970f50c14b1f86db0 *76602be8660f5aad33f4ae4fe8b1cbc1005c1b783bdfdaaa3609c7b2a34e678982fdd5fcf612b5 *f5e75eb5d8e82072cfec7ee46a51aac6dc8ac31725808c8c929e0e763c167a3e3eb9988a5b6a1a *0c1de61fcc744de8b8590b8a3dcf188b60c4cf25a0a46ce18c22ad282ab005f67892cd6910620a *dff471c73455681ff1085c260d3badcc1802c9513ba456a5047e7f8972d7526d71fc4cbea04718 *fe9dd85d570a5746248ee40d38d4a51fd456ad8539c88fa2495630bfc03316fbe59ebdcce783e6 *6937431ba593f41d8ba0134d32716105a140b5e738d3976e2694b3875628ed1adadbfaa62e78e7 *ec899998fd35aacf6ba32dbd3ac145c2e3419f247a9dfb933ead4a277e4853454f16802baee7fe *b41065f5d6925ca164d3b3d14344a6c1145e8106887e1cc14b3cfb457bf1219d14b3a22a16e28c *df4bac3fe356019926bb119d68bd1d287cae053021be541eab07afbcbaf8bd303ef3803ab7da07 *0d8a2fbc0b5c3b8f85cba5ee398c7c37fda2264f0b957733b8693bf1e3a7b6a6fc53b09d0d4daa *9f252d03513f6dc408a3aee14644de136db871382322910177729f46f9acdecf28a96dbd26bbd5 *c347fbb49f5ba29f956a8fb2b31cf8cf96f13f20e926cd9ff0284d57571da3eae6e8df2e359fb8 *c1ced15abfe5b600b5a90d7166442fccce31052617d95a3d09f67c7d6421c1ee3bf75dda8c4cc5 *45b381499e4ac7b7a92586dc5f3ec766dbe02757db3bbb34c7a26bedf2f1c501e30c37acbd8f83 *7e098e1ac51432ac4e8660d5901645598738a3c744a7c91282f8a4daeabfc2ed80b795d3bfdaac *e3a164db022ef9379a10b4599c8fcff1ca3dc1afc97f5a1715eca8e65c918943ee0dc6a09af5d4 *9778d694e4fc12cf49a78aaf6cbdd9e527be059c5ea77ccfa5f91d860fdcae0027d3f773d0f74b *a4e8e274d832b01747b99443871825cc14ee14253f3f203525a81959df31321e0a9c9f1eefd847 *d0575c03d1fe766013d212333f3bfafb19ac63a7ab3bfe6bd54f6eab8c03b22b6f5bf2d3d43834 *e5e5cfea2d4862b33812be952ba70f8093618cef75141580bda22b28eff17a622c6bf2ddef5161 *7b6b944e8b46fa6617da5123aff571f284aeb9460f6f56acb901f548f687b24e358efa26b89384 *fcae6930a2350b9cea24ffe39102b42a6fb52e0ac56babceb25818671c6ef70e096bdac2434b5e *5f04e9f50c7f744f6d3d8bc36780f6145e6234e540d1fd66eca4b2d85e9b387e6a1dfa454906cf *f1d8bae391871187c87d547b2e98cf7de44cfe6780fa37cacf7546669bc4f8f8c0ab54af57ead8 *4125f24df4387d4d3822d696701b545b5168b7fbb727eeba33d23bba373b1fd1fd1f14f62dd5e6 *8ac7da9959852b687bc6f4d17ae53316c4ae435ea3182eac11ee4bb4cf2c0e95fbd6b1420cfa91 *5a48f7d95bcb6d8403a5b70c0bccd1bce685ad6f0dd76d2d882316b92116fdcf7055b001e09e00 *facac46197f885c75f378c9be4d01c8b7b2b9949ea8be01c8f4d0984132788dd38e1ab47b9763f *c7ccecd1b8ac3ce0897d9f091fa2da3283d9d7a51e2eb579ec6b29a9bb9fb82abd9799434d2001 *5e0f6673bbdb3de3cb5a30c900e9fdf5c7a214fb08299ddda9faea90e27b5248a02433980d0f77 *03efc7c132ea18324f804fa1702e8cbf7b9dd12fc7ebfe9ee628b3227cc9dac2b0a4e5e90d06b5 *456d950a2f703e3e7315bb0ff909138d0de1994e1fd789f6e3bb7bee720963d60da58ee323d5c4 *666855b36eb6b69eb70fb32ea26f91e0648667067792ca3bde1f0c4b4c4b8ca34fc63cbd833b9b *d1cf491e04fe49a0a119848bac2aba99eeac037f2c79e9270afdcb51c85803ca740f3262bd7462 *a32dcf1a7692813b43c9e9eb47f06ff01bf83f167fcf145cd5c383abe83b7fd9ae66830da2210b *10e9a395f1738d64f943976324533803ca3e10cb9c69f53a2e3fa1eedffd6e1362d46d1206f1b4 *3754d94725ee51a53a914be0c962086ca36a7b4b3a95274c8a606debddf1701abd412a77e35a21 *99e3be46ca157dcd1d7930ce37e03dd5564e57620cda1e14fb88f6411157431b2c8f4f9936430a *db31d735820a3626679313fe19fbf5d04f5d80b23b886b9b6b23fa999ce5a77b9a17b2e0d4d745 *8b80f75c781171cc7889e1ac6d87a46969db72bb4de4db418cdae09cdaa541b981733b7e8275e4 *aab45828b9592c48e223b644bf52b7887ebe088b580a9af780d82b22acdbcd1f9dcb404d87c2b8 *648c35d1f092d7fcfa61025b3f949a2ac5df79a321ac700a0210eb1d4bbb156082b78a6cbd9c0b *063f71d1dd7bc948a94450d50b64eb6e4ac43ab2f08a2a4ad649bd606a8322d37282ea7f97b843 *51d36353a20d6e61d3cf05850e25912665ab863a13dc9066a6a8fe94336445cdb923e80eb1551a *33cbae5aaa55dd7d34600ac112dd50dec6f216ea4404cfe7ff632d8da50d5c73527739ef284563 *e3ac3f39f0a4aa5d6d7a88558e4d8096e18457fcc5b4f03640bf2db9da28df4a7449f6be38a3ad *2f833524f7ed2a4de2ca8dce8111c249e2bdf0676e031d18ec7730f911b61ec9c018f1a76b089a *16295cb69216bbea98cf1b4a2b486f5ca793f53bbf1b6787561f0a014432ce6ddf0ed963ef1070 *d29c02cba9c506ec886d4be748875b19f8cb1f12deb5906dae18ddd8351ed665df59aaa5b56ce0 *3786ed1fb509804c21d5441c93b1e1220875c9e89d9baf5af2a8e3c6743566f9a07172c705ebd2 *e95ffd393ea00b319a13d73864e3403d8ce7c262691fdae53c3bfdb0becbdf5cb8ea8fd66e9d3e *22f67c89e3a5812b6901626f7f72ed6ce6b1a57b094f5ed73443ecabeaf8a9a14acef90c2325be *db3082d55ceeea1b27609d3517609bd22bd33d1dbc8ab3b0a1408c949c4e58f22ce113096b0245 *3a74badb04da770f07ac71911c9c2c27aa2aa5eaedc8c5a1291413e41d6af8c5fbd29ab67a958a *033af1243e75174a05881e184f94eac0e76a65ee5c34182e8d7017132c3842533915a4432c6dbf *d8bf5c75fe847ae4b3cb5f280fdaac4536db2ab2457250234e876d106fd016e6f2511cd8becff2 *bd9471a17dd79ac6d4df4d865c5115d910c06b51bbc2962bb03113baae898732db8abf73362908 *2873701a56ccc73187b4c54ace54b952242ef4d03dbd9fe66de7632ac39b3f1cf067f175f8320e *e181cf8d9245fb676331753bb8ca3bc27f55bdc4157c35d684cbddad16f208ae80bb8521308ccb *150051f59bb02fab7051c6a04c0c4b0edf8629e223cd6a3314a21314d46eddfade694a9fc48e6e *eb2dbcaa414709aeea450c87168835464a1c0ac1fe2d6e30bcb6b76b1a35502cad2fd6991e99ca *9f462c2cf1c69c901d0a01cd2b4e432753cc002dc641ed98b2f24543e390ef9a6cfcc224b386db *fcc78737ed88fd697797fb5566836712fb42b00a6b39adbb11db9db97f828c97984cc63328d9d9 *af248c95724c5859823a1c8ca759f13e6b917e18a3b62806d396346b804001451b62cfc0e08304 *f163acf0793666100a77560c68d53a7565a6f2f1ad91270b7af9ae232622a563bdef4be38b5e0a *1f329b9084eef78e528d2c8abda7598e7da7c4535070eedbf3a872e0e047f1f38f5870498c95a3 *0f33c0f7c2af1fa39a8b7b69f146588ee5dae7d7318d1bb47cee4e26d3312f09e1f0823df76058 *a23c5fa3611818bf6b0480f41973fcf7f50b076b8b4ff8f80e6c615660c01288ea1d58f4981124 *b54bef1f79a00f6977deaca013cf8fb5f4e01ef59d98afa3ae2d46c313fc7bd887cf70ea45e1e8 *4e6145a03bf394c03f6fb2eded554afb899503446482ce7a0e5e053a61c788d439ea2ae339fc9f *6faa2955e142fe14525f637915ca35fd9cd20ea4b45a64495f8e28862d19466cac8a83b9567271 *a01f68d2435e7b18cd800960449c10e8901671352228f98695ed9c9215a9af8ef048ab098ed6ba *4df4a3e896d22b2060b322eed0cf2ab7b4ffe43a3e9fb44281b4ae591d55d82778913660d63d41 *59618c14eaa095676e57563ee45b9db4a029869c690411bc46e1fa961e27a1a90fd88ce42d9f33 *a39839544464eb69b8db1b3ab4b035ece9353b1171ef2d16bed837380be628857c1c0e29d9a655 *3e2dd19bdad0f7aa863c24ec4395602da061efbd50eee5b9ef788658cac9dcef4a9ea7f4cf74ab *60f499c5aa9d94146d2ee17637f9f2a19ac6ba07e585988431f238692a595f2fb6bc56f10ec146 *dcb62e37362daab68e21fbe3ada4dfb7772c4ca99710216f459e37db4458ec6534f91d71a24b9d *67c80f01a7110508f11b4d53498f650139c71d711349c32cfd3a9ea8888fc9622782236baab980 *1f9090100f0a06fa1d848d29c158c5c2efcb717bfbb4de89830c513102b154cbcb4c12a3218154 *17ba370ba54b969b32765e24f4f087fb6cbc9598ce27fe6eccad8e13399769852a391963951e61 *ae17bac93dbd494b52f8bac1f3552347710aa90a22a385b01397abf4da72a767eaa7f7a1f46b9b *df0f7a48e2e767224ed931d9de81786e22871934ab30828f7e29218c53f99eda2decdeb31db16e *fadc93edfc9a8c870fa7ab9ae54e1fbcad54fa75eedd6ef7f85bca04cf4685e472da18b73a6c9c *35c4729602175ed095639bbd5ef04e0851a41c85861a4793eb97233bc839ccddbbd58a78c1af06 *b8786839c4291b7f7afecea6da068697d821672bb907865dfe53e912d4fbdb17fabcc0e4ce478a *3f6e49d70f971b3b2a0f6af8f51346edc77337da62611d1f56c23901037a5b0aa7443b7789010d *f6398ffd86f19ae51cd8165b8380fb7a4c8fa24489ed1d9662f549e698e0ac4e22fd27cf74056d *076a6f72187233e5e929b5209bc64f9319361c98e4af9bce6f1f41db44843d0dbf71ca12589dd5 *1e096974a83c19cf8ccb428bb3dee2d8067ba18673ff044ce525be49e2d7bcd9b1dc1b26ab483f *9bd521ca6489ece57ac3bb97792a39d461ac97565b4b25a68640edf7380cc97218c5f70cd87c7b *964bb832107dc51143440c3a815cda91feb9fed9b3af3cf2059fbb3c4c732e02cf4164b91ed64e *fa736d14e7c279d27ff354954cc07d5849597a5c7a03916567380df9be466bcb422d9195f968c3 *9138a95db536e200b359ea12fe1a2aa8c1c82e6400657b7a698f408e53d7321d4b903405ddfb70 *c01efddeb99a0bc2aa28822e5fb74c7d7f1e7d0ebcb023d6f4ad783127d39306ff8f5a3bd0c018 *836c70d9e3cbb3b24de650766a490b8584b3e8d7b0f477f9287276a8d93428b518cb497e7bd8ef *a846dcc6f5f397734152c55156d23695406f637f32a9f273da37bddd6aaf2e8e5f5cc014bb34d9 *e32f2260b92ef7ce5c20b83cf77e3eeddec2a9b7e2965aeca07c59f5f6a97922e1138cc1a303da *09bed0abc3c488a44a8feba54203be2d6cb1a87b70aebd01d61aee1eed2b6cf2c8a6db23237973 *b643d6e58f5abbe83df590cedce9718e065f7a3d316a5409b712c1d2260787dd8f5e6b952edc0e *45f092b803e1510ee9a9500b50a32b89712ba552b05c03654a770afdfd7bfbd3527b917d8efd90 *5a22de51bc32229ad0e63e0972c91ddd3ea1a745f84b3de9bd767eb654f095c6b4c3bea7dbbea6 *eb92533eac1957bbe8f0b3e32eee9d4956508032a7dfd2c8409e9f8faad4a37dc9311b767850eb *4f437986f373c86d2843452cc97408cee8f0a9fd1df7845d5d8ee264291990e083051af11a1e44 *fe65506399361a63594bca0ff4d6e14cf5982b72851071c63abaa6c8a1386dce8bfdb0a1b73b06 *d6c584a57a4ee1b0d17913f35b318d83d06f280fe65d6b1a1fc64e332109f7928339ea5dd1fa54 *2e4bb82d5fa562cdc587e659aec56e4af9771b2db41d8be88093cc307c533532aa7ce7740d0536 *7208c8cc4ee2ea30b8b300ba3ca20e7a0a5c008cc0d5649bdc1888a298cb5d375aa34ae8973eaf *0460c65bb54f285de440569a00e25505e5dd80e2c649a1abdb08b922807fc74b942ee9e17a249a *02eb26529f982e906fa57025202aa7cfd19ba39ca71357095df6278567f36cf728aab04dfd8c5e *6f3117a59f7931cae357f880530c24b7430757b68fc565791be00743c937711ff781d0225c82ab *cf7beaf30f6b8ca580b13d12640ef9ed91e37b95f856cb73424c3542ddcab4c017283085d524b6 *c7fdfacf8102920bf3f6ed2fc01f3d52b834ec388c819d3c381c70fc42cdea3eefdca3429df2a4 *39e6d7b990a9dff8f0ad7e5a1d4f283d21d8001ff72f270f1861161de2e40ebeba48e4a5076d51 *6b746107a8ecabe9549c344a4f720aec4df7136632a17cf45ef75cc8439de23dc5c184123396ea *1289895453b935a3767d4a12285c62dc3765619ce1751d7afc2c4464ab2c3ea3c65d6b87e10555 *3a6c36f9e5ad89742b73707a574a8b9e5698343ae504b3392dd30544839a5795d6408148d7df66 *652dca97487d4f16e87f1218076781ca89be647e069baba07ebdc4b865f378405cd6e55430d4ce *14867b84e2807fcc5ff0d9f38f40bcfb7614cc6609a9d539d3c076a2c69cc4ccc61430a6de56af *0a1dac7c8b8dcff846d2189e94e3bb8d538a0d99b003ae9a3b5192f8dbd5cf4146b930f7373f31 *eafdb6bbfed763118c4970ce0107663f394dd0f50b7d72513171f2f24ced6f3f4be1ddf46ac76f *cdd7af952bf74b9c8325b26a1e641829944131f3e386534acf89f28bb34838503db01023f2d837 *e248cd776efa471def947a0811eb0285c584a2872a33901bbbe6682b74703a30788bd50e89e0a1 *e474a8e10ce33381be1e1ae98d39c30f283fa02eeae17a74d863bf38662c2424363e8cfbeed4dd *ca7b72e4e9924fcfb43633448dde3aed69d994d2930925b754f0cf1e1faa0c50b8bc42c581ee49 *b042514739a4987056134fc382e27e3eabdf64907d217734a66befea74ac692da39687f8e55a22 *c19af7b0cf5b4afb8b1f4d7f96306afa6aab78914b4badecf0ef3bed16cd3477026b0cf597a588 *113b1d1ef973e290dc89339ffe09ec886f67e746c64b371aea01f692333377ac79516ba323ad25 *745fb022fd61156fae22101850f2933fadd3f576d52d9a1f54d38f95b6e2145d90e919610e939c *53164995aa044fde32a84671490a92b31cdd6783a78967074c6fc0982251898085c468743e4d8b *5806e1e59e15a74f82fc6fb72bee296fa5414a78d144a30bf8fe7da6f2ccd7ea9394eb938efabc *af84c9e05de7883587cebcfdc96a6f9bdb3043c73f8cbd943c9e9dd012ee54be0ba119b87dd7a4 *94cb362ea56e3bc8074a60c78dc221da98e5eddf73ebd21da106a444b0828742b3b7ee7289052b *0df3df79c082b6dcb70525d6430bdfc5ce14d574c21152e8885dece3ca9689748483434711e9a5 *18a2237faf370586e431969125c7c8a19551ae288c7da16b170a5b7add89cb60ec6bee57b44a9a *6d4aa494446e55ddad5cc5316d629b55b12ecc2edd3f3e369544c62c193b01c3ee87f45aae9c4c *601090a2adb5ae777ca56dc629656a9ee84f37989b4ccbc8d93e741aeb159ee19acd4e63fbc820 *16881619db547b4dd9fc7380c20e79ac035761f2a21a12735fd831bb31cccf79db141abf97afa9 *00ce31d6214e577b20747c29a86bd69e7dbba5fa59177c39f9f0b24649c06847b067ed25a803b3 *bc48a9f7d491e88c74779e116a234b9f4d529bbd996f1de305d9966c4595822f292f5d0234c6eb *4e7b17d7854144e23cde385526ecbe04fbe669fc6767d06ba5dd90ca287e62ce7e5fd55e4aaa48 *b262f14143d51fe3666ee77858a02edb419c98b6cb85d78ada53a7493845c37dc19e56e688a0c4 *c267ed0fbe1149ef9455617c062202074b4517495d5be307f70c7ea64a4f247b7dca420e2f3991 *3d0ed6e0359d3823d3901e39ca0b375de40c2962132b4847cb9407f51a7b245c07adf898ffde37 *6167c6c3ca719ec8c376976c55508b32e4e37d6aafb95c4db32f10aff917a46145756f03dfb026 *793aa299643bfe94835ad391375fca3dc30a718d77d3d65c2179fbc722eee6dec4c59d643598bb *5cf6aa36e2d953d08ce2f31704dde108bbac0b89454cf50e55b26b08a90360711883debb0c7013 *abf39db59ee76691645d8449974819852aafbf5b20bfd3a2f77ea2741aeddca849810c898dd816 *8b5e64fd35c2c96ab2ba968016c3bcd5d19f0becada3a51eba6ac86869b8066960afc9f1254101 *ee6ba1f496b2492e81b8a24e3effc584012bb66ee5c26e3edbe34967712569ae2f549826496602 *945b920ccd616b0f3f12a9b08d8df6b4e2e0a31c4eeb5439db769cbb7c816839a9d12fcbca7865 *3666aaf48df1819451d3b8eb940847c02be9085b171b9cd1711eff704a10e5e340d3b5bb98addf *b59eee476dfe9cefd4a50a2789541e6a9e94cb8f6ed925a5d66586909db4cd751ab59b8171aa39 *c8db2915122c7fca3435687ae96978e7b41bdc3d2dbb8882cfe13f70e10062e726f278e68e22db *2109cb65138ae7269546c3955ac8306d3f5402f3abbae26f8c456b201ba8e334e09f2f8331dfb1 *faa4d216b898fd53215fafe7e4a2b6aac825fde849b51d5e9a489d5191256431ee26e62d5bc828 *addedf62519682dde5a8b455e36423695d171bde7c1e4afc35e3572410bce65ecbc10d693e12d0 *f76acacf700c60cdd4f696882843713be63f9a567de1a865c100ec73678ad3117bf9ac5bf42515 *6e6fdb0065bc28ff1b92729d96cd89a92cc16cf0512d2ff96692fa581278374b42ef95831a1a2f *db1017fc02d4f94aeee0f73f48e74b6baf4a5b0e10f74724996a437b1f63b269acd3607d228515 *f6e141fb37ef1bb342e8298af60ad5afb8b4e7be328bf6b9d1a0cc76e28adf5d28dbcfaff52bcc *81965181913f2ba3256a009405bdea3b5f1b8a118a176062bdc7793a8b12deb616c664b3bf4d5c *fdb891bde06fdad8c55beb18620f55e9d7853881f6628267728145a8c9ec92d78021669a3815d9 *6ba62a9dc5f783a7b97a18589717d4a3d00dcd2a9416d1543b79bd94048f4166979a511d2a44de *5cec417207bff371399c9f1ea5f1e5fefd097655d15618e3efefccd1063e028f16d42c736d18e7 *8ff4c7d3ec15cf6c2127c448442f22f6d0153d72be87da6e007958ac2c00617f9472e8adab9847 *0832205aaffcf0b2485b9ee76997f741b3a0c06cb5b4deb6c6eca5d6ae53cc287305075b56fd30 *eadc7d3574034fa30cf275f56a3ea875f31c1ea9a25930e5b8b1fa60f96846f36cb16080d46bca *d0ab4a7769c58d5cafef60f893b73bd9e6215275eb70cc0c577acd3496b3eaeb4b56369e0b1e0c *dfdbfdb1b38033ebb8c7e0e188545fbb77ef90151b44268fab8113ab4e6fd6d448aa137589cfc7 *bd053730592f76c32fb89c0a47bf7129de82eb668758f68ecc354aec6ed965f0ed9e01d1049765 *06ec594daf3c27e700576b21b8470c067f412d0ccdb8d330ddafb28667ca70d283fe3ee82aceed *5b1ab4f8d3144a7d8b56a107b982c1ebd2ec67ddc2e87797741e08c7ebef95e3166881ae473add *835a6207e2cf88fdf3139f5ccc449e0028d6ec7a4a9faee7a645dc005e4cd8c1d5b379eac98ec6 *7523aff1ed5fa053c2c1501d1138b5d49df6742b31c75edd1f347771c98d92032a53806c21c616 *39e6ffc31fc2ff0ff0ff0900134ba091bda38d9591fd4f84ff0753d07c68656e6473747265616d *0a656e646f626a0a32332030206f626a203c3c0a2f54797065202f466f6e740a2f537562747970 *65202f54797065310a2f456e636f64696e6720313532203020520a2f4669727374436861722033 *390a2f4c617374436861722039360a2f57696474687320313533203020520a2f42617365466f6e *74202f505a574e43532b55525750616c6c6164696f4c2d526f6d612d536c616e745f3136370a2f *466f6e7444657363726970746f72203231203020520a3e3e20656e646f626a0a32312030206f62 *6a203c3c0a2f417363656e74203731360a2f436170486569676874203638300a2f44657363656e *74202d3238320a2f466f6e744e616d65202f505a574e43532b55525750616c6c6164696f4c2d52 *6f6d612d536c616e745f3136370a2f4974616c6963416e676c65202d390a2f5374656d56203834 *0a2f58486569676874203436390a2f466f6e7442426f78205b2d313636202d3238332031303231 *203934335d0a2f466c61677320340a2f4368617253657420282f71756f746572696768742f7065 *72696f642f6f6e652f74776f2f74687265652f666f75722f666976652f7369782f736576656e2f *65696768742f6e696e652f412f432f442f452f462f472f482f492f4a2f4c2f4d2f4e2f4f2f502f *522f532f542f552f562f572f582f592f5a2f71756f74656c656674290a2f466f6e7446696c6520 *3232203020520a3e3e20656e646f626a0a3135332030206f626a0a5b3237382030203020302030 *203020302032353020302030203530302035303020353030203530302035303020353030203530 *302035303020353030203020302030203020302030203020373738203020373039203737342036 *313120353536203736332038333220333337203333332030203631312039343620383331203738 *362036303420302036363820353235203631332037373820373232203130303020363637203636 *37203636372030203020302030203020323738205d0a656e646f626a0a31362030206f626a203c *3c0a2f4c656e6774683120313633360a2f4c656e677468322032303339390a2f4c656e67746833 *203533320a2f4c656e67746820323133303720202020200a2f46696c746572202f466c61746544 *65636f64650a3e3e0a73747265616d0a78daacba6374a45db42e1adb762ab69d746c9b1ddb153b *1d776cdbb66ddb49c7b69d743ae99befdb7b9f7dc6bee7d7bde7478df1ae8967e2996bbdab4615 *0589922a83b029d0d84c0268efc2c0c2c8cc0b5057d15432b2b53532b502ca3188006d4d015f62 *0e380a0a51273323172ba0bd98918b192f40d3cc1420666602606505b0f0f0f0c0510044810e9e *4e5616962e00ea2f0c1a3a3afaff96fc630230f6fc2fcd97a7b395853d80f2ebc1cdcc16e86067 *66eff205f1ffd951d5cc0ce062690630b7b23503882a2a694b2b4802a82515d4019266f6664e46 *b6002557635b2b13809c958999bdb3190dc01ce804b0fd8f05c004686f6af54f69ce8c5f58c2ce *002380b3839989d5979b99878999c33f2a7a808399939d95b3f3d733c0ca1960e16464eff2d503 *1720c0cadec4d6d5f49f04bee4e6c07f137270027e59d87de9bec09480ce2ece264e560e2e80af *a84a6212ff91a78ba591cb3fb19dadbed400a0f997a529d0c4f59f92fed57dc17c695d8cacec9d *012e661e2effc4323603985a393bd81a797ec5fe027370b2fa370d57672b7b8bffce801ee06466 *61e4646a6be6ecfc05f385fd4f77febb4ec0ff56bd918383ade7bfdec07fadfe570e562ece66b6 *e68c702cac5f314d5cbe625b58d9c331fd332ad2f6e640000bf37fc84d5d1dfe4be766e6f46f83 *a8ff99199aaf248c4c81f6b69e00533373382605a0cb574800f5ff379619ffef91fc7f81e2ff2b *04ff5fa1f7ff1fb9ff93a3ff6d13ffffddcfff135ac2d5d656c1c8ceec5f27c07f9d310039c03f *87ccffcbd8c8cecad6f3ff64fe3f2d35cdfe23c7ff138ab48bd1572384ed2dbec8606664fe0fa1 *95b384958799a992958b8925c0dcc8f6ab4bffcad5ed4dcd9c6cadeccdbed8fcb79100061666e6 *ffa153b3b432b1b1ffa7ed1cffa132b337fd9fa97f11f46fe24ca2b2621252a274ffef13f55f3b *a52fe65dd43c1dbe52fbcf4ae481a6ff6bf10f8a8808d003e0cdc0c2c10a60606366f9da705ff9 *f0b071f8fe1f22fe0bc4f2df6b792317272b0fc0f7afb2bf3cff29fe3f3fffbdd2fb1f30e2f626 *40d37f6645d5c5c8def46bbcfe97e03f7b60e5e86a262df655392b0b0b3bebbf52135727a72fae *ff3d07be5af15feb7fc7dfccccc3cc046e6d0568c2176c9d9699ee52879d3b3225f67da08f057c *24c4a1b451ada8c0bf06d8eb9716b6cb5369f8a73684b16986f7b3dd73f9dce1e35086f668ac0f *cb96aa37c5ec3a9fc0978ca6bf00758bb2938bee289049bf1431fd4233cafb66496e0742879359 *e3686f4a5945bfe40f14e14c279b13cccd0b8d3f995b813f06f9b303d20f93d48658cc2e942610 *b4bac2f30bcac4d39767aaa1f1d191e1de3bc8fe437cba9c58580a3e370844ca487fc71c7c411d *f50af1aa263ac8ebf6dc48d36f078f2d6239cba56cda8a0e53d3de1bd002260889c56092b617c5 *2ef8d74789b13302eee9d6f41a17352a0d0e8417e3fa9c02e93a33571f04af57a35496c93821ed *c1afa4148d9d31c9a427c1b8de1177fc0e0dd3a882aea0d3896c1719d4d3d91a810a19bc96a9c2 *4b9aeeee1686984efcd8e0fcd4986874ac50e4ca7b7a0b8e1d962cefedaab7fc4d90e871044719 *531fb60c40c8fd96b18ad1ebd4a5619b5895aeeaf1cda0e5d121035d7bc39ddc24c7253a42a0f8 *4ddac5216e6acfcbb255406cc6695a6dbe617839965a755d0d258b6a82f110df30c0ceb695dba2 *3e67e70d4c31eb9baf27acc483a4484958ef7c503eb39b7421d083a1a68221468b209ea0893c44 *8c78c6e0fd0df56e2d2d767804742e19c3844f58d5c334aac4800128f4324516871daa42a236c5 *968485199ca5604009d2833a83d21ab10b7d89a4cc25677e03f0741f189831f87502e7b29e6e39 *8a1da70cc4087fd7a108d9c9d5874a5679884f4f4fd8e771e589cd7be22948bf8185cfcab74f02 *853092512c1b5994d6767dae9e8853a1d06cbc65aa5a6f89e97d6fd34c73bb4d4b5e253b0cdc7a *fca831d55d707d28db16ab985f1a48f3b65d34e8c461a156fea5b5ff10f8c7d05eb8b59d47a0d8 *cbaf3deedb29472f718c45bffe586d1a22c6effa62fbbb12460c35b6422343540ca16dd1a5b17b *7f742599dee21ea19d6206f65a0a2c9a52704be706c6310f69688461a68356798a1c439e948a27 *447766994873961195c3c0a5416bfd0291c6e7724f36fce6c4abfb5c86ec91c6ef8d195a6e475c *318eb3b0dd9844b2aed9aa6e74f5b0db7ae234b8dba1b83e186558c7a908a66e6345773dd4c7ef *d32bee4b5c39d929e51e57e55ec81466ec25c2a03e12b7265e963f6751f62e5635c2172796fc88 *566081814a9cbd47194ac54ab77fc63d6e8e0c51798d590c6b7cffe25f584a94fb897518a5ecdc *9e5554220bb29f53944774296dd3e3a0494e47fc60a27bc74c166b1347179ce6cb95981f0a362e *833a3bc658bee06a31e83e02b85a5ab07093a44c0cd6b0185dbca68bbd46e0164f4f15f80f17f9 *5c6db751d645f46be1bbf52483db71a5ee645b0ad97a1635e3ed98ba5b9f7555d829a31b9fe421 *efd067d8093dcbafcb3a002b9d2281c072663a3175738caffd943adb9a0fc90943a420ec19fc93 *a1da8d22feee40e5223ecd71b6e96f60046e585823ba31f4cb1dbb0b3cac8a2074cf1d3c7cbddc *5854a34ecf473cbd9ab916ca226118b1ad64cb90cfef24c1b7f2a7d3e5bbc1e3a9dfba5dcaa63e *7f9d47fe20d11fcb9bd8c16fbf01c6b59f0bc1a2f23ec4fca0c3a2e524063b8385a45e3c20793d *e4da4022da51ecfdd4b4de666a4f56a2b26c45c7d9209fc3759c7e8b91f06334d11ce8932d5410 *a1871b1e90c2cdd67859dfa0521b2d9647b6b51adca8629411c4f6d5d399e9a7ce927b1c874c84 *7b0dcb08b0ae4f4f227d921ea02588823b658545e84c1e0e410f1e1b792d2278f36e561a563f29 *02617a6addc98bb44ebb3c576fa8f4b4454d655591625cd5a5d23a32201152c7f71092ff0a8611 *92ceb18c2f739c226a4305b48aac80296e69926063517d82bf22e11e8e10e8b5076d49e9a5043e *124f31fe226bbd042e0132117c42441bb74e46afb428ac43b2f2feaa9f1b9148699063e8206392 *4eae080bc8373194890ea425137a08e18a45ba62578f065250214e5b5d879d3210df3f1cf26b5c *eb82f2d272aad8b4baaf6d48a3304e053b15a4eda0f2c629e6b3bced1592ffcc6d46e43b822fc8 *815db53788a4f722fbe5d082e7f2668703dfb3fb61a47458f6928a6907cd31b1cac9fa7a9d8ad8 *7751c44fef0047a8f75a7208c13a09bb39ab4b6da75fa7a0e39bcce8681f62d09c6ca4c95ba6e9 *40471b2bf5647255f8c24369eb230af3fe0d63d2f69b99a1e4a7668b20715ab3a00d52e9dab9b6 *5640aeee2edf8d8d768b9513abd08dd84edfef6a2ed0a809b40ca9d45013b03eda5ff138b56ac1 *bd553b4222d557aa912b4c481a2d2c63dcdfa0aa27abbb68d8fae7d6fbc175746c847b8c0061fb *04e9d2bf03dab2cac6b035a814cc535f0859235dc7aac360ea6a20e596906f75a1fdba4b0f7185 *0bff34763014569db48360c239bb2420024ddc91aeb95227516925862174547d385d2114f4a05b *48916582db2c89066a20a6d5e3a60540446009cba7b4746e375282600277554c117092efc8927f *3aaf66a0b61939a6e540e485e88dc7c885d95bd9db1088089a1d832b7a7570efef84e81ff7cf3f *a04d87478baab47064290a5994d3c51a857ff7a9c7c8ee4388092ed458855c08698f38788acb79 *667af946c791d6e02025ae2a9ead810902de6aaa8da38a3eb1dd480527c99510cbf1e63e6fa273 *e1bd130ff6f0a8e1fa73a32ab983825c02d9493f208b71238830f3d6ea6a1cc817ebc7417aeffa *a084b38ac2d615ba4089e58a7087408162199d3da18bbb3e3b46a49ffbfd94eef9141bb76a5b14 *949696b624bdcf3ddb07e607f4a41a28a3b464e88ffa8792d29e0ee9f51cfcc5625d796d6ec898 *91f8a5a5cf006ea5093ca177e618a4efb776c83fab9d9aa223b9ec878a7a943f18246811dfd655 *0c063643a6113d4549112a0753671c782b6c0710f4f53df5a0520132879b2f25f89dc64468223f *1f375346f84d43ab8eec55f9d31748df3487ad28c5164b86087ec23b04f12534d925f5d4fc9e9a *db812c57aafcbdad020bf0dec66c96e5bcb9083d60508963dafe5315f9a1333805431f60eca42e *8d7d3978cce8e45717d2d3157f53ab04ef3a215f66762b81a504fddbe1a01f41fa47311f8d8137 *5bb4b093a2a98ba8aa85962688a0b37e370f4acfe6d2faeefec7f3e5907a7a891041e7240b8109 *d2ec032c8d07ef4fd29563bcc5865937a008d9f1bb6a599ad727f51b5474ec136e1b162821579f *7a527da42f24fd0c97a1b8b844cf37f6aad4115b92c76f4b409f009fd4c1eb3aa871e968275e7b *2b9558d300f215f3c6ce3f6ab2d4b4f32cdc9f8bbc82846e29efd99d65d377b96ca95ddbb34c4d *2594e7026a17a938b81462e74aef8690557080c34293500d6c1478754bb4914e386b6ff961e0ce *2cda70827c37ff317019c3715b7f67b48aab64ed3077c27a4554083f1288d59df084d94eddf012 *dd524f397c791a45567a31f1e69ffa73673d1f6ac0837c24755f2ce6339e9fdd83c1044fcb7e04 *46b097d6c1f477bda19d9937abce3ac10fd7979b5985d76da7e4e5ed0228a6dbf6f92c7bc5e13a *da89ed9f2d1b4638477d44b3ed417fd53159e32fd29d94ef33937d1737f015e5a056933b575099 *9d05f395ea621dcd07a436bb24993c2f40ac88e4219a995d58bb5c34a9f43da95d4a0f628fd859 *c54bc966f210099a417d3a8686524b013eee72099004fa442f1854571778cb5bc4283b49c97465 *b069eeeaa9179f72d52facb246fb08b8502a3a8240ceae0f8c54a9a31e48fab9a8a7c43fc661c2 *570679ae3ecbce9d97ee5e1289fb6a09f89190680b800bc77aaf16345ba842474157a1181af458 *7f34cd703c98df0b52ce53f4aeebecceeb0d4164ccb8fdad0c166035c6700ff160b431135d394a *2b597d28d0f7513afe8fdddfe895f59b7b404304fd88ca0a96b2ff94f64efa7185b24aa34591c8 *890a9395da4eea54502b091f1479dc260ad46bf19941f56a991c3ec3b15a86a947862061e5b57b *8dc2370a50e85fe83f6d4fe31d7e3cd3ea7a4d3ee31898e034b29e73008478cb238bce19a5d012 *17c7356b525c4722a2db637bb5b45dea6bf75714b5b8772ba16772acf161a2abebb11ed7baf712 *6460cb3d2d0f49db14b1bb3cae297d1fbc4231c4f0199b8b4302f2df3df6c30b2a5d24b836f79e *0b527a26056ac35171e43a4465a84d432762b460c61882f9fc9ef5c59db5dcd355c47fe2978c0a *46ae1688976c059aa4252b76eb7b758d7adb4951cc9af4f309cd9098d973e5fd6909b2aee8f31e *6094bacb2f62818ca755cff6a0120e67894ad6d4b3b9469eff286d53063ed0689ea8b812bc8424 *4246f954eff1a512255ddb6a39ce3947d876b5d24dd8f99fb5590cbd2dfded478c9a671a7f5c04 *6a08242153fd72c2ad6c5f118f523202b2a760580af65b0c02462844f78dfebaebbcb765436765 *618cb441686115fa90520585193ba1a4a33735f1544a179a91a072c85ec656723f179f4af5d4db *c001cac111f63a94bcd9d61a968ea104fe7c247980a7d28c66f9ad4360cc3b5b86c8d0bf835467 *4da2610a7b1bbc65af44f9834d9521940a8b8d546a5c1d64744c750efde5b4ed9dd6c2a8d149d2 *9e1f6e9b1eb55a4ba0ccb11f32c1c777bd45c28e807e2c93d35b0b1f720adb6ed88e3f292e9aa6 *84d613e367ac62ca4cfa4ddac526e20eadfe1373fc5b4d87fb4eb6e87c679cb03f86a7feca2ec4 *04d20165bb3fe81c972dd75be986638528f9ab9f3c2d54ce6a0b5d30cd8b5ffd79e3a538893eb1 *b5900d96be5ec94f7b24d6196a2890a44d128286c924c63ffbfd98123fa592c592cff985f64df8 *65764149b486a0ef28ae29ac3117b4b5bf4f42d62023c088442a6cf450ff81126494953cb13d62 *8e86357952f84112c48ae5e18bafd793de433fc7c94f14ec4826ea92ec6930b5a285bef9089915 *925706609857a998f4a73f233da5270f833c535aadd2e1d2b4efddc5bccb89ecc07b15f4c3abbf *2fb0d63dcd97005b7ba50d4255874c1d7bba2758b44544c0f58fe97e6907139e9d7ffecc362537 *7d649996d32932e9709c419155d172d32c7d334958f11ba35d47ff2396f884f0b0f6636c17afeb *18e145960ab7750b348af0548a28e1be25d9421367f2894792e427468f0ba64506cebde7f83428 *ff5b05c28da4273fbad779448356892cfab3d9f50c5de93a5cc29c9c853fccef3ad6cc0d6b67e9 *d56ae78556ee5e5c517df5824c6d010b93b6fa6beec450798b778dcf856685dc5d8a9821ef3f74 *54b1df8fdba0fb0bdf872e4cd29756aeb1cf11ef8b257aece6971b3826b70cc1ae8c6565d72f47 *35a5082592f4be6906f4eef045d7f0a3c0c067b28071708a881b1304fcdd32ab3d3c533158950d *94416f21ea1309f351e8996590ac5ffe5984b1a1d5891216b97c9dafbc234a6d632e982ced4b2c *55a1bd4fda82a3106268b13e5daf4ffba0392bb864dd8c85d82f72aa080663e56a548e535e3861 *42eacdbbe880e980bfdb9be5e7aac3a42aef9618b46392760052e6bada8fdf32c2f523231d35a0 *4006808709865ed96514f6a151d64cb1f01dc6da86363f60d968321af8e6c3ddaebaed78dbf194 *b7969679352ee25511305857e7acedbe3d0e667476c39745fac30e564dd4cd48345e2df9775b80 *de9251d985f04f3e1492183eb493bfc91acfc510fb7873e6ed940cb0c5e03ffd0db6099b34ab5d *9950fd3683d2ff8822968b28fae8d3ef3de7bf9288ff0e937aaa66955ea4007abc5571d0b7a6d0 *4caa375d4d9473068a60e7ff568fbdb995d2ad8d33f61d1f4ecc916d52646c5b4b2d054d7cfcc5 *0d6330445b2e55724aec1af39fb7bcb34a855833f7bced11b62e31b10be3f3868f45bbeeacf447 *cd64ce9a8f916781e02ca9207d2c08ee35e4fb3c7fdd4c0cc4289b40efec7844b719f5370abae5 *62acacfe305692021251069459db2a97a49f0317f8a13886b1b033145b4452a593e15947bbe122 *90ae618d1b6330693f9fb7ef230d466333298dd452b7cfe17b7330df22846b2837583231615bb2 *8aa4980e67e0f7985862ef4b5ba48330b411d69dda74c32d88f5652aef0057d4009c321ce4ec12 *b91f9b21087876e4dfabb7697e8c7e94b23f0eb986ff7d5d4cdc9f43bb43d6ffe13525a273bbb6 *417b49ec8734f5d7248dadfc57b11ad81b5334eaf7967e1d75656c273fd7800b4fa80b762fff6a *c4da2b2d88ed300d4fc118992011c37963476a846667c671a087943010fee241fdba2ac6f83702 *562f9d0958e2a17460f899847b801e46a20add785b918d2fa75fc87cbed3a0fe851f3e98e4ab8b *84f41a36e7ef9e79151d696f4511bb78387cb6c83bf6cc55dd32e8c571f2fa13c41fa1d684b3bb *a88fad0c5be03d6b85b630eb7c7e7d568b1ba1ca4c47a6c4821282a23b71137dc1578ae3a3f006 *f43536e8fee9a3bc13defa60dae87c8aa31577f3d3e27bdc13290fa13ef2a595c3f571047c7fbf *95c292d44b456e2f560dfe412f939aa92c263f00b70e8f094ff2c6d3e6e7a22b89d6231aa7b174 *6cce167b8e6b68f441aae73b42a259f733580bd2cd9d8b0eec7da23fe448d3e9d4545138d1d388 *c8c60deb4a506043b81448a3efdab800435a0895f90db1b7357ef6bb4c5ce18252c1242bcb79cc *dd67b1ce2ffeaa6ae59e2c59914d025de11ac951c6ee7e988a5ac0c3825f128f33ce107c2d16d9 *9ac03e93c7a222437ea229fae7997f0a19f6df066bd67c86015a5a062ecddc706726c740fbd248 *aba0c70c97599e45f316e0694a2b9848b52ff4c08db611cc91232e9dad5beb4841fdabd2a7d34a *2f34b38e25367e90c8496939ad133ad39bedf37455c94d3665338dc9db3c67f4f16b8aec25a837 *14451c504d2eba8c31e468bc59b1165ba094a5341f0a82a0ce8d9af5e995f818f499e0a6bc9da7 *eb2cede27c63b858ed7678bd75270135608ab442dc220126a74b0d47ed171760f94185981ecdc6 *076d0de76e9c04fc91d6cf0d72e0501a9561787060ecc357d52f2d38bf95720643cbfda6aa7b5e *6154b196acd543d674987ca090b8a861bcc9bc8cf193428cf3b9139b5e29719028a2f1e22e9cd3 *86dba49cf4c0e3f6fb364e900c7c84f536e645af3aae73420bc7a3f58a01b98f68666ca7215d10 *3c397c4442e711b3adec65304812a91ea2014f202a98e9611b59067eb5997bd10da0da20c0c1be *f6f920e0c8ac0c7fdf5e73c1394660ccb6619c161fcb3bcf3e2929827fddebe9fdc15ba097bdef *9c6ad47ae138b2864b3b6e66595e5df325eed758d3d05de2e2eec1315abef67d2ba398c591474a *0226197a07492b93fc2bcaeb625a043ec448dc6b8f92c075458cdaab6722b4e8a5e835a14c7d87 *97de07aef580e72aaf857e9f93a5c7d23eb610b8534b7fca342d8a3ea3933d4668497d53285ed0 *16b3d6b1f83a4a113561e975f6b8d3d6a7a6523b486ea8301486d9807ced5a6e6c129e7152bdce *4832626a8b82b66ea1df1b6ba07cb4e0c843b18463059bdb140dfd3819fc7d500b1e152da92ef8 *13b52176d87577356eb3494205df07938f7c5bfbb33648d5e52a88736eb2ccf26c2faf3455c669 *8417db9fdc4fb8f5ee1674cc33a82870c67cb41a37d7817cbf6468ffc867d046df7c63d547ec90 *46b2c51fb30f90bf86b3e210aad7e9a04e47b2e975905566e3951ec85c21069549481bd967c0cf *edacbfad6fa48dd63ce2dc4856cd53285916e05ab9d0abaff9113d8fb150cb960ead5b194ab8da *a5197b2cdb925e83513b47cf210e329b9ed251f316d9850211d76aa250f683d734617f76de1ab6 *5b2d8946a4515e7f18b95f3cb9afcf0a22c67a52021011e6a1858db308ebf2fb0a2bd471f92502 *aa17082990a6ec88a89327e99f9f25cf76d1de6627f69ee0a203eec5c828d823fcdab111fa79cd *f65642e908bd5d1c3a5f2b7f739f3f092a3bb6b025cbd306601d0df5dd3e7578f5bf47c0530fbd *e0352333ff92d80e2284bfbff5a86e7efbd69b3fb1ffb9195a09ae773d8c3e186251a8ccf21e4a *d94406df5819245da6abaaa4d305058c6a5ffd73ec8479f1f984ff83212c4c435ca84540317d62 *e897c39e00ee59591c4e387f157bf6679013c61a9543329ced8ba2cc4f168e1b6f111def00dd2b *2df303b8c4e57ee1438b15e37c7064e567183ba229e3eb8d7c94eceba722dadad79f1bb331474f *60240bc22c16e34cab89e74f53b92d56dc3f86fdabd6378c386f2fe96b151f7e1b84078eebe517 *3a21876b7a3f6cc3334697418e201293988dc5859c32b2ad1f8978cc533fddbc41d158c3bccca4 *74d5c97dcc668978a034b683b8801a9d56b40fa046335bff41c6b5f5880048799fd3b5b403af4e *8d0fecc0b1d54dd3375bd523a8ca4304179db128e55f3fd0bbb37137ba3b5b6c3e1f0ad83f5eab *2fd4e93e7907e88c9b516f18d5fc74dfe35efc73eab7c25c32950632073bfa2a497630927c3c3d *dd2b840d2cde6dc74325988cac7d3b1f8ebce32126e221660ef2ba35317b553ec459a14914b25a *2eec111925656eaa976c90cf90fa367219827f3087686507471d74e5ca7e4dc3f115a552ec18b5 *0f59e05a29289298e682b9c246c335b304f282c6b242826447cf2a5e35cee9fbfebd7080be2408 *4c07f50aa13cf6278a2c232d665e5f88d92f847de0d8e6cade872d4e4804c155307f01596dcbfe *c68a482693508813322bf81036ccf53902e850789863aa5b44ecadfba30b4cb8ec7d0035499831 *2106af488f5408ef1afacde13e2e6d2e329abe01e77807beeac4805b67f94133e342359ffa13e8 *b28d3c56c559ef6fc4a89713436f892723df5fad9c1957b467a5592e7d7f91e011f0169b332f6f *aa66032d00948d688c5c192068acb4acdf6fb0eadf74dfa11602457e2ab5b45349774d93ad0feb *a3f089ab2aee7bef55429d660e5142efa882f114cb3828e232a9236d96f4d409bddc2338061ab6 *3e6894790152438f8d67992d107ff6dfbfec315d3b22cbb5b665bf3a04ba057f47f72e13966f62 *07b9c0d7432f0804fbd8540bf44907f5857168d5d4b308a20bdda548a70f382022b5592072ff25 *7690fdad02adaff9f6a630e36207c8438495278c62e2611365b352b125fe5d530a526f88d3fc6f *c9c20b8fb22b1947f4619e8dda8f466ea8a137d1a9587491df644f6ef1b5071013de5a40dc2811 *6bc79db2998d833521decc6910885cefc47efcdd9aafeffa52b98d89289bd29e73b1ab2d412a13 *5305ab7a52a612279cd987a12877167f9899ffdad7a6befcf6bc3cccb6aae68453fbe65d769aa2 *b1cd0433decd3a5e3458021a765cd5ebfc1cbfbc11a5c3ba47b96dbf46b5f66626fd28c680f8fd *8c6d9b3dd85316aa21d0875c1d0a2e5291a1c85fd3075ecaa2cd67bfe62587aa748ad0c6b2b8fd *09a26751ca97a010d3d41416410caf7eaedb15d375aed034c96b109d18c450979b7b35c9f5318c *5a007bd1f32dfc2487d62846c0b631718a2416c972eeeff8544bc7d81a06deab4a4243697c9940 *eed479e4871142f62474ed3606b5176b1c5aabc3b9e41352d698752829534fa27923b9e0158fab *f5600e4afa89fb983d2e96664529e5770e58caf487c5f7dc58a826b0b007566e267d87e09e6b82 *140d6f6ed80dbcc185d5bacadf83a197735d6aa1c387c04c37846caf48361de0eeacb90882bc2c *44c1d9ebeac5efc5f9c8bd63d5f147b3af9bd624ff1b88d280db3579d1647b5edea7af637c03c8 *2fbed6fdef91b7df108d8a7ee0cc564e1754dcabe65dde0c2c9cd8ed3cafa2c5f86fbf218f47dd *6113c07f1f7ba4fc4389b4ac4cb47c2550374f2a04339a10d0cbfd370b55def5a42d69195a18a5 *17b7c0a065ada920fd55a3d8ae8a42939e0503bbc6f31beefe5fabd448373d4bd525b761be1124 *8e4fa75f9cb664748eb1eef7f092b64a0aaf62fd553f8eb916949dd71089fcfd04c0c17fe5b829 *48b8c3c950f7f8df36c329d7171d2b6ae54f154341a901dbfbb1f405264eed8d10fc2ccb98f61b *23687c28731492b1bafb3c415b4b8933194eac3a030425aa78fe64d837fe695e53833b4a1463a3 *1f94ceb6ba63e2776712ec496f152cfe559e03e429d518b07db7eacf2c4f14869a4a72c8075f84 *deea55d9f776bd65a15c4f0e8f07bd1e928483863ecec8b970c3ef29678d46e866589df3a69669 *612a963958f32445e440d78870e18a65013a06d89769b557e78d3f1507d0f36bfab3ad791d5ce3 *94d544e155ac7fc0ff6ef30272d4ac6e1417c3f092f9d420c7e667f5b0d9a14ae10ea4fbe4be16 *d8ff7894ff98f97a694bc9c04a6079e16032b6b8a746c1c09db77d1381c79ed6525d613695524f *25a204ed46ccfd6c6536be5b0fde690a33e99eb39d820de6732604e1ca33d635d33d91db307f3c *433a65dbd993ed5055f9a61c2765b14a7651456fd800c35a4ce2eb4ea377740e8dbde74c135dc7 *74546c33521f12a3cf7d3b71fce397762d9f5142366e461339babd7f423fac8ebb2fe6c7f43d66 *ca8587d8622f724439b527c80777131b0109c1b349dcb1fa1ab97d33b39f23adf80e2acb8dcf2e *abe6dea97914e3cf92824f3065ea8d6028a1aa5eee62ca7b2139bb8f10e10e36b52c0724323d13 *2587b8c8e745eb4edb2a845f6a551b06230ea3ef15510c849afb9b94d9e107e00f5e13a4eda0db *bb7c218e447cc2a9399d73e2c5301fbcb1b9e3ae3671cd1fa01ccf8ef3a490d1579d3751b956c6 *b6f38270a22f1d9e4779e08f213937f77339ce04b64c394dbe3a9c9a5d160f51eec0656d287167 *182ef55fb67324b9042e9bbce4477d60371d0e898e5a8f2fe46eae0d3c3746328a78d297694cdd *b7b4b16bdf60387df82a9d7bfa6036c7ca6b3f4f7107cc9f240108fb39ebe724ce23591a1d21b9 *b9732decab39781225a8b0c58c50c6f26dacc9435b5088acfb110d75075eadd52fbfce8bde6b42 *c35874fd7ebab41f083643d8e98d41095e4516c3a2f72ff8a22112b1fe119c992e97663c3739e7 *f489057509a84591e4e46b0c2de832f234ed46cd94914203cd91741846338f47bcc59ca2a096d2 *2509a004af699cd391915d9b41a12ce9f1fdeeb2712f551fa855b0d6e9524b0c36a15d6280f58d *f8da7d1952e947aee10bc91327791052856ec2fbf9398b50093db2fddb54586103a372d1960768 *e0ed445733b19f39de6668455fba4d2dd86bdbfec380d0f76c71a4e418bddfcc226b218716674a *f49c9f08e10e84ba0fae97bf3326bc26cf6831f1dd21638ff0ca61bde99b6ea6251a3d1acd787f *4d20c4a28d8f1390c809aaf3b0d7106cdf671f70b647c96cf9a5f73e20101d4e8caddf461aa44f *fb98a2ebbce8065fe2b38d2d1b30739a599750003927f113cb6a7244177a5d93218fd83e1969b5 *997d3705b4f55534a7e8d6b41996e26928249ac9d6904cc4eb9924da0c3c221f94a69d5f9024cd *e53b021829390a7739bf431860145f1a296e509ecb401d62212e50e360ba74096294ad2172bda1 *725b72f97ba61f5011afd3dbd610bf52c95dc1157b2fb3fd66363faa0b9fcb01f984724f0709f0 *3b07373704e623b409d0b5b7611805d1bdcb928dde38ddc7f155727b2285d278ef59ba854b9499 *feea87030fb7065d83848738df0188992bd17d10de540ee829f4ed0d6f4a672a9ac3dc74f6ccb2 *7a2785253370d5a19d6a50f61b9d99b18cda54bf56b00532c16aacbfe4d0f1e044813a1863d617 *9c908153822168d545961d0dcc6ff161b42470aec3f908fa7258425e2a57d0a81dcc78a371578e *dcab796ea799776b27e13ff883fda17b9cfec124c2c6f24a77d393033642e8b2bd6ba05a845577 *0f027b0b9ef69ea2fbc79bbe05a99adcd082291caa12419cb1d53ba705dedb01ad7cc342753c8c *fc0335da168339d7b6a7c8accf9edc14be284314a4d674924d2d4fdce19833605ae85d203e3151 *fe1e441a36a9481043942abe76e4e2cf8b4482754dce63b770878217e6700bb405682e5f3f84f3 *6e5121bbf51282dbddd2784a91341bf8497b10c3b7df18f3bb6561cdc20c2a0815df07d8cf7191 *35e9bb7e94c4c9b6b279a188fc89b8ec84c6f6ca869bc870d233a11af5dabf547e64b78786559e *c7fb2bfc774576875099a0fcb5d08756466edd36c2fe86efb91f51dcf56892e6dd7b21fbe0437a *9a445048fabce9bb097453d0a60f4ebae22346716efe106790c95f40739e1b6dc77a58184e0f16 *2534911bc2bd69ce12ae49646808641ecf74aaf293d594e9acb6539ad88942232745ca8c135df3 *7225c4badd059f767c3df8206ed565b476e8df4386bf1866c0f4e1c40b8bceeb315dac6f82f25a *4299f6f58b9afa348e0fea03e868ebfe41a873bee1415743d529affd40a6fdf236102c7b8c4322 *0024e28c8ddfe9e5592ca99d4b4e676b7cfe44b69b4e8c348a85233bf090a3a03ed8954169d266 *7ecebcb98bf84245b7f83845387bf1182a2d2a1891b1b33e9554eaf6f0898335acf3d829d2c1a5 *6e7fef65a53afde9fbcd3300e9ea88b9737f2b9120c7c8fb5a2076a685edfe428493aa59e8aa16 *72d0a21b46ef9155b9ccd79640b74096150e3d49642f392f497799c8edb74a3886e0f494bf17bb *2ae14fa101feb098a2b36bc3b7f03008f5494eab59acfc5d767ad9f5acad345204d80b4c2a1f97 *bc5f117e1a96410897972a10addcf351f0ada281cb6481051f735bb74539dd6f5702c1b6661d4a *5e441be85858ee88213248840c4a65b2ab888f71105d1917724a26d63430d014a9b355aad6ac07 *785c2ff70b11bbebc1e28d861a1b957b26e1a5106f063443acbea1d03788de3feaf7e981cf1d6a *a1f4f85aa1099f078c4591a2784fbec76337fe20c17b4df2af6965a4346631de9d1d48289d3286 *0f8c06f2a87cdb948eba08d608e4fdeaf404a51e602c198aad242ee6a0aa487a7fb5a8936c2d1f *fb53df7a9bb37f4b3b006e3d610277edb33c7a2ba2d10a30db55eead5dee3a78f8b17a215ce9ac *63ad7e6e8b1d8b46f6120d202939289fdf10fd89db3c9db0d3822dbe7a2b4cc85bb98e30a3d2f0 *76dc250dec09ce7f6eaf390fa4270eb784e85eaff97c7c8bb0a41e9d9c898d395f14bdba1c71b0 *a149be868a2bf0887fdb729b65559318187e74e2f24e02ab64de7d1bb6472aca662bdda24ad0e9 *318623af8bbebed8b1cdc05972c65d457215f6a2d1cbabf7662062d388ccaafd2ddbff9d59ee45 *02696955858055775107c231a75a089b5e3ba421d2f2c296ac00865631f0460a9f3d871438ac25 *9b3ba8e829c21b24fb96c18a22b3ed997c2dbb65fa89447a2a1428772d33530e7e82332cbe82a8 *e8f83c3340bb7c0b653ce378951f16f2533fe2de741c953082945fe96ea5d0ea155ca834f97b66 *ed2b6867f927c17c7bab038e3bede0bd44c3d479c675a19f90fb7df78633e6984741fb5b314076 *b7edb132e045a222f8248bcb55b2a3aafc5e6b515a5aa4fc7cde95604a43c875dca779280f8d44 *9f6166b1b61d5a3da601bcfea38ef0ad083178d123b82f88258be46e74433eace2e2f91d7839b3 *21cde3560f8952623c8a49774e827a6bc23998a451e0a2b3f25eb164508ecae740478ffe205c28 *abf22022ac636fdeb16753eaf662f2c13b744ca3647bf76d278134bd6693ce460115964e9e293e *61db7ef51cd35751046c3cc159ab006f2011b6d3459d505127b07966f83b2b5c5c0d56d4e36900 *ecc76e83a2ff1c0658133540ca26cc8f530f322d55dc78a535e3b7f77cdacd5c5dd12f1db670a6 *f16863f4ead3762bef0a7047c9ced328b0d3cd40c2225320ae2e2772949bca7e08de374c249242 *e7da5f27d21b797f1bc678c7db4c7258dfc0696cfc5f5f4d1afcfef3d72357524da877b94e3d23 *d1f1435e5b75f47e49fec0e42764626385a185fb7b773244762e20470f0065b17d7e1240737f91 *2385ad79e82ddbd0a313f47ec0f9cb42dbd67f1322c53890db438f30a5d2563c044d02c3c4df88 *dafa0f1474c02993938f6997c395707162a962a1f7bcfa6ea6afb68727e45d210fb8fca1ea326c *4df36627fce2b948c39274ce3df5e540b028598d080e6a9dd69965de9d3a74cf9adfc8f69f6443 *6f35e3a4f698a2fac8c9c836897e913923f6bdfd98b17789ce3e9bbffb3f07cdf71e426bf0b6e2 *847a8b89ffced4e4e0a59ae349b2da98c02ce1739d9369c392e6c79365ef2e9873dce06e4b4009 *18ebee27d19ff895d2840e992e17431721d3431112760ebca216bd29511be3d6f09ea826834394 *b227463f145e0d138d08caec6e6d66114794688fecda115a9ebd54363b79af2c2ef01ad5695293 *74eeaabbe9552256054b8bfcc8388f2f9cf1ce62b0340cd8b6a6fc5d988fd3ef30f1c368741dd6 *c20fb3be481a2dae374fc32fb1581d616d9b5a74bef1d1ddd8ffd9ea8c8fb96bb4e92dbd1bcd8e *091ed1820d421274360aa38185dac8916b2b6d1fd4dab903660664290c7b787f24de854737b782 *544941461154ee101646735980f3170ca1a952d064543a4dc846fa5a376dd4d5472536dd66d883 *92e62b9a62144c5acf1327dd6fbf629a80bffd2b3f54adc2fa93c05bb0b37941e193a92c997351 *7ce1dcd58606dc0a8bec46daa8ca23d23dec532732f2219989211e4a3f997d3ca0cb40c3ff4428 *658a123fd6efc0323f8a7cff9cffbdc42963ce6fac955643e158e3268e4a2d0c5825370d0abdd3 *c6bef55505c3fcc51542a1984bcdeebee7a043b9522b23c49f45f5adcc88a440b4d571dda3f852 *c3d2e44205d36efef5eec27cff0cc5483136bc86a5ee403ba3e203e6c9ad05f5ee891602eaf76c *c149161a0b96e50ff4e038457725ac36bfc82a96c378283d4db3c8b56778011e00f71ab16454a5 *689ed95201c2c5e1f84fea7ba77613d431f1cbd29ecb4fa6a6ad37b391ae70e164b2ba3e1a03d7 *9538a18de8ba779a474c2c6ed105af4ca6de778f0756ba1acbe80fe797043e3ad7f88d0ee52e10 *770218881c3b40152a0e7741d00fa2ebe5728291da8c386af61cbd46908defd19e9a54d0415172 *ac13b45cf5f2eea26bae17693e081e175db61a658752989d7873231874c7d28e534056457b88cd *ace154176f4d1d07a91618bb89b556856049173862bd91cd5b34214a741ba8afcdd75b9d0e878b *f422580849a9f846aa61af7b0a656011f48627886772a000d3b3edeb21a5d9a0ed6e3e87bf9c11 *c5dcb05b083be3156c7c2e0fc7d84b9b1e9aae454e3b7f22f52a44bc0a8f3779fd4ded27c0224b *2520d3e0918204f69d83075d5045a7494179bc9084372ef486cba7e61eabb8343ef77d86bbe2bd *40d3c32590898c0d97c8430fc74e9acb3241fc2fb105bbc356df485832527657cd4604b3ecfa8b *5e51cd33995e04d9932c7b7d78f5e8560d17c459a6db5a1c13d3cc21878b8ad35f1bbd5f3282ec *68a81cb868898cf369030491b4f7c8486de2b5557bdef550b3adc6f0ea78d583adc3a36d81f9b2 *4f37a632bcb4ec0b5733842e57c324389f1372ac76d8df33a85c487e62c812a377202aee94f988 *5495d4c7c279748cd647cbda95eee2ab74c6f572e463ebe53ae0b2bdef5a37f2e7113515336266 *757a9248766235ed26df0f72d39c00ea397a287b69198024a9c4462bf8d563238867efe4964aad *22ee4fba19b47952bf7cd653ea8ba7b14273ad95af9f8e35caf0c2c8056476d58c6684531c288c *8f1fa352e958b5b0ded22b870c495535f6eb74418a294474bd6620f11d0c13b5b80f5df6f1995b *607b9ed061cd40c85cad702fa174974a9096195fa3c20458439018514177f95b2e7eb13bc4a905 *7e628b845de6260bb7b97ab8ffa8f55991cc60df6bd5d06c22fe68ab25c8e1ff76a62d7dcd3cde *07f2aca4e3a373a697c3ae74429f2e643fc98cc7935233044b8f4f8aac261d8e4adfcd37286404 *2c04b3f05c9b41700f49f71738cce9aab5b54725da4c41b1ea9ae7016a8d5cc292de4bb58bef8d *ecc76bec0a5992c109544fe6f856e2b616f8d1eda683b4c02341ac6ba25924c9ec733cbe3a1d73 *decb96c44c7cce735a9236baea17baa1482de1bf9e04cc8f603ff1baec2f8ed4297fea7f4717c6 *7db1d386695785cd86c3aeace7cd5473daa60598219aa15f20fed6f42baaba254138a561dca4f2 *f64feb31519cf7a6651285aaca42a2b7f425cc98ee6d9fa8d7876692f73ffe8d91d07d942b3101 *06145b9531c17445bc820f2d5ba4a6771a6167f77071ff0ea44de83dd98005b2bd24d50953c510 *77b90e659edc573a1ba25cc69541c7385acf0e1b8fc6f5924fe049b57b7ddbd20ca564430e9ae2 *ad576c10e68e295dea5dd763101112056ccb1193d55b270955833c776880ceb4cc7976aff6bf58 *5ecf4a20bc328173725c7ce755f47dc1d9bd240c79191d99180e2284d90474e4f26f249a255364 *171501831fa93ea20c8dbee59691f7a2e68695d37a1bb8e40306330c79a57e92088c0682209ef7 *3a9eefb525c97b46b6a81e8ee727a0d494b008189f208df7bc0e69207dd36c648f9515bb5bf725 *4325ceda552ab2c35ec7a8355281cc86eed122996d5bcfbec46f9f04bb2368870df5a8c901b62a *68e357174a753616cb75789cafac5920aea5545cff950f0ae1259438da3daffd583f7c9de3246a *ccadd6ecc34e57b5fdfd1263883fa08b598f275c62aed272e26d5c3a873c8af0d3286642146725 *54d947e2f36353ccc3cf718d649486ea843242be32485909bda34a58ca3088c1b4a507c1635010 *cf7bacfb0ec10184dbf7111ad6abfb20bf3643f0d3da900f353e78409f67d6dc88e7d8f665e111 *872e6b0383cbaaa4e28cb1bee121df2f885a3ffc1c0c2f36cbeab646297acaec1301317c98d6ab *1cad5e01c6187b53563c5a31b68038241dd4cd16cf47cdb10ea125b6ffdd2cf02a7f2a37321004 *e3e0190f8fcae53850fe6f562a35d6ac69f1b7496c4d0105502327b1470117b35cb2d7501b5728 *cd54bf9aaa239be5bbf4df69677f4c24dc5bb46a753710b5d2f816c5d0e5d331fcdce1dd3a0a4c *0c38598276f5b51cc898905e99c442b4bded23c3543a0093c96e40b5f4fb264ed7bfdbebc1a9b4 *85f73687c9edf3c3f381edf245e4687ad81cd3828f2f627859ca830498ed256abcdc60b54b6153 *45fe0ace9f29560f3a65cbcc9e2ada11a2d9f2c443e0b2efafae501522d82cf8533416971de856 *e3cbcd4cdf408072cdc7a609e7c3e1d233411e635a842763bc97ced0c4f51cf114a7c6e13a33ac *fd27c5430b7319436d3bfec9b3a43cfa1ee3839c7827e8ab2a96bca563f44d990d7cb9a0073ef3 *6f9b2da9c7e267602baa2abfd091c364ceab2eb6f9cdcea76a8dd9d82b02f6037893a49d8c3f51 *09aec9aa556d8804f9a9fa59b8041ac7bf49f0caff907ad279376631eb8ff0f41aa34c5bb894e4 *1cbf27bf6d678532ed5eae5b62d788540004ad700aa578e2af4d703040fbf1bd13087d8ef73cfe *65c254a15f21b4c1f6b292e223717c17af8b2c6cf2be9b425410b28fabcc58ff4381504907d67e *97d062158a49e913712ee01f9c9530296602476de04a589b8539cb2d48de0fd5cd169dff8d6f08 *d6bcbc05c122ce46bd0f7b11dad01f42e2d03a849446429e62a43dc684ecc1107751734abb0fef *11748e48a3d9cdd548d703572fb0925946c50cb526743781822a99334048ec9181c73581ac002b *bc22edd9269aaf6dbf1011ff0d5eff92ce39032593abee4784798ce53c76017b3e5cbe57f5b6e9 *e6388b7fca4768334fa8db319aa5f16a3af7637215346e6e998a4509c9f14cbf59b86ff42c2a7d *8e3780067b67114dbe94aa1f4a2145ec711ad39214e96f4eb47dafb98bedfacc95fa5f2f05ca69 *db8979cb6a354ee1ddd7c21316698c4168b50497fe840c594f5a096ae4ad9dfeeb00b01874303f *ca8e5ede8388db7b61a562c465a3bf2f07e6193cf4238f9e018f73f89595d586144417270a5e84 *921d1e13a33023ae15aee293c60fae0805237b974090495be30e9579bf117ba8aa6921b88182e5 *b7e7e1c5695ea21f326d0b24d08d8e33fa1da3613cebb896688ce7d1667427922924e5597245ef *83a6ab8f1ea5713d0e86be350ba07a1cc6380de7fc2737672a4872cb644e83edc5c177ca7c6bf4 *c4263b4a87d5e1398708c8183063fe37a1b8c8f221a05df27bf248bbc10726634d17ca9be3a691 *648724e5a2b69388e1d648681316b8833702d35aeaedbd3203d766ab9f89d05b0d5693bfb7863a *f131e77b64e63f684fbe3993a5e586b213da412d50be8d539a7b0f3b7b59e260f0942bc4acade3 *056a6d83bb4fa27437d7d84bbe5140e12782140c6648fde1a2879664cfdfe7421c0917bbe322ac *4082280d3140b4d2203dc91f746cbc82f9abb83d1917bead3bb0d502a72a6674d447d6cf35a41a *10c4e45d009b57fccbeca09049b2fe3a201267fc6751d1af990649af5649ec8090b145fc334d48 *aad8ace04b34167c53a26d6fe8013cbf85197f5ec077293af0b7765e386b1e0e114900c61ba4aa *18f974da18236daec28d64890040d01ebc1c698e680b4fc283447b5add048ae1623bebe4654bd2 *6960480ea799d1c167d21fda7801b9bb36a57d8e825587e132c6ea6984762004ac7d26a35e943f *133b66f362c2e88db34e7a8b909ca9b675418bc4b519c4d10633997a35623e15a265b62bc62dbd *458ac4810139f1fd2931a09a4128814db65dbbc03dfd58101d586ec54961f5b3f2c67f7b1e6594 *cdaff2bb9171f56c2a4d92d5c16d48ff833489baffacbce5011877270a12196b1d257fe1569c79 *5b0b093b620359dbce64732af8d4b0ae1e311e9788a5032af5958d8353976eee112c88fb6fa7d2 *89e09224b18a1a91b967f96078f983b290c9d2b93f9fa761723f75c59bb5c0288feb173f1d65fb *1995aa3ce4ee5c2e5006a3a224ced1a93cba39839dac30f4357eadc60d4a17e5259f097881a6f0 *2e2044371a63131d27ed0840492b8cd8b1c864c8bc250fd34c8d0c67fc446e30c6427c51f6fccf *57fb5474f52bc78b74e93047b7920d9d2ac7881c6e76c4586525ae631649cb9ababb3dbead388b *a2f23dfb469cc77a400e52bd82c97717c281dd44716ea852ea65ec597783632d52237b687226db *99c52a0122a7be459fd2cd7bcf1be5a3d71c7fc22c1ef7ef3ac49c8842fc6a0265270069900d89 *e10e4a74dd74534fece35bdc89bd6701c39b78f06f0e7a1a4ebae48e3b4cfddb5fa79bce546677 *55a5c3de5fc0169c7b3602d1ab17556555a12462df2efc8ace60fa962501d10f9f0520dc4f0373 *d6147a4847e86beb901533d4bf4181aaf034253682679735b415886d0bd6f1bd5184de3b6bbc9d *a8fe124c7514780c57f63893498d81be3374968c852f55a588e9df3c688c77ec08347c7f88ef0f *95cc2cf920a4879d989e1f2d473b989d881c48fe0a7248367522783de615ff94e8a4fa651edb03 *3168f051fa565b30556a3458e213b1ca81bc630216b3620e425788c7b0097d34aad1261b08c998 *9688535a68d0249299fc2630706b1f9e01dc0bbb130f285bd5ca23823fb1bd8d76f9a2f691e3d3 *367aa826b6bd7a4f3a98207f65f3bb517687f6cb34cea43c5f4b4844d3c7d0fe4eab6dcd9d2d30 *619d9c3bea00bf7922b4a60c240d0cf4b0c5b63a8f1e856dcd5310c4105fb3d10694b2d6afb8bb *970f75c8b1ad161b5b3462dea2da96a7220595fa97b63f1efb79c5c6a8d3a06de537101e5726a9 *fecc7b5594de84f7c7cc7aa7f0459b1dcb379799d6e041f7faa7c06f7957a9214654837d0582e3 *1782dc24beb4ac7dacb5d122f5d53a45de5bd69422e5c957d37291aabe3e85024af129122f5417 *9a7fe4021f8403059599b8353baa024cd0a67a848266577096ac5cd7cdc886bdf6a71914378815 *5906221370cf1efda811fd6bf7acec879f7f6e5f8e35ae8848701ea13134a550d0f796fdb9c2fd *e5f2ad48c7a314d78ea1f6c818a9794602ec376c1ee4b275229468c5de106258952ae1e7ea2bfe *9e48115f6bb4ac9a94571baa1e3f7a8f5aa1243551d1cc0984851c4bf7d74d1cd41ccbe33da1ac *904928cab265d90817d94ccaa33bca1fa648f82915b1eec3b7b69b8fa88f326333d3ca2a5e65a1 *71ff1a75b0e5db660bc7f9799289bab18ad570126b8efebae5e0fb9866c1b24f9362b99f92c6de *33ff9eb25e12d3fe52d85000c84008fc78721586f5f2c3b48507eec483b329181dbcfca091cc9e *5ba88570afa1361680c004e16179aae6e6dc489227093a2826ba014243ed6afd5127c6a69aa445 *9ba7d97582e1997531b2d4dd0bded3918aa0ce97fe1483d51935ce3f0bbed6ca456697cf0d5605 *93a3cb2c816896d5dc9f721ad6a8c2bb654636cdebd9d14f59befca7d0787fb24d66dce09ac3a1 *dac60bfc75e10df63898a2e8e310753518a4d927a7ecd42a871f447d575923cef2a51b16099521 *15878749acd319cb262d1d3daa0c188358297de60e8d896eed375ba8a0378cef3f9294b0960c7d *fc13cd028195841152850e9ce29a56d9fa4e70cb4bec9b1f0e3fb18c5dcb0515e92555c418db52 *65da81d345728588386da44603c10cecb2a744ccf0d5e99005d86fef464c078f47027e19a0b376 *7144cb210c70b868c85142308d852c2ab4be9f59e296b5c6f7e62288e999538014dcc64fca5e2c *27bd5d888ce643f3d9e789687c382fea1c3ec610f67e18254352b928556d106bbb7861ace1f716 *7b6cbb3e8da51fdf3ca79baaddc8ccde7e292b993f4c609028592b7c6735e269881afc15a74eee *fa6941649a577f53e9fe56756f354a355117deb79040a94cbdaf31abf5002848db97e1fe7117d1 *a349791c2795041e813d7ed3bcc87645646dca66e1f99d0ed9b686f6519277074283e38efa0ebc *58d0e8ee038d09a108778474c74959150d412f62a353d587ebc03af74c9d872919d45eb269b011 *9d65d04a4326b29ff4f728afb4c7ad90e4b0bca5642ea48caaf346c8b374513fc7c80a389c63e9 *4c85df4e8eb2f6236b75e8c57bb81b202d9214f9fa23c69ff2127943172c3b1ce91483d29152a3 *366e5eb24ceee420d20267655272c5e8686ba57b49b20676385137ef9d1e43e14fb8bba9dbcf30 *6ba686a325da9249ac1dde0bbee216ad72ccef96518cab1c8f9573f9b0282ca0d220c95b481573 *b518f5afc31554d3489eef99bc774f26ad7302ca7ce4062e06081b8e607df73fa9c8c7023caba7 *b8f9bddf84632d1a295eb51735f8f3a69295f72a8c90744fddaa8affeb0f1c2d23534da6afa604 *0728794200dfb754e4d33267adcd3112225e6690133ce15ccf17aee6089a6ab0ba6fb56592f75a *5690fbdca3b27d9e31335d3903ec1959d3f198227dcc10ab01a38aa3a7ea14aab887b72911f816 *8ce5a6cadd06768ae193a896707ba87b690ed013f4118d9f18f9be2a04e2ccebd9fbbfb8979432 *bd68e55ccee6f164b5547fb4184c9ccb479c1d23eaa2beb9cbd128e54b9d9c6a89aed7062194dc *1a7f8705ad593d8c36beebce7e724c7575725ebda08773180857264defe22eca10997542352042 *1d03cb689169e832f8bee9f6cddb20ae15b65104f732908a45650a1775668af5ecd3f0a635adb9 *8832c1fd48f9adb3dec6079bd2d4f7c80f159d070f74c9cbe0cf38919dccbd5d6fbc91019a3ef8 *3eb747b7a3f838c5f9af54ce859e61be21982dcc3a59ab6a289997781815824415e783e67057e7 *b5a153b5aeed59bd3f9d57c18c1f9e4d41b8f05c5e2f9d4ed64a0cb3b5c630ca0991011f4a7408 *33ccf1461abd588c73cf74cc93e7c8cda7ee808b4d568ca735a2a2a175a965d204e880bc7bf1a0 *1546fe56b1d3d6a4a627576a39f63347bddc4d05e9dd8879bcfbb5fc90d9847b0862ba528312ae *5bb5c542f82779a2f58133ad9e51749f4216a0c52838b4f2e4f0468081098eb47a2996a49bd716 *6d81704b554a72696f6fa4bdf5d5c3e952e2763cdeafcbd7ace851ad40fc7eddf8bcbd9d140b2c *c893cb94f533d2052044d77bfeb1919c248a83983e10ab6098497aa252b19b4f40e0e9f98ec2f4 *03434d4eba848f1713cf515d24cf7cd7ab6549dc5e58892f93ba6500017b81e812a9fb24ed8e0d *6b3915e07d5800ceeec7efa1abbff2772a949f8e298a34df9c3fe5f5e01abcb0aec67c99d91fb7 *f6f50f386f619214b0ee295b5b4cc5ca06e7d18268ae85bc2a03493b46ebf9cf3945f472b850f3 *294443ecaa99b9e6a554326b866dd52a393ec5f6bdee6107e82c38b9cf3d0708cfa00598d35671 *f52dee715b81d059c01b035cae24ceae5f8f5d197128597ac0c39ffad23f5120afb5f16185f7fa *d03d317c77c5a72d0283e091a9db29302914e73139f99e8e76be78c48ca737bcb23525acefdde7 *f5780dabf5b0f1426e7a09c5c45bac7a266eeab41c3eff4f3b73fd0f8703300058c7c9e96e63d3 *cd70c674c7740d87e99b9ab869a6eba6bbfba64e9f666aeaab7b13c3709a9dc3fb47bcbfbd9ff7 *f9039e8811cfd99f73728f391c751c230d8b40fa40e4afa10b8b63c1974d8cce678c4412766599 *295ef7e5cbb22d4305e4f9f618a459573f9bd1d6cc250b1e9129eaa5e76d4684bee7d375bf8b4f *4bc0cc3f733bb32d141d05d30fc07586e539372357afc9e28b9a6c1f99ef73ced9629bc6f8d6fd *9319aef99e8ca9119626109a7b7e7556ef8d0c6a911d3ebe869a1aaf327ccef72fa451bb750a52 *506e1baadb8fe1c729157a03b2532e457e9dab026a26c1131f39a9932dcec39dda8790b2f29f11 *e4cecc27ec1977eee9d81fc2c6c765a728e0d95a1464cd004748036811229b298e1ac4f7a4aed2 *fc0755c37dcf1f45ad840532fa993fafce5b59e48fb7c573b32bbebeb2fb202da5a4686e9ab9cd *3f18caa7d0574a84a4b10a02a5fbeb99cbe031e68a1c4f15c8c96d902a1352ea0c07f8ca5802b3 *3e448d165ac468f9f3c3d7996ebf8fd9f11cd7352fd282e41c2dd79939979db737d1b600fcb1e0 *9f8c717709cc6012032fb87941134d1e7af287ecd8406d6334e4c0e44029f1260aba43d052dc88 *f456940df37bf3fe6c709bafe4ef19fb3a1919a1037b42446a3d3521eb056ec0e281325186a447 *a96344c36453f88b5b9f575b9750daebd260d28cdc28136808a8a455b5b3fe0b0a7fc5156ca8f8 *e58e3d3a05f69531aeae6f33ee98de505a8aa23f5a325e66e5fd61145d76abe1cdd480f2f52cb6 *15e36310f78649b6d2078f82461bc0cd303fbd5aec3c607581bd793fb6b9b5f94e275063f2675b *21f36e3464337ad7ac46e7c88c5b7cf8f0c76dd4d4e84b55d4ca88d27fcfdc09ef9d78a0ae572c *cfb19269f8673bcf04f43a45abe1f0592f454f9f951530ed9b89f183de195235a760d0b85f8c2c *186d2c3283daa3a61a0160ae4505bc3b3435b8d0ac23abe3fa8d47ea74fad23ee7b7f63dadfef1 *163f6a6247b4f1d4b77e8bb46b4264abf6257e51cb0f4e560fbf6932056acdacad86bebac84226 *d4f024a7eada887179169555aedb92555c5fd43cc853b482709dc8bda1de93845408695284efdd *ebfdc554ef99632a28ddbf03a7468a86cd10577be470d61675401ee90a0be541f85e37dcc9e746 *ec865a7ab8dab23f44e444028ec721c0611d0c3a7b1ce2b72a1b2b667dae966ddb5fe4eb2e473d *aa2303e5edb9c74b74ff8c412d42db97aa58f1c9ec10eee04fcb54c0adb2840eba949629863540 *d715c73aa90063550741c6c93ee206800faadc1226f77dcbd811aa854b6f077b9e8c325a09035c *21c18a2936df1c825387421cb319e4abe3fa25adc8e8c857cb82de06909b711397161dfea64e4f *020664649991efafcd832a774799a79b237e0996508fa325d7e4f3523fa6ddd81b534d6ccd1c32 *9cbc858c36b9ffa96a758ea1e406ad926e3e484ba827762504e1cc73ca63fabd8a93209fb35348 *68cc8dbe563cd96f034197dd65b46cbb6261c29cb23128de4dd7a2b3568636b31df8acc44f8fcc *7d452175219c829746008bff04f339c7f72453bf148480662260c7de2f6b16c680cc40d95161df *50074320fcc3fc4e4c97e8a1a64aece2b60a99953bf9fc502cfc7592ce7267f0d7bd65ba6d2e7a *a50103438a9c7fb7c7d1b25f0b2090b02626359e9065b341ce0ea0244e73bcdf2ba9a5c3e36c75 *7658d2e242e51da4426247afa40e4c8c9bec8760cc0e375213c3e45f8dcc32fcd58d9455b26b9a *789c10e13c20efbfb4ed49ad5dff5a8e8a39b1deb6765e3ec3e54dfd34b92871a5bc6f051b7e85 *928512ceb6ea6ed9eae5b31501c94ad6bcd798da3d9da9de2374f087dbfb93bea37918ce97418c *da8556497f47f75376cdf6fa473c6fec44840d8f12db5b939686a23a76a69f9ff377cd93a1af75 *e7c576c63f7508898cf554802509dec6f3abf6b180624229a8f43530cd0813c5224b249a14b0fa *8f7f9007dee469fd18eda23d8aa2d9b154cfe48fd2ae6bc773baa7c171fef7403940dbd117fe67 *a6b700f16415c821598e1d75f545f99ad0e395ea202b7ba66182a7a46dca2965a9b8cbcfefde2c *5c3292801dea0307dde8460cca95f8bba88958fe38347af62b5521ef1d60232598637f8ed4484e *6a8d6fa41df5e8a0187bd39cc8517bc7f22dfc0e80a7da0c2d8dbc64a619fde8edda579e91ba7c *caa897e0180b1df857ad9605269982ae9436be28a100e843c0e5584ce7d63d00221641b93b9750 *11fe7ea306efe9d039bb77321d9ce1a28a76ac7bcabde10e2633f51b4cb03ab8d86e40f2953fda *06393e8750e218fde7104ad24242dbda6016d40e62a2285d659aeaeef053108ef7ab6ff730d4b0 *5fb1caac7ac36b518c1a9b3623f94a69a4311159192b8537d0df551263832787384a80112b148e *98c911bcd7f934f69d04941736fd58e4f5590356f13964b2987246b77ed2db1a437931418b5258 *0e47de235b877d27f200f8b74bf4d9294ba0c09da62d4cd299268cbec410a7583622db2bf59a1a *635f17b317ecff6b98c24e795f7000bdc9fbd8ee606165550a71aa2914a441f18f7fba46605108 *476c8e1ae842a9827b4cc34fe711b55c19dab73cf3b4d2b95424a95fd21fbde25a3446a9441364 *d56a7fcf8c343fd3fc34eed162435807d8563286a5b66dff60a6ab114b414d8f57a4de8de63c06 *995270f10a30d4cbc0b317ce449092bbcc272b7f87708bc1868817a952bc5a08d80e3151d61906 *efb92b8715f08c5309c4f9ec8cbce8a27826d4b2c36ce4863d439e80eb0ae9dbb263438956a06b *85a90e14f79c2007a029e7e4327272e0632ea53ea2501d46be4984462b5508537f636af6cbe993 *cdf05cc7745c4a92fbeecb76ed520bb131be478aded882058a53b6e2c39e3445c45c0f29c8c7b7 *7b38f5034f2ef730d1c1404abe739ff8d459ee10dc6cb2bce53fd95ffa0687538c3ff177edd522 *3e1b86d857884f0b0f649c49dbb8659a73cffe707d574faeaa51acafd5675969a091576f8acb7f *d2628c65f4831ef36b0c04806688f2e146632739a5d7aa6de0921fe50043b3e3d4530f3507553e *5b8489d6be4dbe287c32474aeb7a085306f4f7eedec5d86430ea5eda182c0ae3a2a8b34d727412 *9482559cb258961ae27ce79d79134cd2e99ac589c83d0f0dfdf934b9e9f333dbaf1da93ce93b99 *566ef1be06f9a91702d2c95c3e201d01a28b1f1c88a815c5e20e7f258b7665da9730d4b4ccc9e3 *998a1bcb03b085f68344b241b21b2b9b5804f3f07b0823827679482a527e5176dfe0feb3da87ab *1bd991ce68a8970d3bc5a103dde8771a86af6662ecf78a62c3c4a3e11e662e50e9f3888777e613 *0d63dfa37b3b33584445eca9db7e951794b3d0ba7874a79dcff850b2f599a2680e66e5a385235e *46bea7bffca40a1c5db7f9e01ba1781469285ffccdf74160735e543f92c34cc841afb29af2bd45 *cd962bed901871a9ccabd2574d169263588fa942fb0ce8d810466bf3958edd7a145153d0ba4f51 *914f0a4d4cbe906c42e04611e30c5c6cc50e7a9ec7c201cf7feecc269f94d3150ae5358f35e8ac *63565f00de1778d2c9e6bc1c7114d34c85ea65efb66b57f7cc863ad9700bdc250054c3ad03ab2c *5ba620800a014d04c1ef3815da60462af000190f514c7f908c6b063eddf276f03cb112f56aa3fb *93842a68b4d58697f756373230a7ac7a161ebd7d0813a263ff195f9e2bb8ce4672b180221ff227 *dbc4e69341231267a05ad9426366047930c817272dc8d85d91da7afd06daa588252c9d7db8a0de *34829e2cdc9a2abddc76cde69bbb76619f8997d47e6286c8277bd8291cc52a2ebceec5a4ef328c *a4ce839be3663b08cd2e5b34c8c8c989eebdd66114cce9f4f750754d88f8cd45ab21389cd94700 *a1c38a4ee8ec3296103b30e2f031697b7688a0f49d768fe4eb1c65ebb628ee6718b4ee88bdb258 *a44aa435bc192b38e1fdfb0b47c92e20e624fa37bdea07c16850791abf939c4b805aefe3d81db6 *a0e3cd5b3dfb29b2913cccbc476342fa6d6ed7bee9a781de2321dc41cc6b912aa939498ceb30e9 *4ebdd9a5525bedb73e854160cacb748807f294a17af5d2221007bf6cfd54ef4f91861959ca3772 *886477400d7e7ab596a8a9ffbcd579e8bbe7c26d2da9d5e95970435bf488ed61630d6366bd34df *6c5d1811d6eb3c73bcfad7692d7b04bb6fe88f99d694b40d6d68b635072a13062d4ec31e8a1de8 *dfa9b8cf8647d5d170907e47175c9701dfb48b73ebc5269a6fc7dfffbac79329a6189cb009a2a3 *70d3325119f628d100815bbc72588a458ac1e37b52aa194cd37f42668970e3c1763ff943464f4d *67c0a0d7aafba91ebe31cbb3c331ab1af4c8f4ef568aaf0a6e4fd8d3babb771176ef06a779bba9 *c991f4cbd8011d5ab5958e2da79e61b7b7e0e11349684c2d97585bbc44a234318820793cfc09ed *dbdbdc7c9ccadb55e970c63e29cfa752c9c12372e648053492e5af889b9c7f2f73756aaacf79e5 *f30ad18dfb5af0ea292d9d794eda5a7f01a62a66b81e7fadd3feb1372147bf302efb4c996f65b6 *9e57840236015b24619d33f9cb1d1a95fb67d984f2a69fd05a638e65947161d5aa710fa76db0ea *5442862d3610d13a3f39205e1108c308a7e9d49311f825dec1ee503593d2bdf11273bff8028bf5 *948a8519389f3de7b7939e856e45da61ebc63f54385aaf303de5107126efbe4e94f23df3f2c434 *b2030875a5717cb349842b591ac35362dbdf2d61643577cda9356216cea48d34325a72f380fb4a *f38ba7ff1ef137aae0c9654c55a9240eeaac135c83e51390b9e7d7f54cf93cdd5ded2a54feda0c *e276958175876233b00cd40061449261591575cf7b61b75e9e6b27123c03d2db2f22f58462696a *149af2757e3f92c416a47f23444768d6f40667596630023ff1b5122a2f04ddbba82b27cd764f05 *25588ac1bcaef23813cb3b9e28c74f4e578b39a60d00d154d716b5ce692385b3327c35ca9acaf0 *0b2656c294669589b8cf72de6e1a2fefeb81d6440a2c5647b0f3f36a864d6c819ea9eebf69d525 *26e5a2cc83d1220d123d57f97764110d0d1400556402cd51e97ebe5a71a93a2e83ce3e8eae6307 *dc29bad602b804b0135021c96eb998c77dcb509f1df770e9322ccc7408a54d5528bbf43b4a87dc *b96fc79f02aea20926f3a7b999905e5c2fd667c84fc03851d6187350e8ed32b566b759e4de67c2 *28d7c7ec75dc778e3fe0bf96c6cedbfe3afd37ada36c46f6fc86ba11691b72882a01d896a11fd6 *056c638146f2f8009789b00ba9e50d3db06be84d9a585ab538aa75dfb61a614aa4e3d5693b8cdd *84bbe3d6b6d0a5b8f1111a5248c3daab79e7dc8e9f39d4cfa1af07d8a4c796e8d8f6087a71554b *5212cabfa71518cb9795697d0919fbf6741e6caa41647ffed7a17846110e3b1aa321eb4f398127 *b3dd3b710b6b3c62050ae13d38878c5db45b0027ab865429014bdeaebac85b62cf1e38812b3c35 *507682551f830be41b826179763240a21db7d8cea964106e50afd1c70db63d53e2fd4f5e872800 *efb56ad0e0129d6e7e4c87f896f0de9b10ab7a87560525398dae6b6d9119b3e41d2ce35b9c656a *9f32d1d2155226cb3e31bcfdd09c7c1ed3d3116db57f6e765d64b147e28aab12835c0eb475ff82 *d34602e231f7c71812470db49c490feca9c29cafd2b270f1fa101393526a07533b0725bf7d42ad *b7c6a9821ecd3824bc1dcb59767bf6750699ce08b8e48af3e3810491dbbac745cf90f8f4613d6c *ff5c7413ea981d3c6985e7404111e4a130cf55e2bc5d05e6c3d36939fceccab4f4244d1b934c2c *2f9a9b946aad6f242995930b50d4476952c56daffa9a8553f8bc1c8e42713c1099f8559132923d *3fe28f7f78b71f54a82b76cf6ec09ff4fac90df352bf89719984300a257e7d63d82a1e4ccc8c9e *f5c7c7c2fde473482c6555abf41fa6099d6746e29ab9d1875fab0422bfb16b35688f59993f6eb4 *fde66231d5aff8566bf0e6b171cf94dea3b3d7af13e9f65783b716541c487cc91dd3c673bf57f5 *d639a25cbe102ccf5312f7e2a2e5aa09c99585561755a00da510723a5fe4781310d886f796c868 *f1fda8c9c5df0c467bb936fb8683c07233c24ff6bd0ffe0f1a66cd273342ad71e95d695f2c45bf *9e4351f634973017285b230595d272814a74b21d12edbc23f64bd8da761712fa297c247e39e400 *be75b04f2ae2b7dce22fe366a5f35f2f26e260f11d1de185df8f1b2d21a4c7484bcf9024a2d6a0 *4c4daad5d3c2ddb23228b55b3fadc09b8762b14bcac2b6a044d36da9338c5d4c80c6ed9dbadc79 *aed1a842745a31bf399ab9563bb2fabe6c964e335262b5fea3a295997bbec7c29aa5dec29d78e5 *5260ecf7dda64187160c81c78e122c9315e6d52ffd6c6d43071b2adc6c4c6f6cd703720ba241b7 *76315fe97204b874fbf51375356a50063ae307a71e1f49e002e954a88b6c524ade37bdb1f78081 *ac11e1ff25c0ff07ff27020777473b6f5f2f0f3b6f37c0ff00c50bf533656e6473747265616d0a *656e646f626a0a31372030206f626a203c3c0a2f54797065202f466f6e740a2f53756274797065 *202f54797065310a2f456e636f64696e6720313532203020520a2f46697273744368617220320a *2f4c61737443686172203132320a2f57696474687320313534203020520a2f42617365466f6e74 *202f434b444648432b55525750616c6c6164696f4c2d426f6c640a2f466f6e7444657363726970 *746f72203135203020520a3e3e20656e646f626a0a31352030206f626a203c3c0a2f417363656e *74203730380a2f436170486569676874203637320a2f44657363656e74202d3236360a2f466f6e *744e616d65202f434b444648432b55525750616c6c6164696f4c2d426f6c640a2f4974616c6963 *416e676c6520300a2f5374656d56203132330a2f58486569676874203437310a2f466f6e744242 *6f78205b2d313532202d3330312031303030203933355d0a2f466c61677320340a2f4368617253 *657420282f66692f71756f746572696768742f706572696f642f7a65726f2f6f6e652f74776f2f *74687265652f666f75722f666976652f7369782f736576656e2f65696768742f6e696e652f412f *422f432f442f452f462f472f482f492f4a2f4b2f4c2f4d2f4e2f4f2f502f522f532f542f562f57 *2f592f71756f74656c6566742f612f622f632f642f652f662f672f682f692f6a2f6c2f6d2f6e2f *6f2f702f722f732f742f752f762f772f782f792f7a290a2f466f6e7446696c6520313620302052 *0a3e3e20656e646f626a0a3135342030206f626a0a5b3631312030203020302030203020302030 *203020302030203020302030203020302030203020302030203020302030203020302030203020 *302030203020302030203020302030203020302032373820302030203020302030203020323530 *203020353030203530302035303020353030203530302035303020353030203530302035303020 *353030203020302030203020302030203020373738203636372037323220383333203631312035 *353620383333203833332033383920333839203737382036313120313030302038333320383333 *203631312030203732322036313120363637203020373738203130303020302036363720302030 *203020302030203020323738203530302036313120343434203631312035303020333839203535 *362036313120333333203333332030203333332038383920363131203535362036313120302033 *38392034343420333333203631312035353620383333203530302035353620353030205d0a656e *646f626a0a362030206f626a203c3c0a2f4c656e6774683120313633380a2f4c656e6774683220 *32343433320a2f4c656e67746833203533320a2f4c656e67746820323533343820202020200a2f *46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78daac7465545dddb2 *25c1dd2138077777777777d7831ddcdddd9d000182bb1324b8bbbbbb4b704be77eb75fbf1eaffb *57f7fbb1c7d8256bd6ac9a6b150589b21a838839c8d44212e4e0cac0c2c8cc0bd050d55236b1b3 *33310782e4195441f62680bf6e0e780a0a31670b135720c841dcc4d58217a065610e10b73003b0 *b20258787878e029006220472f67a095b52b80fa2f060d1d1dfd7f7afe950230f5fa8fc8df932e *402b0700e5df1f770b3b90a3bd8583eb5f88ffe7836a161600576b0b8025d0ce0220a6a4ac23a3 *2805a09652d40048593858389bd80194dd4ced80660079a09985838b050dc012e40cb0fbb70130 *03399803ffd59a0be35f2c11178009c0c5d1c20cf8f79885a79985e3bf42f400470b677ba08bcb *df7f00d00560e56ce2e0fa7706ae2000d0c1cccecdfc5f04fefa2d41ff10727406fdcdb0ff1bfb *0ba60c7271753173063aba02fe56551697fc374f576b13d77fd57601fe0d0340967f33cd41666e *ff6ae99fd85f98bf515713a0830bc0d5c2d3f55fb54c2d00e64017473b13afbfb5ff82393a03ff *a1e1e60274b0fa4f06f400670b2b1367733b0b1797bf307fb1ff359dffec13f0bf756fe2e868e7 *f5cf69d03f59ff8b03d0d5c5c2ce92119e85f56f4d33d7bfb5ad800ef04cffba2a320e9620000b *f3bffde66e8eff1173b770fe6740d4ffba33347f499898831cecbc00e61696f04c8a20d7bf2501 *d4ff6f2a33fef789fcdf20f17f8bc0ff2df2feff89fb5f35fadf1ef1ffef7bfeafd0926e76768a *26f616ff1c02fcc78e01c803feb5641cfe8f6c137ba09dd7ff2dffbf666a59fc9be4ff1546c6d5 *e4ef28441cacfecac1ccc8fc6f27d04512e86961ae0c7435b306589ad8fd9dd33f7e0d07730b67 *3ba083c55f3dff192580818599f9bfc4d4ad8166b60eff1a3cc7bf43160ee6ff95fb5f89fe61ce *a4a2a6a9ac2541f77feed47ff294ff6aefaaeee5f897daff6c450164febf8c7fa1888a823c013e *0c2c9c9c0006566eb6bf4f8e9505c0c3cee6f77fa9f80f10cb7fda0a26aece404f80dedfb69959 *fe69fe7f7eff6919fc171809073390f9bf6e8b9aab8983f9df0bf6bf1cff73064027370b19f1bf *9db3b2b0b0ffbb96999bb3f35fb5ffd9047f47f11ff63f0fc0c2c2d3c20c7e750964c6176a9399 *93e55af7357f68425cafaf87056228ccb1b451fd4761600da83b20337287a7d2f8bd368cb1698a *f7f3a7d7e299e3c7812cede1480fb61d5577bac55501811f194d6f21da26650717dd6130936129 *52d6b956accff582fc36a42e27b3e6e1ee848aaa61c93b34e154079b33ecf5134d20997b612026 *f9a323b2bf5946430256276a13187a5dd1d93965cac9d323d5c0e8f0d060f72d54ef013e5d5e02 *1c059f3b2412654ca0531ebe90ae46854455ab66db5eb71e97a9bfe4da87ac922b5e584ef3d3f2 *70c07045fa95cd283ff458704ed027cb3e83ced0567d379fdd843e7f72fa46f80c66c44d748bf5 *a3e6e44a7c1b76cd26d1abd40de61f9d78cf51cf6d9ce747632d0efc515be92fba773b79822c81 *6aa7aaa7d5c25cddc3572fe31f3efd5a929a7afe6f7722661929351cce805016a9d7f5e4fc2ef2 *2f23d1dc4c60dd5e1a0ae8faeaec1a6c60e0759ff6a499cc52889eea449e6b8b82be7826394924 *ba3b14cf5826e2f8efd96be2c61c6de7df0480edae3633131590b9c407ab50db42d27334603bb4 *646f648fcd4e9b230dd38eb0620444d501b6abb4f4a26397a92f4e4ae2fb532c6fb564dfcd2b68 *0330960eb9e2a9d5f2c1e0587961340e634a3565856330e9c9a09d7f90add938a85f62d3be3dbf *6e97ea21bc9bc719945cb050e09bfe7cc4ad4e358e70b81e4fc825038e316b044340ab09f1134a *2d165e6798e4f70d0776aeaac307c34873e67f54e6aaca306120c2f78fec8cb878acd991dc6e89 *7ec3aa48c9f48800851a1b598535579f65b0e2dfe55e7326d7aa195e9f7cc9304a355775c624a1 *2efa1ca9ef3c77d06ae300340f6c0239d763b71e0f72a2c4c75806f3231227852eb56f7118b287 *361a96f5a4839a9887fc5a814dae86c5a26c931f9a601db4e980ec900fc85e01d91f35545bab7e *14298f1fc58f526817ded45955995d71915e2545d294daac59f27cd581bbb3a449e350c962e0ad *81e2bceedff308a84e363656023ef976fd7644f1a45cf8e996c9be450045b1b4d971512c742251 *6b63ab33459f0bf63be66ad8a4bb124671f2f72e35c52e14223023dcd0bf825fb59a654f065e2b *c1a8d375f4e4673e13ffc423881a4aeae69e12e5a9272040cab60d9752db83ece91c8713c4c8cf *3581fc840add06a737250e3fecdedb91fad0448e8e6a8ca08f780a22caeb2c9fc621770ec58b3c *1e20399c02aecd92b5c529daa1ace8870f8b73748fedc5d2e9576bade2e588bb24da430a8735b3 *d942dbd97f3b4d9d6b64bb77ac669defa46e6700e6781fd1597f5b44dc5bd05626ea9ce3266667 *ee87cadb2864c8c71a8398c419c746d6e939357e4a44dd20ca1b40284952ca6f4d23685aac782d *e0e8f533309f0c8d661dc6d30fb31b1d55226f19ad0d930bf1c0f6eca96b1afab1daa3bb053cec *91cc8850b925a49d1b3b4d39355658886f08333fdcde66f844c97e28d87561cfaf8e36592a771e *e1507b2e5cc3ea7a63dcf6b3068f6a94cd36228dc8af13a8e3f1ee586158c4a79e5c99b64e1c62 *183bb8e2c97f49d54fbc4fdedff02c663119c72c4af72bcfacad0e53523f4c599382ac29e28104 *a0c5149e78fefad19935a5297d43320500f4220528715ff4672e556f1304bf571a468462dad3d3 *52922146c1d5ebf8860073ecfdfad7df24a5c55f3476e6f385804625114d3d9d7d15bbf711087e *4c2f70fc5d5691e46a3596a80dd39294c608680a47585a611b3eb03a9a7bcc6fd1bfe3df92eedd *e024cb4b45a7955d2a9ebe35ea47faf7c8c81e5b23f447f50ab06ae9110020c0036ff16a48549e *82ea9c5e847548e3b5a35aeed874ed8d160103ec52be5b6590c16d96d15ddc3e0404e73d67f599 *ee6393c9f65b1d8a117bc7b9869bb7850609b2a28133824a3abe1eb57bd7df25b402c0a1aa5415 *ac6ae02a7a6e60f8497c13215c7faf62fc3914834c7393d58dcb6340be0b3d306bdaeaaeacb08b *1189fccafe45e62d5ab684a2aa6fd30a9d592d98466ee586465cc9754d33ac25c9c6167824fffd *d44ce72a976cf8c88f9457b544b3bed82f665dc0c754cdaf40068b2292c420e64094ede0503e16 *5c63cca3e23b87714cc3633856c4689e30e9915bb8dd88c7a00b09b9845d1441ea859c805b023d *99f5eb7b67b2bda6f1a96d8648ab413c6331a348c86fddae1b03b2ef10c4f7383239026e6784be *075181a99d25a93db01e479d1617c10f383e88ec75db9c65c17a1ea08a6b6ca642c57adfac9b6b *ad180e45ce3cef45f6ae1aad3287b9d44a071e2ffd60245e796af79be433750f31e894bb1ef74a *53669d0e25163425db9673a125d91f4844516e4804027fca76059593f78086c5718bde8aaf7839 *c6b4d68067aea8fdd7b26a67fdf711d9a28e60780b4512e7eaadcde307c2c501dd97f16833d3c9 *00ee09b17ef537e933570291ef5d4d066ec496221fd5c6164596982581dc951497817e86da2178 *568faad34b512a4250518301509f43a98c8c392f509f5fc7de984b9aafb684ac9463492b7f5143 *f92f5c935ad59fd472428ba61e444ff7550cce3764768ddff7039789d46eca4d5e1e8f16878f1b *aec0f510c605d4f2fadf2710ce66cad15d8bde3cd6eb557574c1f98f5e5cd775d745fbd23d60be *c3475b9fc4ef292ed0d49e95fd61835489e538d400577730b5e62dd2e434afc56b00284188fa21 *12cd9879398dfb19d391023f402b2d9948104ce0950bef7cbcc90937c2dd0b937cf9aff95e0b47 *cd38da9b6132485d06d28afbb51a50ebb1ccbf37a82ee4561c390ba5b40817100a8ba1c86e6661 *b8ef4271ddc1002db7dfc5871bc15fd7895784a0ac5c27fe6450044b8706a59e5723db0bfc04c7 *bc1dcfbb8532ce2c4c31472541479641e65f7507b3f8e00b535a4e46e66fa92965769abb539044 *6a39e0a1adb092e2df76d3fa36273fae0bf1ed0373f49c287e7a87e2f57d1f5537464932f03ca8 *69462a7721bb19cd233314f11d88b51ec8ee535f89fca7ae99df2eaec98feb1a33b17f6002423c *b54cb411751a17ea734b2f1c22ed4fd62fcdba288229ed8558f5480179d54830015943f2d5724a *3d4e43f6856aadf9c54583de7522376429af193697cd94b0e2093dcd39a24b299571eda738f76f *e2cb8e692a70af0bab5a820c1ceaa53218384297903958f46ad14c9a6b2ed962673e67e119e2c2 *b5bc65d14f2769b6e12fadd05cf0e2ef36cfc22c00eb6532736566d97acc19efae836756649bf5 *f5075c025575051ea3ca99c035c415a4b8275bc2feb07c777405398d8ac6ef8acfb4255e108865 *f79a4cac8460514c7b796985707c6f64d5cb871118cbf5fdce555d939fef313e7363c59535f68b *26a78dbfd16faf8ade67f7816f7d59e254489261b0917b2ff09022b97c5959c044f12e44fd69c3 *51df9fb670024901cd0cade56696b80c54ed94644a8c0cef076aa4e91f05eb1784226c8a26b525 *c9e770db753f3521270d6bbdf004982c4cebc5736a50544c4e80e43f73aab1a8a4f8c7f8c916c3 *f5421f365dd37aa42cbfb1be94cf84699b121d1ce37816b235cd0534ff5c500d70f1f7c1c8c6cb *66cab0762544d593212a9f1c31a08dde841c70f61654a77ddcdfc6f4d41f2d52023aeb015d37c8 *8f9502ea320dbe7629c902a6ef51d55d24b14e4413aec955b33641c3a33569c7d2f4c79477c108 *db0fb58861af6399b93fa19142499294794b6b25873cda8321c926b5a3e633e6388cb2ec431569 *6dbf9ae9d210191da149ab5973cd72fa739b3da92b3c57b72318640faa345b9d31b84d4a34f8a3 *395ea26351d7fa136047a8464c73c9abec95400708f6c60c55855301df439f219233ed46716e30 *b25823404f9a7e2c4d912d26cf03865d4c75375784b224d0d18a47e818cfd809027fa4995a4751 *73efedc1f7e6c532641cd3e3b82b2cfdebb032aac96471a114784773e2e7224b5cf92c04d94c59 *7ed8e5e891a8d5654ce0a6240a01b4682bea8daefd53d882301539496485b40f1023e326cc123e *a648c03a7e6d16043e39f5d435f81b7fb2cc29aab3f86f592349cb20de64d71dcb37efc7a1d272 *e0579ef97a37eb74316456db7ebe84bd5612b33b295ad45d7dd37889fd79bcaf9f34f81bb1331a *3c12717e8553f6ca1c5c28bed9a3d735b6a7a91f06f2ee4d18b3f9effe991a8052ac1df67c872a *7885678607a71df96ab89801063fbe4d4fee67246450e7fafcaae529e468f315402f3ceecc32d1 *e5bb4049458679466a5f5bcdb926c51a8175a43b605192524c0965cda6c85e1be5f8b5fd060677 *60c25e14e660e8628bda92d967a90c2def254ff177302c9de43d8322f66df50b553885bc24d775 *3ed1758549a1f03265d34424272f6c95f7c229893fd3829c8b2e7d167691b6459dd693aeb834b5 *c3ca168b34ec5b3827d313a841af62c1c1598eaaf63c3c1c5c27dcfc9c567b5021ba551bd9cc57 *042622f9c5e1b6f7506610738fbace9623800ebe303659c6ae5cd344d9b805254135c19e150437 *dc4e2fdb77726c1ca6b852cbc6bc899b108b76b2838b8cc64214d32af718857e3f6fe76d8e0d41 *d5d5bb7b6c845d4497f18363a62cf40a2c19f5a666eb0d5a06585bed23abf71b1b2a1a297eeea2 *1545fc8352ac33434301f64114ac10ffec0a8c2f6422393de4ccfce5b218b04a3f0af72df16e51 *be5a06c8a715b0e3cef005356c17479e9a0b4884f2bc28186e8a49b257b7c5db5cf5e7d9cf96a0 *d466589e1d5b80ee995847e038d512ccd7a7664e95b5c8e6f1bd8f88c157021f22197c1ce56413 *470ce71b8fe13776043306282704476fc9943df564fcb8ddcb4ce9d0ada181e76b0959f8dead4a *b49b47dfebc1a6cf431e652a8c902ab872d10855f3423daaf80bda7db7a153048930fcc90e6fbc *c61ead6925ff0949c4523e799e9dd87afa80b4c3d29653480755bc8caed78564b6f5af72d77234 *400a9ad0add9b1604be24b6571288f672efee102ec8f305e97c46ef2f993907aa335e19cced9b8 *79fe0b3f4eccd8fce6a08c8afb4c10d4a8630161cb941104dea74e9c9e916ddb6f91b7420c18d3 *5b84582be3c417011b5f8c8b52792f3e9eaf03e7623c0f19ee4b46f0f679ca91d5e4ca99e5d335 *7ac2378a18a1fef2c9e4f05f07483c160418f476c28ef6f5d0fb3b1249399fb7d45c4bcbd468b8 *9ea27dc7e315b787e4d4bc933914d4feacc3fa6b0f44f698690c914165600c1668b9d8c9af7b81 *a7624b95087ad98e8f198b0d5cfc31c4fcd23875b676e93966fd582ef59493e7464436a4fe3bef *dc351295e09e52f49ec4fc70ef328dfa0c98238db2808e9462b767cb95e0beb01d5dbb1ee397d9 *a7af26947e058df5a457461071aa7fdbe4d058521fecdcd9923434959182197e6ed28a1b28f1d9 *5e61003360786d076a3879197fe8142a11efcc6d43b5190de05219ec30bc7a6e53c8e03ad56a69 *64bb29146919cb830261db04ed9571890b97d98aca1b8b8044c8fd43c6b2c7b5e57864cda655ff *9cccc24f685f3c6febb5facdab6bb7e4b5d8aa9349c65d36caf8c4bdc9b72aadf4800982c81801 *53bfbb6d762da235b00fe8107d7bc1cf2956353ba2e10cd0632b8f167c94f5e02b7b1a0fb3f42a *dec7cbb8d2ab6781f05ceaaa8dc262542f33822b7bdef0eb1d18584e183f833bfd365396878983 *82fc770fa0dc0fa1a2e9555773ba050f06acb5ab9c390b9807db8b5d15a71655f439efbc62b425 *60d7f305857ec1ca32804e730d38d3314cba4a804b214f75f802dad2b488a3513e1082ea04e566 *0d3cbdacb39a70e64110944293b6677a828ac30826e24a710d412d392722a36f17c7741346eacd *df45ae1ef18011ecf1ee73d13d37f6b3cf42c5706ebe46fcb3570291a928e6fa7275bddfebddb4 *fd266b583069a8e9ed98f6980e2df2a6f5752496e79c4e8f68d050907be5ec356525e375d23f46 *eceb8fe483b586ef859e9b6d19a79f0fbe1c6c99777aeb5da5f2af704d7bd3175e3970892f17c9 *1980760b02925deab516ea415d29cdaf8ad12e33fa991a63c811829d6348d4efe0bd6d53b2559b *7336c0e74ef8db4908aa44f3ac5610769bf2e770678347e64f9272db56c94fc4df4a2af6d176bf *36f2e7696c8a25d33476951662b0789296a91bc75f8ef6aa06c45a1c4e4a45b79646f6f567ebbe *e96fcfd148fb8bf1447deb9b744f82450cc654e3c49a88c5843fa22beeafb2235ac0c4379634c7 *a5f72b399f4d38a3a66b7ba2860f25ebba825db776980d21751e66461cd6f6a2e0894ff9d017be *673d501c553854253670a6f3ab50498aa0ec3e90f0a1f9f8aae8fcf5b50be1888a815abd95555d *9332fe4067fc8d1a58dfe905275cd94868a8c296eba8a8decf6a248a46037a1b671bfc3a6e9ef1 *e87ad79df2fbbd903c2f366fb696593a18f75a433da77ec642ec14cee208f2303593da69e12933 *f98ed9174aceac7e8e3cc1b62139936bc28f1f764b27a94556af97cbaa95c5ab9985dd1552f585 *406fff14a2a9501f096c3a6b4e3f1fb681869c2665929975808fed47036c7094a9250827ead5e7 *39187fa32327df9d8da6caf68da6f4183a4f63b6d7190fdc77286d222bedc5713666de85fffcee *2bf9554c34ed3df21a0c555cb1701c8a51b2e4f786ef7b5a53a3753119932a5a0627fd63af534e *19866e1833580e6bd4750d6ba96ef312d464099c85e0a49eda08ce8845b79e02030cce98ecf540 *c6a943b4b8f04924b99770cfe24c8829561219bf4b668c923c0b3492b15de9d6a746f65364dcf4 *03e68c7ac7faf6e50dca1e48488fa7d1e0c8dab34acaae666a60507d4054cfd7956f1fa9df3f7f *8ac0cff31159d58ab16bac82aea625119f99203887a74fb62e0255e55278ac317847e6500cc27a *5606426f081619a95ac20697542afc1f7f3774a46470dbba406e64c22522a71342395ce7127e99 *a29ad9b1a0e589f9a3f5e71e85bbd6e3251b27c0da1fc868531e07d5aa854ab44fed3baf38d2b7 *6285868a1494486133d5c63e025e423bc943f1d32b21ff1a4530da70ea6d9296bd25b097aa843d *b4edd7b138e67035e4a2c8c53782be4f95ba78a838b798544e37782c3068fe6c9f63384b34ff6b *f21812d56b0cdfafe824ec2bcb8e33a6bb51300c9d65716ffa9ed3611ef3ee106c5b96028e370a *55cd7cc2bb43a9ef11d5da5b7ee57f2e4bc0f535f266a91fff6852e283baaa904d00a87f6c9e90 *b47f2c531a37f7839042eb2b7e49e4885ec2dc7c43f133966f936fb7511d786bccdd9bfb31108f *84b805306214222d40aeeafef62123d3d1effdb8ee6580fc41822b7445d2d8af32bebb8da1c8fb *0b96a72d8d4b458ebf59e9ec9d587bcadb7449ce641d6401f7b9d0fea09338f38d5f042d2a1e2d *aa920e822ef61afacb21968ff663aa82e28bc6d05b09bbdb330a4f3b926d0d5890cf9052cff356 *4326eb22effb4310568ddb4cd9fed773c5029d5d95a8fcebddd6116554ec8e7cf16fe1e4bf5b17 *dc96d804cde48de2d1571ab1a58a9977dd30086207229e40bd9bee1329f3a2cab0f7e777ab060b *27fa90c379fd614891ebfb72b6b832ec9ce08b7e891c958e9ae773be97eda3f52c6de1dce0f3ca *4f5a3269887369d4d297a52825db392add9841249e871412775a6a227a6b31ce0876bb78e1f695 *f9906cdbcef7aec33dc67c7514f4e5cbc58a561b551a76c3a52c74fad3dc57a3d163f2e392ae9b *afcc3f434213c01d20b0e52dde84087690fafc829fd539265e222ee8e2cbc333cb093899d32e95 *f9a315bcf5871a99bfdfb0368d483de3fd895cf58ad98f5439aacc6cea887cf494805cefb212f2 *9a20ecc3a7aa7c55bbaf6134655aeaf04ed5c88e8aebb7bdfec6da2d272bf3a451c7b42f0d0387 *5bca7e4fb92035f97cbdd13b5291cc8e32c9e8fa7d6aa24a531fbb99dfd7100fc0a46616451fd0 *bfceabb9a72dea420619761b84b120e86c32cd89fcbe1d1c5c7da3b8d847298ab6b60a0323b75f *a9ae8c1646e7f6ce8a5be4e11f40d95f2410532349fdf453cfd2a908ce022b7118dc8b78952dbc *4f7daaf33e512d5073e1db29892b2dfa2c312caffdf3254d4e2568d00c313bc27bd7b61f49f37b *03ec9a3a10a2edcb2fa90f9189a046713df03defbec24f5eccc131ad7575bda223b8c7ac3f577a *013f7fcbb2708360966c3a859b674dec7d43191e2b0e43f953b3547f49bf1c8e28030cdafd2758 *933c9b7db14bcda6477f5d5001c5bbce28b4a24e4b2d944f1933886d44218d7177092111da7c3a *fcc76cb337721f9f6335e8ba6f9e250ab54647daee6ebae8b8ea8064b780255c11bd8ce0d8bd4c *ad2a77595cf08c1918ac312c9b8da34510d9f213b74e4bca78dbb91a0e178f4333cd97c26b0be2 *bc7c61fd56da5f55de7ef004acd003cfb88a2d0f197e84e44ecd07e7ab3269d52fa8df6ddd5abe *100fb75073e6b60006e27317d278c9279bc3fd4d4e39a119b927bd0e359b781e3e338fb5ecbb8c *d487e054020c3b9cb4b8efe5e50bc5ea899a57ce18c94fa64bfc650f7378be10932639091468ee *775046d4453ae9719b05d9740299cc856708d86bee20a6f3a3fb034eb3a63de74a829cb4fbe371 *ac7c5d0e602270015e30129fcd163a07e9c0c569469d1e59a0b0809ffba1e27b6704e3049c3613 *6abe50dd0a4a80cbb1c1f0da7409734c80a9b77a86656126adf0a03d21c268cc4fe8769d971f2b *d7f1352f8105921501913c001d56616b6ac366c35ee7a8e5a55fe9bb3784eb0b434a411c469ed8 *c345eba821c32842971ef00589b50b60738fa63bd4a8ce326216b9e37e348e3cf4a068134a5809 *2a7afc602c2e4aed2f132f1abd3b76692cc05f862a878e5d1886fcea90dfb24acee7f929866b2e *9e061a9583e9cb7d9e7e6abc9b89bc4711508f8a717603de3d6d2a43b66aae90f33a806cd20263 *38818465e722e7a653949a099e99f8d22804e30adc60634ee4b69b52f78763aab541cf6f02db89 *d2c4f79c8dd9f9f5d29dd4fbc315a4cdf711503f5bee19395489614a0db5733d483ecccbc4d0b1 *1d3a6d382a0b6ea5bd3eaaba0320195d4baaa038cdd7182e55f8c356f831d37f605e0d210063a8 *58b9b54c64d509c11b159000813bdff02fba29767fe61cbbfa3ab19c3bb352f888250f84b7935d *3de4984b4c10538bc45da85805db7a915216c9dbe67f9f7b4931dfadc2abe407e432ab4de55016 *efed048944f06163fec1b1ac4f2aad9cbc75b8882f4cd0762443ce2dc9ee0cf44c60729e3a7cd0 *913f892b8ccca9db22624482962c1a47d6a4eeb68bd3c98ca252df610d3c802033b4e6b82425aa *0dbab6081a2a5341b6a9d5b452b5500c328fdd21a8b10d9683113176dc639af926b01e3054a8e3 *7e01fcf352ffb587800791f5d4d97e0b7ba39841e6803b119c2e59a28e8c5bd7368734a94aa3cd *1b99cddba03cd3f069fd61178641416e9481195967386ef45cf64480a0e5605b1dd499240bbae1 *33ca4d6d41594bb25b2b9fa2b62df10c90d1c5ac4ae50d40eee27e171b53d269fc6d3c6453fab0 *4ff32da244b887288cd5f9e7f4b07829bef0979731f092c34f7a495a1033c655827fddd5c8af21 *0d57bd02a0cdfaf492ccfd2b52512d0c7fee2504d01c64cb0914cce6473848a592cf82077f8b8b *637b9db93ecdee73efe50dbf16b87cb70d7dac921a67269d7723b275227b731216c412517e95c5 *bca2df484098091d6b04773eb9b12089290be3bce5fea948b2703e2958775799fbcc32189d25f4 *4207243b490629588a25fa06dc4ad9be6f9e78ee711755fba903a88fd955e065fb7ebdd0e9a0f3 *13b7ddb66165bb25623b406f1364d046be2da5ba9353592c90abe1d994965f6526e822471c72f4 *67f830f1970f25726bcfbca553b4e470ab3dd2ba11dc35b7812b73974e70c370dcd04c4171066a *76f115c7a1d8cdcff2c351cbbe364ef543bbf95f4a1d95160fff6ccf8ae60dd1554bc2eb0b1c76 *402a1c937645b2ed99b1e0611b52c15034221576dfbe653866b4cd62a2cf6f55e396d48937771d *7e3edf53ec436007a49f03048a269dca951dcb3ffbed9823f9e17ad4c59cd5a85f3b4cc46b22ad *5af1b2decc92987127da5665f6b638b23e9895322415f5b009d6f9b02aa0af850e1ceadf930819 *445cb353a9034b2dd2f89d1f56bc429582d074b2ca73308e182151fae5bf991b3ad348c4a1d40f *45182bc05d8f1112cedec5b5b6b7992edd25fea27ec07560777fdec4c4dd7c4c2d618888d4d57c *4bac9837a2ca45ed23408e2f3cbbe176bbf2ef44e95f6ba1c90c51aa97d891b7c7f0acd6d11a9e *e59f0bcf9c80f80833fd012405fd5021345067385b5999af45aff6f28bce0fc74a7ecfe21caa51 *027839c0703f1c3ebc273fc9b22bcee484a1ccd679217ab9d64b4755196c2cfae61b6496266a20 *25ad88b32e680f0beb8c9563c568b439a407bc6a54e113f17097ef769bd2be695129cefe1a15dc *a4f51de2d373fb748d5d4ecc4ca4aa4c14db4309f419ed2b76d63956447fa63862331a94b95fce *97db6272037590a049cb4269ad3a0173ea426f64f6994a11834fcb36faf19e015243fe9cb09d66 *8eb014776b1aa2df1ad8fa7feb179c04728a47f85812a88cc51f303ecc28d52fe3f9c3ec2bbbb5 *cb280cc2aa7462d9b7b53513ecbc75b319388bd91e499ee8c39a543172eb1c076b4b39a38fb077 *0c91267b67b2f0db4977d8e5a5d7376c351d28ae0e386590b6e77cd7a714f2b7ce233c71b1af0c *21519915a84113fc21027be717450aba7d85774a9392c5a95019ff4c4de7d00447468d61a38393 *8a75ce274d50f1d8657a29b4f07450cc2dfb9e0dcc2624e59737f823691ebf18909f34196e53c2 *53742ad914163748af1b9dcae3efab8d9776f5acdb4c7d32b9c9670e6d12fc53874fc21210b0eb *60081ce4ec2cdbf3a1237c065a5736f24814733a26984ccd105d459ec6a26ea606f3251f54c48d *76ecb7e855a069fc10914dbf736cb6ca85c8f278f808295b095732f81e5be4d5e458be2f5c9259 *602e78740e7e0d26b3d478c71e7c542016c12e99fa59118c3552f94c77bbaf7f035f721d1210ba *94015eac290c88644d256b3df6a97b6c2b85bcf12dee3d392185c020580093d3f613f51946363e *a1ff8dadfc7177767daba138f243ecd0d537224aae4cfe5afd43821d5db78c1bc865d16bfe7a2a *9626e181cc968ad169c59cc3e5cea9cc26ca1bbe4e3a6d4892afaf72a1bce522c1d4b4e22f7b14 *83736ac264143b8c333ecf667ca76bd698c9a7908e85173dc885243489907cf2cdd057fdb7869d *eff48ddd03d4cd00424d4116414f971630c390c813fc08ff333ceb58b493d28a949c23e026405a *33b43ed17d075a01a127e505c71ffd7ae02bf697fb11021a451373d5ef67d2e9949826622e75d5 *53a116974e108eb4d7ae1942a0968c238953f025e5e9250b1fa3bd381f1e301874254f7fb931fb *d18dcf44aaa5d10e3d36da95672110af8584d53cc4beaf25f9a17753e951e4f340affa1d364b9d *927eefced03ef5f2dda776bd18b60831db82cac2895c24e288c197bcf918b8b62ee52a88652185 *b75b3055ae2e16d60c41a1d0a516061a4cb599a402f131b7409d57708f33cf3aab1d0786824893 *968df20f6a2429c8afa45d56e8a208729ac30f8419a19d2c608193a1a165da540ab7c585ac0d6a *bca469bfc1654578c331b2477f5459736329ef9fc66924aeaafcec746f5081de152e906100c540 *b1b73e21d48f131d50bc5203e174d57ab012ca9ee362bf4e657a83772053ecaf3caa8ed4700710 *ca7f95c7d9ed284e7f98dc279bee723b64be7dc10b6c3b8f726da4beb1207667ef94c352fad864 *232dac7b1de886b4315db3b6e680a870e730bbab6388722adcbe5c78499cab2310a9c060a5d74b *0d9aed04d2e2fd3c2088a871ec7d801e84c93bba3162fb1610d6cd46195f71a8c54fb5c91f18a4 *64fd615d5571b4afe619354daac71632e990a712554239ba69193cabd9a6a8fe530064435a1a6a *af8d15b6506b7b262efcdb475ad9f5cf0cd78e817e719987e3a988bad5cc7b09fa4f81b3b10d01 *d7b4f7371b86cdc06dedb8173e20454aa6f0774f052cbc6643802ffa0b53f7f3fdb0af9d79cf53 *fdd796b3a6768a5921035c3dcf031801fa523be6b66a161271272f7bd5e206c738853b97f573c6 *68c1f7bb4fd46ce695fbc12aaf6bb02b8ad2d908b6efe8f2f409b2184f2c1e042b74e15402cc53 *8103a56bdf77626d9e6559d679be0c9ecea8b4097f2b79cd61549b88f9f605a278718b1be7c065 *c762a7f4cb82c1e87a30c95721c6339ac34f5731154f1d51e2312a9d9253fac06c322b7d17ae7b *11c1a94afa351326d2e326d3e906e79373654dac6e3c158d4d082b9a56160d5649fff04578b3c2 *b89bcd2c308a54255e2e1a5a3e91fbae239cad356b535f237b402355d2e96b11a2c7357512a4a9 *094b635ba2eb7332eb2ef2237b96aca2ba1602ff5de8204b69b026f9185a6c5198db25816af78f *3a7cb39973c331f32d1f4aaab488b2eae0addd3638089d16ff212e2326ca1e1934bf89b05a49ef *5268ae488e37ae773222e3ab41068aa90ccccb929fe65b97ca706f8159616f34864192a39e1ee9 *35c895ef21849123afe9a4a5c7b164eb474084145219bf39bcdd149725ccc44c45bfe8af8dba64 *03c1752deee4e8b4939acc365767d910695029c63aad9f08d425308be464e817146268622a5fae *4eec5cc1ce5ce2a8149b895a0ee9ad859b5be380dcc34569c8abd565fde0c23805b3bd5fd01de4 *37fa049b06ea3bfb538699d77973d6a9f52e43c872571ff08e659e5894f35b7ec29ed198c0108a *2a349b60ff9e6cee6934a0785e6b0106da902d3a5da785514d10424d86e51224deadb426158ce5 *baebc6cb10ee53fc4812561d5e512667abfc32e4ce4f2c6967bac90e46a1a91a17576199de91a9 *6f6581a629ddbcd8c0401a2b73cb64d59fa403d49c9888c38eb7429c959bf25870907d45576419 *38fcba971888e9e46ea83f359bcf75074c7f055f0570b9af6c4ca153882236db7663a6f711d8b9 *ceca5b7e33d8dd16760802bf8321799ef92277beab9700b849bf6dc489ed7056743528158a0785 *5d82b2b6936ff40b7ffeeeab89fa24326e7e3ce79d77019e3708ff549bbbd08cb0700b9fc7e70f *69003f1b59474ebd43f035a31d03cbc6d491be5d5de3c3d2e9f8e18ddc16d6abaf5b67d3067b66 *29bf48c2baa24f30ca4e4c32e91dc7b0be8eff3e582dc7b8c236e49b9195fe71e3152d96f1fe15 *80bbc2fe5bfae42da96a34bfbf1b794e46db87a36c93f120ea668866a2389a1bc1d13bbc3108e2 *102f799a6b3d1ce321a4df1d3cf9a85400c940d77d19b7ed761963d33e435ecde4765afc7b3fc2 *77f2b79be79eaf6709c84f1ee180cd148a43d3898bed2630e28e5edd1c29612cb9ea9db210766c *284948080ead8b071f5518ab56472a017d63f59349ef5643b8a72f7aceb2517762e04e3ae7e9bd *68895f965dde76fa1f93577efc2cb88162163e4062ff11827657bbe922ab11962a698fcb1a20d7 *5cdeb633e074a4d45b1ad44eb9e9aedc10cd8a6f8b0093fce4c8a5bfc55fb2e9242115f366eef4 *9a36afa20439962dd1e0f3e1e5ef818f00eb8f48bd9f8a798c98192a3b1f84af82e6ef73ee294e *f4ca8e24b367b1810c0228b8ba1c77b0cf089b434c87df2b6ce1a9198e848bab21aa4bd0e35bc6 *c1985a5fd4f3b20c203a74e552e83bcdb05d111589a58e33d96c18feb24820d6c01b1ca266eb7e *19bf533743da857e0a76ba9490a80b3855a7fc047d6e4f7ea33fe3c5b98a3205d1d45152d61bd3 *1b69142ed99d7e5c7f77d60ff6b56593b36decdeef12ec1f1319078b6fa778284feb53aa81a089 *e608c62855fb82164c54a519d09333640b46463269795c5d17afb46c9b4185cc7caa3c4e2bc85b *4bcd3efef48d3b28b896ab04e97572aee9d943e193a4f97acda2b453a5dbbe1e42f225ca32c360 *ef064eabe4b977621937e0d746233874ec0d6792882941db6ca170cddd046adfefe56495d4a975 *3f1311709de997a52c251942087db23cf193ee3dfa98d8183219e4f151f24b7734ae28f790b9e2 *2a949c4d68b990c14fa9ba0d2aab432cf262f19734e0060f819f3d9cd15514d415edcad33a838b *1fe0a2e8324ff249cb2e4c436b8e9cc1f50b05ec9dc3e17d7f2dc4a2c0487399b65687090468aa *705fb29f207a2a418c61875cad066d92ae201da458e4b245d9765be3181c4f48c715297ba01ee0 *bf1a2de37adfe7326f76874cdf99fcc0ae8bb99299420d366687bbd082227785b3c14951fd4dbd *b6fbc1dbe900ca4dd38a140df9cd3912a4545455aa29708b512b7291aa17dc5ee57cf1b8ad69b6 *b71c4941bad8988dd2539ed6ab49941110b89c49b2ae1dfc9bdbb8ba1196a69dbd3fbffdf8ac9f *aea16f632cedbc64f3a618c06aed6b731048e4f115a5a30f5e0dfbe51e11238c8aa776dee9247a *ad16f8b690460faaef355dbffb86984f06c9aafa25d4c0757bd3b302f70fd973cc2d77af65ef0b *52ac22a7433f0ae2d4ddc25c67933e2a8a099535c83b0f791cf127d7d40392b5b23672025f7967 *ea6d7dee9863eba85a3453949604acd35a8c36fbcf40bb3c91e2e86b288626b92b88fabbfa343f *bd9ddc9c21026fcfc0d61c6cf41eefe5b5f392a5f4e07cfd48ceb26ed4e6ae04d600ca459f67f4 *12b0ceeaa5cd2baa809c044d3484dd639f244d4be10d33b2d9ccebd014f5a84e0084874ad4a9b7 *3058031caa6c6f5953d52a49646f8f064d436877bdd5be16b69793fe1f891faab99a0053be4c37 *463cdb90040b84fac11cb3782b6fa53e506ef6d7bb20d65faae40b71ca6551b9730a0a0f2b2ec0 *7827e52c0d7270e035ec9d7fa6ecf6005c1e366ad96d5527d2a7e6d6ef5cd0fe11d70bbd79555b *ed4793297330746a4eb01dbb1ac86f268b26d6ac8af2ea09d16f846405192c1132bce18ca262d6 *7aebe3020ac156fdbba4522d929dffa147a1f71fb30c4d6484029eb5188670042e6ac2da79a335 *d49edd29e3437150ee177697f5e21e3ebdc1749e960b6942a1c29c103fae980ebe05e138ca942a *cf09b8d4f9646f8a10db6b7a32483921e7cd50601ef1658f93fddb2a92a2ad98ca78f3e89862cb *cfce0cc2f758528f38180e9db69d5756c4b43079cadaed383b0d4dca99c176075d3cae0d5476f6 *20544ddffd0b64ce88134cdbeadc3fc1da3f52418d4bcf0e55b7450e8197676489af0447ef27ef *a4b20765ace91dd12d73d1f5263dd752dfdcda8fbe82e021a4f25ebc39e7a2db0245e004ebbac6 *12daadbb27c74f00ebc962706539527ebabee55dcea71ad76bdd040cfdd255f0471e0156794ca6 *df8b2e8ff729eac8bf0ce7dfdcc7e1b09e704bd126e0a596e36e4e65fc609fbc2bac1a3bf1e86f *b66b2ecc4fcadb660acddc55997efb58741c1889fae3007df20d5e618983e4e81b9ab31ea6508a *8190d24723f186708f01f70dce001a8f3a4e1c5a6d088f2503b6e26f9f67330343f810fbbcf4fc *a23d4a6484a7310457f1bc49f67562e2eb56b94e18cc875c4e018c1a7d9cb5d97337b438c9c4c2 *6842bb8fefc565383351326120c39ceff11954ba254b8b968b6034ca6c816850a5ee2ab738e0e9 *2a65947f3cb0a69fe13734f78d3e1854639722bc3c8aceb5ec2e6b938f863a45472615f2c0e38b *b8e2b0ff04587f91f30be8340ebb3fc895ac11e7b24c8123c77c0a1c973790bc8e00672c423be1 *1362084317fb2ef0c2a0a4c30547b24e17ecb2b5ead6a566fc41fba15e42c222b1691fd0926051 *7b04452f1393b4eff35632e322d9f3451c7ec4c623e25af36c2c7af9e46c7d52240d208a702e28 *29dfcef383c9869da9f607c4d0aec27d482a2d772b3a72bcc0334a380fed957e86be6c6d6317ee *179f27bdb349b52890fb6ca4c6047614a87ca361ee9dcc01d22abd2d0bbd7326189ad41cb96c36 *0bdd5204f1432595de06f1aa7e3883b6e107a042594ec68d9e2fce7e4367684de02773e1e7c31f *96f41f5a721f744f1a1c4251fc6b61aceb3a07a5f88ffbe1756f9d90d1326d6f1431ab9439183f *0e6c1220d688187269162bfdfaf8ff54a4007c0af67bb0234ab41fb4b951729726a2581bc06adf *d630dc5c69a197ec25a7704f9cf14e1263ddc211e3d91c6023c24c5b6f031de91bb23b6ba0372a *dd60c520d4b54ceb388df2a3c5ec051cdaa419efc4abc5029eb85c68bcc40922a0b0af4745cefa *e079acc34781a2d516744908ca91ef1b6bd686a67fe27b9deeddf72e3c5bf8bef64b361a9292d6 *ca348d2762691ef1692a088e48624336e2cb41161d1d1596c640bbc1364b5931e423c10e0cc5f4 *5d797a621b7e8d68f3bfd9afbb143f3320459797b67ec8a5d28e16657f779cd016c086d5722191 *9025a2ffd34ebecc87eaf5f40a36dc8372ad3388f39e2ef763b997851727a1a4e4f082b462ab64 *1a974b22fca92e49fe1e6be4f9995c4facc71637d2bf995c13204be71fd77ce17b71037e73cb02 *596d19f585ff5732314ab721032c88058bd576e93735c95b712b0458fc62eb6b8ede92ab203671 *530a6c3c0962125536c3e54d4cb67765aacd1306f50a109c4fc5773d9bf8b50d5b6172b06d9ead *353ee96019826cc2aaa555e1fe1d5e06a15af8fc15079b19e1de446a77ddc641245aa6cbb2a865 *7bd9d60003cafc2cc544f7ed632e2f8d2759ed2c2ac1b40557d6197625be88e6b559490d95838d *156c04b83958b123aa56458ee26d9e954f4e92a86947e7b367d4ea6d3ca3b0a5061e73f60e1781 *28331f03f99226105f14c2b7e744b53b10851b4942ea8b3719ce57cf96449c96dc863d4c89f77b *f561d739413826e189f41823f5d158ff97595cb6ad2ed25dac42909a5e4143b834a4f8f74e04e6 *e29c84916e9bed083ced306fd4c9a6161638acd41104f08beacb8188011a192073a1e33ef73795 *39fcc1b704cc6202a6553b4dcc483b6f2bf8f52cc9c101968002ab441e81f81e8ea09a00fd3707 *86f79c31e431019d80f695e10b96dfbd030ebac7f9ae0db590759e7f703905ecb4236904db5aab *fcb352d4f17895ceabdeb490dc67d0e1ee9814c06db8c4bbf50a0f744387002abe2413edf387d6 *5fd649b6139b745d1e99f4667e5ddc8debfbca2c2025f8dec5f5a42340e980cd93c62b204c080a *6a41918bf3284a02f0d99b438a0d34756bd2b0b15262826a8b4773c02bb9c65d938b20e8faf273 *b8833f337ff534d3d91037e8ca6cc6143ed3469b46d38ee0f3a212e499a757c294c971dcb08752 *d743d67ffd41ec2e854a2a5b09de4e332d342e9278492feda9c91c0de17d5ec67a9e654835ef70 *e5125e1a7e107ca1bbe9cb9e6cb0c7cc9840d9fefa2d069b2193f1219124b951ccf5c281d86a92 *ffe15a4ca6d1c01ac7273198f2d5be44bae4543de4689ff00ab90a359226189cdb19856931a82b *67eb01f0a301f1f7a13802d7f6e5c8160e05650ff2f61d44e84dbcd592c67b34bccbb19f0b639d *0da39022c0bbf4a78acea3659ed8771608eca7e0e44126a72e33085525c291eceb1bf087321178 *f577daa17bd517400476eed0c5ba611b87514c4025ccc0473193215513a655c3f5114774dccced *cd0a814bdc4b32c77bb4eb4f7806d3a28df798c57ced5d91d279d03cff935a2254903b910cd1d5 *0a6a6e447fd3b00599fdb9e2ba4316c703b3cbceac8b388feca74211df9742a60801dcc5cf3452 *cc136bcf106f1c2e8687a59af96a2a5dba894fcdf9482de643c7220a5a8682d1586cb774eccbf8 *63fc4176822f1eb748191cde39ead64fefee9df8c40b80b42831c5f4d0df9d27f8189b771067cf *af0c1fa43501be469cb75f32638b6dd8a0d6a28c99b3c3ffdc4f0a949aa5e588f0aad53ab505cf *c9441d47245f08a9dc72cce18bea3debb95822f435ff21101c04f6f1673a9263390afd7a8e0209 *affa9c56d93e8dc364bbdf190afeead39fe6fdbd731cddf7cb362250d9900fee5c3720e62cb47e *141ccd0a64117bf08e203458e5010b4d5c85426260beea1c7f2846b7bae177bbfad50a385e40c6 *b59e2f0d37ae8d41b7710b10005c56acf2c208a34afcd02eb7ea4ae33a5b758ad43600f8f09c2d *2cfc38d0e0416dd3f50565451fed3837a1a446448ec8ac691aa99c406514162797c1f8ee8d1c0d *73743a30f9fb0ca0a9a0d2bf3c8345e5aa5b65c1a18c0891529de09cc998a05214ffa14f2ce1b0 *9462b25c30c2658fd98cb0d4bb15bb61775733e26f7f2d500fbd87a4ab5f37c1ab13aa1733b2c5 *1d7b572b061d4c5a1a2bf74cd238993caf806f193467d1ecfb06228458dce447af81f7a548e3c1 *4b50fb9486b34a9777ac481b75aca3b7d9131e5bdff9790c724a17f13d5cbac28082e9fb68c5f8 *c0dc3ed3dcf2bf3cf22e853f6aa281deb8fb235f7611339bed1a90e0fbdf278f618f126516bc92 *45f814fc88787920de479e7981c5b5412329520c0783aec704eed69d73568c0ee1ec2f952e51cc *e7ee3a0262c28203430c14f5979afce4f1539ee54ef755d9746448dc8e8c9d49bb26587592cff7 *286c839c96fbdae9e7dc22a53e4a66b67d13fd005494f50d1c6f6924c0bbfc0c1364dabd649ce4 *99055351ef4c3013cef7b5ce6cc7aa35dc048c4737f2d0074abfc78edee8a265a61d8ec336e351 *d894770791f541c54e4c0189def49354741974f0f5ae9948583f36212c84bb6162a4e8dd1c9b23 *b051f3751709edef4d6916ea9fbdc12983b9566181309cfe3be83f2e83ca64f8b0f82f506a2b2e *4d196f13813f5031f26b59f168ef281cbe5ba99a273365671ebd0dde92c05594ddcbda36152911 *70a029b6f7d4dd99555d9051b59ac8295b73d3bb9b8b93d6e064e57f7265a2c57c47398a676b2e *2261553e68cac57efa8d86b1dcada02c5887a2091f6ee8ac20d485dad111d75a4f57ff85e8642e *724991fce1eb25ab31f37b0588d574637bec942f7bfe8155f24e5d2c814c0c62d70025c2619839 *3c1c6e32db6f54422662b5eccfdec499754fac37db7bfe27fc5a1787e776e322b52936ed56736c *0fac1992e5ea96e2b3caad12ab4ad9ee63e011cc303fe6370771d467f6df2069417c38bf314d99 *3a75ee323de8412b6bb4216b672655da47ffa40bba1195e6bba1a935183621a4293cf76d5acdd3 *0a563bad4e6ca3628e1899404481e2fa301991b46035ae38bdd97584ac1fe00880942d08adae33 *b40d0aff872d8424431e4adef21bbe82b639ea13c53850f158eb2e01c67cfc1bbe139230feeaa2 *e212c8ea33a4132a03fbb82e7af251259fd2155f7bef89f2574d2b8a4414f43658f22b7adfafc2 *3e907bfc810064b201aa2ef4497be6585e77b6fc0d79efb240f2f2f946b22a52a396f5314433c1 *d74df68c5f58f9d28b7f2aa4d0bc6dc5096976a498f30395c7cb24b2c46ddcbae31f192830b0a7 *6c67aed87fca8a0d62aae75b56dbb6f46e45e02d7d698af5b73f412929b9b15de1e9d522be7f07 *1decb161fce8edaa83c8edc8ffd9346799a115e4eb364e6994108e61435f8a71e1bd02cd5fd065 *699eafe30958d4c9518f6f7afed8f369d9a376fb581c5ddd5cee9c2aacba5590da8dc20c2ca447 *c0ee7ef42089e46b08e4dc2618941ee6de78ad7ac40a5cc4829c8f5ea986e19847ad0dd5406792 *3fd16382ca07f76e8fdb81518e19faaeeeb4386ee352809c328fda892848b124ddd0f7e16f7c4e *e6eb5f6d574ec622fe5dadaae4f0512442b1a57d1a4d3ea38c889a8587228bf76511cdebda6276 *72df5d0ac2c746f29462f24d6c125570b960f0a8e0f907ff8247ea81b8decd45f5dd78b7df26da *121c2ae44bb3c5b93b228560f6020235580b33961eaaf1c31363b016e48c01cdac8af9e7a16efa *79d1b46978690ab4ba418d687b4153f985be32c25beae947abe5609066664a7cdc7da314fcedb6 *92e2afa4f4db5d420ca4c5a5e6478de72ca9ef8ac430b5c0984e637447954d9a081c64ce2a1c8e *c9570d29ca570c218f1423f26bcd08d16213211c56c91b2e4769a95f0d33e0c5dccd11c9b04fbd *6357028d85d90e6706846f0e826ae1059561ad8cb17b9fa2071798e04bd63cbe75948adfb61ba6 *808605ed790022de5a7d91f3fd8a11260cce621ac0207e982c5673e13eaf3f6e805a316ef2d31f *29b04ab70d88f49d40da3ab98d7d3ca94268c55c2266638a238d4ef0cb5ebfe3c753e8212e244d *dbf441985cf4d1859bcf131742ae48acf2adf6a5877ce599cbde949543498a630a99469697dc20 *a406e84d709ac2c600d52f9c03fb73a367eb2761e5807305c1953404b75a04dbcbf77b9a5fb531 *1c3a254308eebd9d46fc1e695e44a3b5952d70bfd34acba5e5a671191ae7940a09e8bd63305dea *489028bfc8af7154ee32cbd5459cfa07254a3173e43abb6f1f5871d4b37cbd95972361a279edd8 *98b0653387498a0a0d883f282cf4620f911cee64b5536a8d161d6943aa61308ce83ec2006fd5f9 *6a9cd933456ebe2466ea118996fcc7e83ae631cec432ad6a568e2335924e86d85eabd63df46487 *13a087995b9e433ff79b0bd3c7807fbb7867d013a8e667d5df38c0da200bc942fe693cda574128 *61edf467ce614d9d3201da70aad74cfdf201661d4a880e3cafac9455880acf528c9dd803506f42 *666d582c03f7106081d1aa946f479c78f89ae8f55ab4c7894aa84b11761412d252085ca5deb432 *f5f61a134b8d9c3024e08cfde0dd92dcb9dbaa9d4727e1eac2773864462561f329e7e36613157f *4aeddd5eaa8751c5fdd98623c0d6664cdaabea16f2066324717357ee638cd752d83cbffec3d34b *b93136f2b72969470d5a0b8c376cf84f08507a7acdfc68becab026aa6d8701b397f195d56f8694 *b3d2af0d96f38667be69551dde4691a6df47bf2b94f8279e909dea697363312e059c5385f61618 *98bdc0e48dbec3df221312fd42c3e76dc67faf8957dccde2d64b29ddda320c294666fa547c2a9e *2d0bc18745ee1b340a45a188ffee340348b98fd53736b7e9dd2b87ee8047f5553cb79ece639784 *301bd39f9ee40a2ec96ab378ed22d513450d551dce246b082441a375effee150acad88ac47786a *d196f6fed1515baddceff78b3b78cec45749d04714c3048fe85688a105d5f5277ec06f3377c8b2 *5ac9886662cd41615bf0788fbd38b77bb1f8df26cbf98e28907f92bef9adf5aece51e9ac15c4cf *20cd6bf6201dccedec211f2a0395e0b55de1257fdbe368433742f1e81bfc51cc09dd91f2e8b463 *c9db6cd52131f0efed7590ed7a282b0e588b369f4d2ef1f11d3303110445b5932245bf9318d7f5 *5dea2399c63f274a88e299a964315c8f0a7b28062b307aa195203dc96be6e51cbad912086fc1fe *c9dbf56853b399984da2c6c984b6807d5df49f6a6971aedada3a8fe1db1bfc9235ca42d621bc4d *56ee20b09c1c1612d171a53a84d6f7cdc98fdfb813fd23ab1118c0fc3c90479e14fd53839a1400 *7eab5e1493db9176393916624e68a6c17e61f3bcb73c8133bb2ef9bb4e18ce4f7cae1aabc5abbd *88eafa74bce3e48510d8e491c6252ce2620b258db361aaa6cf50b6bc04e16ba007fd6b2d2b7125 *d258e52b165d699bc8c4c148d8e9a2a17d819efbc5ba8c118cef9c13446902add968e0c4ebab96 *fb50e6fade346cae13ed4251218c4ab4e27dd1d842c4555859bc1ba3cf1f7e87bdd2cf659e7802 *fb98fe67ef15175464111ec9349d2331bd617b739b48bd536f8a42346fb7fa93173f9bd2f07963 *3d9b800b539d534365710ad1dbdfce395b8c3e36c7ae2ec2af65ec40935f5bc208d1ef7cca45b7 *2eed6ac0a4a22af712ee55f229b1668ecd4dfa2191e4829a99c7b2a663f5934435f8340df3dd54 *05719f2281f776dd70621d2c2b4162fd82e3f241195dccf48f2de883ad5ef6587706d4ea086721 *8705ccf1c65a1b17202d2c77d3523e719feb75c36fbc476fd7d533f6d631a64a6a4e1872d971f2 *091b1e682f9ec484ad90b031ad07ef7334377589bda036748e4fe9ebf9ef136f884aeeed14ebbb *a1ca2895996aa609fe8816b1ad1b3a74b991f9ecdbe2843a7ab9bb82821cb74713067a87294243 *887c27c045d5194375fab7f2ae47f64549e435e7f2d7850008d8d8e7291502e05e3ff148d1cb3a *35256b1589031aea160c8b72c32f7a5735373aa7e4015f22901a17a55dbe7f8d08dc51f0e8d6e6 *a4dc6a40ea9fba8e94d01648ab8c19dd9304e6e2f5239c96b476fc2cd95fe13fe709103b7cc5a0 *4313dd30393cefec4842b378f92ee17dece9a88a85f7ac6549c5bf8c15e10350889bc9cc7e9f68 *7dfd1fed97535b250ca046b3dbd9aec9b6ed26bb7676936dbbc9b66ddb9a6a67bb89936d9eef3f *9cbbf39cf503d6e57ade97760ccefb55d7ec16bb97aa03fb2d11dca6a8107c730a715301a08f8b *d4cfb07504a8efcca47c99681ad30faf1947449f7dc66d7d835780bd49e3a2bb5e4faf251bd514 *b17ce9595947d966d2fa679887937e923514683025f63c5f807a51f0459b06d7e7656bac161d9b *e7aeba9b2720333964975ad3a50593ac47f3c5f0081e0505122407e0b56988bbb492236b971afa *64996940273bc64ded47f83b97640e47b9825f13559346ba4393df42655ee9dd8173e90b26ec38 *76ff1ec41a8d4729c1c602720924a785e91e4edfcd27a8d5dc894c1be0c25470bbdd9288fa8840 *7ad57d26f0b7fa7e5d114e699270fd28c65db43e78370663ef2fb33312bfb631690e14ac806250 *7261450ba1e51835cd2732f75c09f4c32dc12c3a95624275219ceb8d5d5f8e15f2e644fe6b1e50 *7fc46ce95d758cdf62b2e7c7dee318c53a9ad3b9977bf4d518f1151900e763b1a1527eb6295194 *e0934592fc68f26e97a2aeffb557ad877cff1d8b76620532eb083d7b8343794d52e3e71d3be3e6 *8a595ff975e37d9d231c115c9ec5c8af9eaa891eeb252b7e8a10c71684977f5a7a72ae324f5f0c *ae646a2cc34d93583dabebda7648253dc029844f6efb896f3d0eb8f431a158817e55230f382004 *42b4e42129f7f006d5d8e4ba3d66c50ea3ffe474f1ea1e0b67786705a5da9868d47c26bb8f3301 *c033aff4837231bf8416c86d8e9b1fc71a65798add61eb54742a970416963e9d014dc0836263b5 *b3c872410840246fefbca53c243bfc7e5aca42298d6b6e0b41bb1513e0f5a703834ca8779d756d *5e2e69e48569640904eba8b42b33f074a3a5e007df7b0c2a95d935645d670c41a2fc2524c6b2b8 *8909b8540d2a0d4c671b1298688bcfdf610b12ae4ad7c32ee3307ede1b92e17112149bf84904e1 *cb3c7102cd6b157a4173f3cf3873d38a2e2f966583110ccf952f5c1b5ff8d78882f5fcfaee04a6 *2cc6a456dd148ddc964cdb0f9cf398b9a873a4ccd52826d38301d2a61070a24b55969e4f1fa2b4 *887333029a83da2aa21f30fa01355fb5b5e27c2fa4de9467174d97ecb9b52bf73ced28be4589ea *797fd89148650df01e92c1c15fa8ad615bc82d7256ebb37f38603a1c941fc762dd34ccd65eb4a4 *9a910eed1d57a13504088f953138ddddc8b024929a52b58cc16fc8dde05d68245533ddd6494b76 *8b0b545ef3adce74c4ba9332bc2fd579071d50416fad3cd0278642c645cb6b5fe48e21a94bd8c1 *8aec7acacd51a1483b1001a4ff00218243b40e9ebb7a3a62adcbf4334688952a49e2d5859f5da7 *6393beffed31ba64522f000f1fdd752604eea452e712a6bfe3c0f019fb64c88c0431b73ab1bfef *ae3f15e2b8a1da206bda7c84c67e27335cc6f437b7c7cbaab7b5daf845a5e270474a17728e4db7 *c6bdfaa4da6230b6b275de115da1cbb158cd2b0aa23a829735ed30277893711ce83812be90f1f0 *538a67208783022d2ede7182d6ea1aab6cf3f9e1a9e233209b68d3d41c28d97e09019d8be1cecc *092aa8eab7ca348b0d69d251039d3f79575b4553e0fe344ff3a22eb0f79fb6fdfb1108bb229e11 *80e5f9dab06a4163762d1bf2cc2b3a1dc84260f441961ad77943d2b2b55859ab922f6b7da100e8 *329493e4c0036e83693860a3c366c3b53aa49775934c05c308b4268b51903be78a87a705432257 *06cdcf1c8d2a1054c34996d8cd63dac091b6c051b2107f192dfac3648d1bae01ceac766a6130ca *5ad2a2f291347426ff1b105bb9ab9e8fdba8af961d9165eb5643f45236147d2aafce9e29cb2ec8 *1d3da0f237d7ea43046042bfb6016284a0a44d79cdcc28039d4d62842233393c2e4d0b663deb82 *74dd70c8bf95face67f244187774da6fcd6e2b1bdabda3b1ec72e75e0da8981d95693262001a74 *c21976be03294043933e21f4a26d4bd37db9ca1dc833582b96ff4c2b4840f3fb76a18c5ec71e23 *96e6fd8c5cd5de3af077610d6e8db2dd62e525c65993dd0952ef5b91d1a01f2c241f9bda5a992a *0c47e5df46c7ad936b63034d123315a8e56d54fc131e39799b935f4e0a3e96e923b15cdb99e0e2 *28f53bff040cf7a2406498493675d27d20c05b9dbb80c68870ba35d5b19d1be91f2de624816a90 *519d10b1388415a47330022ff2f1511cb1eab866df02455f425caf7918bdc6132071e5f50942aa *c7ac2d91472e5372b999b9396bb0a880959f288e7ec1c0c23e8c0dcd7c5e7b4ba0dcdfbf44add5 *a10eb3ba2d376ddca2040a2729e5af0482e8192897f0c67082c4c9a2e1df8766d29f3fbeaf6660 *b7657690370dc1e8743701194ec640dd1d9f95d5fe60d22493b29b03edeeb4f1e8112bc8478dcf *273cfb82500bff90c0bc2f9e70c49f240c60a3dce5f97ac88a71b483a4fdbc8b3a178ec96640f0 *f6492c3404ba5d26c72df5a2221b22143a827672ba9c676ceb94e7f683e54e62c13f760dde67be *b62a884afdcf67c49143da44d3533d683f5d2c5b965dd1bc4375a5b0b3b02dec23437895ef7efd *710c25a1a8f3706a19d2a79f99ef83dc11b960ebf05796e12c3c7be824ae32d9c37b804a4426a1 *3e61a20ea86b8fdf795ddc4059ff84ac22c0e4ae143b421a337091c4684e15b5444d44a5c85a9f *8c234a691557d189fccb425a386248c1961ca96bc3a875254bd1dbb2a858151c475c004ed334ba *5a5aa0b5a29a142984587fea0d7547fb3680df230d010cd2dd4e13c405dcc626549821cdf431f2 *b6e2c5c9c020c0da17f7c8599f9eb1e9666ff0ae4f05c7abb2e20b46f7b2a0f72935f264d4da93 *d126b832d98972599bd9808d833a2e23f504d43be735e25cbd2fef1133bf568e7906c540aaa156 *1cec86594bd7ba23597e0dc3c2774167602804469986df773a362e9844c41eb0f9f5e9a9346bfb *98d17c3e947a52617ebbdf61cd13a69cfccde6662a7bfafb843f87d207bd1e1c7f596f3a6afd51 *3a52714ad4bd9b8e5fa6813af297fa102446b5ad5eaa79e591e9d63202152e3667a552ae53cada *b23402690bf7e92f338e55eb2570957ed22cf89514bc74b0aa93f1216237d221ee087d255a037b *83a9eb5556ecf93f54765b09e789b305e566c9d5a42fce6a08e0b001562e4af8d0270212ccb9c3 *b05db682cfd51cb59d3a6e6f26b989f0e218fb15e929e53a7f8be4df5b874f13b76741ba106f7d *41f097aece91d66b9cb6303452941026d7d18a1ebf2ee161f20faecf42a0614a38724e6dad98da *203a1d1452f57cbe5e9d0509fc46e09f25811bea10f5a2e32ce4bb62cb7dae768f293d41f83dd0 *1f9c4a7ea375065131ca76efc6d56486851d5d1410362e8c693feb176606f478c5669b5ef532e4 *5cde240addc4d7973421975400d6bb54f2ff52fad2038238a215750424b5207cb822585ac0bed8 *58e50face0b9eb6326d8682c8bd7beacf3a66f97f9dc07726dd2d81d238e974b98569137e061bf *9b1be552e85f38bb36cbe53d7d23df089be35bdef7c79b5adcb9405a55bda92aa8e5459dce889b *a72b1525f82b8137a409d4ccd514eb33c0ce64a4a1bd55d82fa537198a3485815e663158d979b9 *e3a36325cef2cc5c54b72cf27b240abd343f66094a37e1133ba35a0e07cc7a05c58dd7c27cea4a *f418180f7e9ee90be910fa8f38e8e7cf40eb776114fd975229a3bf23ae6549e2360e863434f7f2 *527cdfc1f7c7e22928f9e9314564e2326242c599ead8b1f9f32255d02eb070d3b27967a7abb460 *57a644ad3f5995ef34ed5bd0ce5aaf72a47d338dad598de33de5d39e02ed32b0bf11fd8decaa47 *db26145e2fce77a5e7939c6d20dde4d5d614012399d5681eb4a4532e853bd573bbe29d51e4b3a5 *d3419ff8f612e568aac505abac5634805146151d8195766b1b43785453c10ae18dfbc8bd150ce1 *2b8a097ff9b9ae538075ef96776ff8d0256b8a6e887f17c599d704ad07e5a578ffb70591b40efc *cd6fe34dc20ee69eb6518c874b98d105bea74183ed088ee0de9cea77d19c814690e11f9b7a33a3 *d3fe05fab212afbe642ca71b94df884cf01b66e9f7b2818815725dd74ac3279d02692b188ed3a9 *0a0c742573ec40785209f905e20a43175bcd7e13fc269b5d9753e0084c368a159168004a72fc00 *5553fa6ffe58a3a94dd5fe791f5cae2f46e2a30321d01495bef02e59f73f4e1e48d8ee014e90f7 *2b64e38c608c48299613ea51fd22a4101a59f57d8b4bcc5337fb5c258aba1673b7d9be86416b13 *81c6744fae7806d9041c779b2bdc950a12f09e070380bef1b056804ecf1700d9d3b36ce296d304 *41b29209c0b680a92fd8f5434be87f157695ddb48b142d39d88e9a51f81bd020a2d2d7e44b689c *7ac8a7282cb79ee5c398b09106d9f2adcdfbe6318596e5ca0e2f6956308b824b41a7b238a8f7c6 *90eacd7715b2d31808afd4f85a74a39a7e5d4001174fcedfdebc609607fdac6c1f654ca2c2845a *314c752d412c3364621d26679ccf541ddaea93478dfdef748ce3a5bc9209aff8b1f88bd861dbed *03ae93aa8f81132b57d019e2ec88a7b7786f826e44cced2c743904bc648dd399aada4785ec8549 *39aa94c824013f6207cf20b00b05a3f1fbc72989ba2ab431801231fb89ab7a97e215f4fb5b7107 *f72270377ed14a38dd21e04eb32dd1c2ca93936fd18508f4fe8d99254d877d517978e8de2dd952 *076d42d676f907ed801b35657e552c7a9fe8a4b89f1bad8f34706b11f5c3ec9d90a76a54b2dcef *b780c2eed5a20ece6df7956853b0f29ed6853074da395c83503e8421a38d769d45cdb982eb3e39 *4147792015a6627490c1f80aa39fd3e63ffb8c55c01fb5813309bed5c0920241aaf16c6c038347 *0ab1d2ddc200cf20c6dbd5cc90671d07dabd90e069d8a746f288300e04b1c19b26befc47bdaf54 *044a704616303d52b4c0909fa84647c5ae1ab9f33bde921ca678a1fb6eac4542cfa87fdf5c30a8 *f61da9cde733f8577d47743dccc804ac299351290e81f2f8e1ea355552868ca27df251171b7cb0 *58fec849f4824135daec541d9493277a79cfc6ec4ebc8aa48d46a53efca511342c72514a138cc3 *a804e04749a86316c675c46dba0ea7daa683950aedcf811fa9f1cd0fe0f2433f10c9cf7419c6a6 *3bc3ef7bd766775d99ee900ea4f03829e934361b2766311c01ad83de0cdb6074ea994f94ccf1c8 *0fed0588b70878b08aaae7784edafb8f5059daf00583707aaa5a957af4b25be1f06f02def7784b *acdeefce1a896955918a2827b586b378f62807607d7207a30e22faa2441ae87529d7897eb98d53 *9a77f4dd616e7f7f7183e7567e0ff520665a78b4948cd76d52048c0e505a931efd1ca3555a8e0c *6ff41d045956d60b596f5aeb7c64bff2fef24ea44d23d73f2494723de7db6440dbf994babec549 *4addf250e6e94c7361cd5c9b6e9868b3309d5c441c6305233b25a5a027b6a6544a67a3ee0f4bfe *2f60831af6960d385d673d976c70983f42f9176b71b24ce6eca16683c8074e9f2385128a7d79c5 *cd1971dbbac574e2ccd329d6ec43dd36af568d2830a27a6d7340b586cba8e2775a73d763405398 *382b6e8681939f93e1d4dfb496bcdf977ec087779ac08a0fd2dc3dc5e9675023e310b2d358b219 *d6cc65bb73c85f9098b5cea9b97ab91ae369cf34f01ccb5e061eafd5ff253bc8b2bcdd1ce8d564 *558187bf0918b05dd6cbcea5dbfb3a00cfec551fbb0aff4451466c27c68d8ba6e0d36dc89fb5b5 *e470c15d1f9bf13514688b3a3910488f1f816e85da0e191ca30623f8e4e23a7deed98331aa6da0 *e05a040e7b4ec8e72fc6af1093aa25c7676287c63665751b8a4e98e1cce80df5dde3c910d63dad *a8fe765c20cdf72d5147204b6f1cf6e17b6f1435554a3c304a1fbd2265836eac551c95d32dc035 *0c6db48baf0be7f68e1521f8bd12da5847c1e49ebefba34b6f6b5b8472ee5fdcf0a096d228f23a *b7afda91134ccf3b8985d093505c4abbfc86fdb5dfc160d5ad47b3e76ecc1f7cd3bc8de9c8c9cb *7f27dab623fa303a4e6e58cb447e51b5c8d969d8da35dc695e6806010099d552ceba8463df6b56 *f079af6ce99e1d3f359eaf85b611cabe39bc8a877fa840597ff9463a9e242c6788bb28a2629907 *273ecd3075d814b714ac27a037c3fc5015c7476b860807e809990eb951dd7fd6b1d4238870e485 *1ae963a7f71ba7ca4c92abcf4bd4dd5d39768d1d679ceb85fd752af632be14c9e8a8144301de50 *f14d6289bab5e5bb25a0c716875af75fbe2498a4eb9cb4f4e5897dbf9510de966f8f67e1a7a459 *15275c84d293867d8084459de6a2201dec22014a5d306685479fc499bf09017ffbf0004bb64d36 *2ab6ecd7fddd6a3485980814017349f523ff7c51442dac554874ccb912553fa9ec65f4e0ec7f07 *5bd39861cb2f6277d2178a5be9799997c2d0566fe94ea2ef5ad88af997252318dae036159f65ac *a40745725e291c15c95eec0ea7a3be36d40f0cf0574eeb9f366e8d2da3e76a2fca5b76d17659f7 *54b803fc1ee73cc74d1a1589a2d43cfc1f16128c8c8f0d048218a4e486d9834a858ea55b0cf784 *2504f2bea29332d947aa6383e79ca7e7d817f0b2dabed26e5caa1c2d2d2f4ce6d36fb97fa2d418 *40939d6b59f750bc2c55fe96e68db89ac8c8d95f519ede39bbdddf707767600d0bd94a2f148486 *e69d194eeb65cd1c8a95523f6c5f6475828546e64862d97c5418eebaf4772716f223eb4e558624 *f742796903bffa032744f75db0e7947747eca352ec97ce5db0cc883882884b7022e80a606480ad *fabafdc01ed86cfbdada6377c8c620cc92afb9dbab5b4bb6a61fb3003dfceba172597403ad9b61 *b5cd04cce76ad8fac17f717d1377ef72dcbedb2bb2b55c574affb4306e34ec6307e5b02737695c *4da28fd4a5e3df087edb9606272c6bd5979123c224e299f54539664ea99bc13fa8d40355b1ed5c *829338361f986a71f2555cdc6e9b2873968c3615316dc87715cc800c4d9ad79d475923297dc429 *c19cbf1c0e434445b69427a9e973bf7be627cc462f8d7d0396ba4e701ef47eca940c413ede67b2 *51c81de3a399e5bad8e9966bd87b5c307f9becfbe44fd16dc10b4b31148f6ccf93251715180b79 *d81aa075c41ece371d8b5257069cd3fca8d847c7e82746c230188f295b7c07275bf366eaf5d2f0 *58e5180931c6b51eb1d9c77cdbdaf908b0797aca027630b3c1a29b69c17da1465d38c8cb5633f6 *56bb5ee0883caa80315c142527fbd44447556d40c7c746b832349396c3b874b1e6138cf750da59 *4b72b53ddb2cff3081c6456c630222aed6bb4d42e0386007d5bbfd21fe0d6af102678d146fc354 *3ff1ceb02bb4d653b7c0a6ecf6a37b8d2b972e07143e5ea6eebe4bc319253abd667d20d9542264 *3965b183963bf5db3fdae008f259ebc1216e29e3fbe15021847f174fdaaee1648223bd810a10dc *e786fb84a4c63e9dc9bb785c40a353d58b96e1b3af3f2a592e0cd9eb6918bb01f5e60fe29f48a8 *c208a143a4ad21b7b52609d9c4052fd2681ef335b6ac56ba5442bd20c7eca2635c95ca86b544e6 *e2d345549cf479e1fa7be871a888130a3cea95ad4d76c75fd9ccff86e56fd526e3b87004a429bd *f85814c386fa56077d0b546ec575afb72004903083c7795dd25f36caee6dd5e9ab7f9d2e356eff *101ab5d6f858642de618432c0a146e322972b1bb977eee26252d06a07ff127b2925a32607e7385 *ee47c51f546c60f877bcc56f2996b17f068c2861bba2e6791b01f14c36dccb7ae6ad7620cae85e *805c83b7cc95d9718ca043f99b15db640e80d84dce1394fdc5b3678b0c9226530db6c647065400 *e9fba092fe5f0f84f6f275fb8e72bc0fb8111bd32b44fe86de6e5cb4dca9e3230939fe3e6860dd *dc41faaed3ef517daba2fa6cca7000e85011192c08c6d9d133000db3df40f06b6f4e1c2921021d *e93419c0743b13f507311522123f3dced07bf3376edf9f8c1118f9f89565d52e5b67b0977648f5 *25fb100c5ad3bf3d2bd3d016a529c609e63ddb7f57eed522d84a2bdd152a65256e0f9454d430b9 *8e151243abd127b906891b4f9bb373b489f6dcc50b32c136f4ae1b840a7b10b0aa1d90eaeb35d6 *3d55fc21049b6ce1953237360ed8ae487882dd8018affc5492b4a28d57a937aa9b0fde4878714d *8f294cbe0f4ed68eb8c1e915d9202f0b6f3a51851b8541cc9b3df0ce85332dc641277941eb009c *90bfe055e8b23a600bbd099c0724b26e2543ed55eff3fc39d52577ee5ab3cfbdd09592e0939d8b *75793974875da244ed1a892ff002378c0703a994387dcc09d34ab57338ca085d4c54791578f22f *9c667a809736c143a90f75413fd0dbda75a1e7dea9cfce809787edaba7b77012e4669389140e6f *c51b479dbf0fa3fafd485b5d5c665bf1423ba0da0f29168038d87f2659c4dc5e3229a15230b9dc *27eafbc34cc43eda0df689e51ae702119785a2d8f161c61927507d5c477cd5903a845250987e6c *30b83fadd02bc6e3034f02d1ba399e568781e6b45963e7273ac2cc07cee68a4258410f4b9f5623 *04f6c276571b9a9d5abff20a968d25bd78a0856f931a7339f15c115882b22aac0a4d9bf5e8c47e *2a4e4e665fbafefb49b2821f272a89e76fddb5c7fadd4b56f13bf0f65bb370a7a3cd23a1a3e007 *6af0d4b8af565d262be37317f037b2b23e2b96dfe35a2f449f5168ed71c54c58d5812d4553a9d1 *9b04cdcf6fb07e37d9210b853ff3575cd5b77de6b07253cae9d8ac2c722753e2713930608ca4ef *d92b39d748e89aa25e919ac9860dbf3d753db74d8cbf58ef597012f3b6ef343637845e05882f6c *751a7d4cd24a6e9728b2c6da68c2f083be937b1c688e1bbb5393495b2bdfaf31b6ca95af023685 *a481f854d17633610ecc0437d7f183a3806c87ac7cb693eed26ad8b0314f982f5402d854b71561 *36d32d16892deb5809aa9ba0df5ef2fea39ca3bfe6f2a30c4dc836e09e6811587110fba889d62c *28c915607aeb39ed527261defcde3644724c4d5c83537946e23b451b1950dd0eb05ee64de7bd5a *461024c16f6d1691dffdd6a02d6f635b45bbf93e7463db1323f3fcdebddb01f4d9cf06b527a306 *8dcba55a7de6ec06f2fdad2deead0e25f06a75bedea0c2da663262d996cae0ec80ad995845194d *beb20248a5ac23eb0164511da7758ce45e6cbf89b124e0414bf13493431dae87b98b86b367cf5a *90be622bfbdcf45dc95cedc91ba5af94b7f9f34fbe58b842ea1395f28f57ea39740e527e524f2a *9dc35a3dd0704644d326690b32855afc439ee4f571447b658d16eb714444499311922e9420186b *cf0a553e4891ee659ff102545021cd9eaf4b386ed9d57c27f383f14318483954e7d681b0819c61 *3ff0967a38da1bf1097b72b3858e51851a55732f88a1410c225781dd3a0b325a1a58537870d7b7 *feb910ebafce1bf750bf31091067b1cb722bed7f33fd3a656d5a690b91b650df6e475b9cd97ab7 *65d985af8d653108fff47f32ab0668ac4b6545f2140d61faee492b1d79e0c5c125c1f33bedc944 *d1a952b62efb56de0da5ef36990b3478a71e14b0527e23c96b3fe4cffac27eb4d471efde3080e6 *1821f7ab1eb7d1bdf7d2c447cf60e0667b9441160c9dbcb08b7c2ab0a006f35e3eb7f2d249b628 *93c7cde8da4b3ff24e1faa5024103ac40c83cd2efa018c459c0449e43f4f2cbcb8e51da9188b46 *91d23a33ea83140831a57f5e0409f069e5ee1a24945e2f65761964067f51162708be853b8744fe *b9ba733a24fe886e8d464a95ec7d6ed3ccffa38b31262f888b24a761c1e6e0edff0983943e9b0b *dc51b3e38300ca4305e723a5beef7560647b4d04aeddd9120dbf643ed3463de7071cedb3f58c63 *612f858d89524748be7608694f9ce28b46d4ce71aa1b24a42443fa2e17c0c055afb961c13fa5ae *1dbe4e9046c132a81adcdf80abf5fe19b18b790dd8a2c5a7e356f7fe1875c51ba877b0d4ebd678 *1a1fb98e061dfa82b252a188a0fde38d05b3ea78ba06241c776db27c2c9ed063b7b9dab47e1d25 *7a47fbc304fefc8a339ee3bce776166f2ba5c69f719c33a7e5823a37c01d41401ac8c562dfa24c *bd597daf0d96cd6720948c0ceb61122e22b6efb15a9dca266f4150b770ff1a2dbebee0add3d458 *d81888dc7a2cdbddbefca57be2556a5658e5a10d75c934dd40006c4993d36227b824135bedfa45 *86b60db8904ad0773c779a1e2afe4cd17487ba5399367eb41c5d591dbe6f9d59431e3bc68c7b25 *c60bfc2bc668fe58793984103fc5a87630f157bf6ddea5904cb8cb09d12847705a2482a5d23b5c *54c6251a354a8fc76da92dfd2a8cf86881ef0f32b2f843416636efbcd8d353d545344089841e2d *1380319fa79037e6838ac18216eab84d33d7a7b793cead5f2ebeec4fc60a4ea754bbd7fd70f936 *66728a1d3aaefd12ae6a070f950129f93b69ed678997e79a5b5e531234d349ae324a76cd37ad58 *1f59bbae5b1a1d4ce74a404462c3c03b37409a570eb0784dab14999db17a2ef707c38395f677c4 *ac1d410dd9552c2bc6be1cb8b59d37730fed500cdac1565e3bf379bc1d96900f6a404eaacbefe9 *adee1ab095fcc76298918906c2be7b64d2f9239358288263e37f25ea747920ae66792af5c8390b *5be4f51cb8cea5b63efc2e3be3c9f3d93c4e5c9c0bb086a97d0f3f7af2247835d176ad739a398d *b8b0f3a5ece56ee88e65d7255c94b811cd1212a1fb5e271cddb3c11cc7ad46f258e6d3c561406e *ef30c72524cafe9cc90b6c10f410ee372aa0203e8d58fcbac46c468a4e9f4e5f423f52ae751012 *7569aebd292faea7e9b2997f4587b5120dfe5cd59b5d14043e2671c168196f755841d973101161 *71b1d1972bde11c013ede2e03187dc77c3a4ed073d90979ea6cefb906fecd25fca1859657c8e4b *2a9b0527d1f6afb6256723db5202b8cd7b48512b59d531913ddb94fd05078bb37558df071393df *8859ccebce43ca44d3709cead834850006b785c4f5d5c646e73600f79485ce2008b93b3652d4d0 *24b69ec0fca8362f078535cd15ae1d274170e6f870211b7415104507ae24c6a33168a8b450b4f1 *e65a4f5ca14f8cefdcc8bcc063f49a390e4e927d81c4fcb816e52c9a702f9b24e37dd10ff95952 *1c8749545e1deefb427120c3055bcbdcdae3e0e3ff4b21a6a232d0aedec2c5c165de1dccd79ec5 *a69c85cf74cad1d5f1f94936996519fa60b2c9b8dca7d31ae48184ab1ea916e9c7ba6a9b9f279e *4c987661641a0c6faeb69c82b1b579ca415e84bc41dc21f235a414eea76b6909a4bccc5485aa72 *6ceab8f9c53a7d4914be17a36cc3f4c274622ea1cf0c21bc7018cd4ccb14eaf52b9b7176b7bca9 *ee5c75614c0a003ea2019376edbadfb027bef7fa129b7774d737f2243041c9d11d73c8de28b885 *cda5c54e1ad2fe73c46254ec8d07883435f1082842e7a03c0f825ce333b93f192da16ac5e9ecce *d1384139b733fc811a4a6520b27ec9373a685adcefd835f090993dc68fc9dc86309f4a5c4566ae *8fc34bc8df7d025d24627771768621da3f759ef12c5d954445dd3ca6c284145d3273a9194c0008 *3774371260d0eee663d441d8189d224dfea54fa4d9a0e358f234c231c2f10c10a334f669087f13 *7544ad9f65321bfe19469e2da46b70cf8706b26be76b9ef2ef7497fc16d728f2b0116578797790 *bdbf019c971d6f6fd563108aad5f9f1193312bd07627db2c708ed5613c268624f04c4d8f97bb6a *2b0be2287d966def3e05858290ead4a887584bead7d900be7f25b4e5de806fc10e7dbbac9fde5c *95b196c50d139c4c521561280aed368b951dad2f9f21e33744e89ebc7c8411ff227420ee787df8 *5df485e83b0b5dd1e573cc11f7f42e7db90995f5e7d68972e60392ae7b10f186dc4ae83376c312 *23bef4080d36a87b69f32d4e687f8eb1b4608d68ba5f5a3d764249582b22558ccd3550a734cdf5 *04253e27123cc121f27f1f4ab6eec0d35f48fc168520b5c061cca40266c42c76afa729990b1b96 *df06f48ee47885ab683ad8be43662bf28cd3a12d554931a2e8eac461466e85496c19eb31db320f *c1bdaac52a4b1000315f2fe6f596e66fa49f63c3f551bef7fe04fdca165e9f9c063b14ac7d0847 *02f47f562c12a766c2e47a40daaaa23f9eea3c68381a580905ce78b6e5afeb1d2681074579c54b *5e06bb6730e0550426340adc7f4dae6de272e5fe2d84d1e5ca15c937a17c4e4609c9a0eea1bcda *62f95f82f0ff82ff1302535b73636757073b63671b84ff0128d0015e656e6473747265616d0a65 *6e646f626a0a372030206f626a203c3c0a2f54797065202f466f6e740a2f53756274797065202f *54797065310a2f456e636f64696e6720313532203020520a2f46697273744368617220320a2f4c *61737443686172203135300a2f57696474687320313535203020520a2f42617365466f6e74202f *5153565057452b55525750616c6c6164696f4c2d526f6d610a2f466f6e7444657363726970746f *722035203020520a3e3e20656e646f626a0a352030206f626a203c3c0a2f417363656e74203731 *350a2f436170486569676874203638300a2f44657363656e74202d3238320a2f466f6e744e616d *65202f5153565057452b55525750616c6c6164696f4c2d526f6d610a2f4974616c6963416e676c *6520300a2f5374656d562038340a2f58486569676874203436390a2f466f6e7442426f78205b2d *313636202d3238332031303231203934335d0a2f466c61677320340a2f4368617253657420282f *66692f666c2f6578636c616d2f6e756d6265727369676e2f646f6c6c61722f70657263656e742f *71756f746572696768742f706172656e6c6566742f706172656e72696768742f61737465726973 *6b2f706c75732f636f6d6d612f68797068656e2f706572696f642f736c6173682f7a65726f2f6f *6e652f74776f2f74687265652f666f75722f666976652f7369782f736576656e2f65696768742f *6e696e652f636f6c6f6e2f657175616c2f7175657374696f6e2f61742f412f422f432f442f452f *462f472f482f492f4a2f4b2f4c2f4d2f4e2f4f2f502f512f522f532f542f552f562f572f582f59 *2f71756f74656c6566742f612f622f632f642f652f662f672f682f692f6a2f6b2f6c2f6d2f6e2f *6f2f702f712f722f732f742f752f762f772f782f792f7a2f71756f746564626c6c6566742f7175 *6f746564626c72696768742f656e64617368290a2f466f6e7446696c652036203020520a3e3e20 *656e646f626a0a3135352030206f626a0a5b363035203630382030203020302030203020302030 *203020302030203020302030203020302030203020302030203020302030203020302030203020 *302030203020323738203020353030203530302038343020302032373820333333203333332033 *383920363036203235302033333320323530203630362035303020353030203530302035303020 *353030203530302035303020353030203530302035303020323530203020302036303620302034 *343420373437203737382036313120373039203737342036313120353536203736332038333220 *333337203333332037323620363131203934362038333120373836203630342037383620363638 *203532352036313320373738203732322031303030203636372036363720302030203020302030 *203020323738203530302035353320343434203631312034373920333333203535362035383220 *323931203233342035353620323931203838332035383220353436203630312035363020333935 *203432342033323620363033203536352038333420353136203535362035303020302030203020 *302030203020302030203020302030203020302030203020302030203020302030203020302030 *20302035303020353030203020353030205d0a656e646f626a0a382030206f626a203c3c0a2f54 *797065202f50616765730a2f436f756e7420360a2f506172656e7420313536203020520a2f4b69 *6473205b3320302052203130203020522031332030205220313920302052203235203020522033 *31203020525d0a3e3e20656e646f626a0a33362030206f626a203c3c0a2f54797065202f506167 *65730a2f436f756e7420360a2f506172656e7420313536203020520a2f4b696473205b33342030 *205220333820302052203431203020522034352030205220343920302052203532203020525d0a *3e3e20656e646f626a0a35372030206f626a203c3c0a2f54797065202f50616765730a2f436f75 *6e7420360a2f506172656e7420313536203020520a2f4b696473205b3535203020522035392030 *2052203632203020522036352030205220363920302052203732203020525d0a3e3e20656e646f *626a0a37372030206f626a203c3c0a2f54797065202f50616765730a2f436f756e7420360a2f50 *6172656e7420313536203020520a2f4b696473205b373520302052203739203020522038322030 *20522038352030205220383820302052203931203020525d0a3e3e20656e646f626a0a39362030 *206f626a203c3c0a2f54797065202f50616765730a2f436f756e7420360a2f506172656e742031 *3536203020520a2f4b696473205b39342030205220393820302052203130312030205220313034 *20302052203130372030205220313130203020525d0a3e3e20656e646f626a0a3131352030206f *626a203c3c0a2f54797065202f50616765730a2f436f756e7420360a2f506172656e7420313536 *203020520a2f4b696473205b313133203020522031313720302052203132302030205220313233 *20302052203132362030205220313239203020525d0a3e3e20656e646f626a0a3133342030206f *626a203c3c0a2f54797065202f50616765730a2f436f756e7420360a2f506172656e7420313537 *203020520a2f4b696473205b313332203020522031333620302052203133392030205220313432 *20302052203134352030205220313438203020525d0a3e3e20656e646f626a0a3135362030206f *626a203c3c0a2f54797065202f50616765730a2f436f756e742033360a2f506172656e74203135 *38203020520a2f4b696473205b3820302052203336203020522035372030205220373720302052 *2039362030205220313135203020525d0a3e3e20656e646f626a0a3135372030206f626a203c3c *0a2f54797065202f50616765730a2f436f756e7420360a2f506172656e7420313538203020520a *2f4b696473205b313334203020525d0a3e3e20656e646f626a0a3135382030206f626a203c3c0a *2f54797065202f50616765730a2f436f756e742034320a2f4b696473205b313536203020522031 *3537203020525d0a3e3e20656e646f626a0a3135392030206f626a203c3c0a2f54797065202f43 *6174616c6f670a2f506167657320313538203020520a2f505445582e46756c6c62616e6e657220 *2854686973206973207064665465582c2056657273696f6e20332e31343135392d312e31306229 *0a3e3e20656e646f626a0a3136302030206f626a203c3c0a2f50726f6475636572202870646654 *65582d312e313062290a2f43726561746f722028546558290a2f4372656174696f6e4461746520 *28443a3230303530333134323330393030290a3e3e20656e646f626a0a787265660a3020313631 *0a303030303030303030302036353533352066200a30303030303030343637203030303030206e *200a30303030303233343933203030303030206e200a3030303030303033353620303030303020 *6e200a30303030303030303039203030303030206e200a30303030323238363336203030303030 *206e200a30303030323033303030203030303030206e200a303030303232383436382030303030 *30206e200a30303030323239363538203030303030206e200a3030303030323339333620303030 *3030206e200a30303030303233383233203030303030206e200a30303030303233353935203030 *303030206e200a30303030303235383439203030303030206e200a303030303032353733352030 *30303030206e200a30303030303234303034203030303030206e200a3030303032303232333620 *3030303030206e200a30303030313830363338203030303030206e200a30303030323032303636 *203030303030206e200a30303030303236383336203030303030206e200a303030303032363732 *32203030303030206e200a30303030303235393330203030303030206e200a3030303031383030 *3935203030303030206e200a30303030313633363934203030303030206e200a30303030313739 *393135203030303030206e200a30303030303238353334203030303030206e200a303030303032 *38343230203030303030206e200a30303030303236393137203030303030206e200a3030303031 *3630383636203030303030206e200a30303030313434303831203030303030206e200a30303030 *313630373036203030303030206e200a30303030303330373435203030303030206e200a303030 *30303330363331203030303030206e200a30303030303238363237203030303030206e200a3030 *3030303332373838203030303030206e200a30303030303332363733203030303030206e200a30 *303030303330383338203030303030206e200a30303030323239373636203030303030206e200a *30303030303334313534203030303030206e200a30303030303334303339203030303030206e20 *0a30303030303332383831203030303030206e200a30303030303335373039203030303030206e *200a30303030303335353934203030303030206e200a3030303030333432353920303030303020 *6e200a30303030303337383835203030303030206e200a30303030303431383430203030303030 *206e200a30303030303337373730203030303030206e200a303030303033353830322030303030 *30206e200a30303030303436303232203030303030206e200a3030303030343430393720303030 *3030206e200a30303030303433393832203030303030206e200a30303030303431393830203030 *303030206e200a30303030303532343630203030303030206e200a303030303034353930372030 *30303030206e200a30303030303434323032203030303030206e200a3030303030353435353620 *3030303030206e200a30303030303534343431203030303030206e200a30303030303532363030 *203030303030206e200a30303030323239383736203030303030206e200a303030303035363835 *33203030303030206e200a30303030303536373338203030303030206e200a3030303030353436 *3439203030303030206e200a30303030303539303233203030303030206e200a30303030303538 *393038203030303030206e200a30303030303536393538203030303030206e200a303030303036 *31313138203030303030206e200a30303030303631303033203030303030206e200a3030303030 *3539313136203030303030206e200a30303030303633303730203030303030206e200a30303030 *303936323839203030303030206e200a30303030303632393535203030303030206e200a303030 *30303631323131203030303030206e200a30303030303938323137203030303030206e200a3030 *3030303938313032203030303030206e200a30303030303936343137203030303030206e200a30 *303030313030323931203030303030206e200a30303030313030313736203030303030206e200a *30303030303938333130203030303030206e200a30303030323239393836203030303030206e20 *0a30303030313032343437203030303030206e200a30303030313032333332203030303030206e *200a30303030313030333936203030303030206e200a3030303031303338333720303030303020 *6e200a30303030313033373232203030303030206e200a30303030313032353430203030303030 *206e200a30303030313034333235203030303030206e200a303030303130343231302030303030 *30206e200a30303030313033393330203030303030206e200a3030303031303539303520303030 *3030206e200a30303030313035373930203030303030206e200a30303030313034343036203030 *303030206e200a30303030313038313738203030303030206e200a303030303130383036332030 *30303030206e200a30303030313035393938203030303030206e200a3030303031313031323520 *3030303030206e200a30303030313130303130203030303030206e200a30303030313038323833 *203030303030206e200a30303030323330303936203030303030206e200a303030303131323234 *39203030303030206e200a30303030313132313334203030303030206e200a3030303031313032 *3330203030303030206e200a30303030313134313530203030303030206e200a30303030313134 *303332203030303030206e200a30303030313132333534203030303030206e200a303030303131 *36313033203030303030206e200a30303030313135393835203030303030206e200a3030303031 *3134323536203030303030206e200a30303030313138333139203030303030206e200a30303030 *313138323031203030303030206e200a30303030313136323039203030303030206e200a303030 *30313230313432203030303030206e200a30303030313230303234203030303030206e200a3030 *3030313138343235203030303030206e200a30303030313232313130203030303030206e200a30 *303030313231393931203030303030206e200a30303030313230323438203030303030206e200a *30303030323330323130203030303030206e200a30303030313233393733203030303030206e20 *0a30303030313233383534203030303030206e200a30303030313232323136203030303030206e *200a30303030313235393832203030303030206e200a3030303031323538363320303030303020 *6e200a30303030313234303739203030303030206e200a30303030313237393936203030303030 *206e200a30303030313237383737203030303030206e200a303030303132363038382030303030 *30206e200a30303030313330323131203030303030206e200a3030303031333030393220303030 *3030206e200a30303030313238313032203030303030206e200a30303030313332323436203030 *303030206e200a30303030313332313237203030303030206e200a303030303133303330352030 *30303030206e200a30303030313334333337203030303030206e200a3030303031333432313820 *3030303030206e200a30303030313332333532203030303030206e200a30303030323330333237 *203030303030206e200a30303030313336343837203030303030206e200a303030303133363336 *38203030303030206e200a30303030313334343433203030303030206e200a3030303031333836 *3530203030303030206e200a30303030313338353331203030303030206e200a30303030313336 *353933203030303030206e200a30303030313430373439203030303030206e200a303030303134 *30363330203030303030206e200a30303030313338373536203030303030206e200a3030303031 *3431393332203030303030206e200a30303030313431383133203030303030206e200a30303030 *313430383433203030303030206e200a30303030313432393831203030303030206e200a303030 *30313432383632203030303030206e200a30303030313432303134203030303030206e200a3030 *3030313433303633203030303030206e200a30303030313631343837203030303030206e200a30 *303030313631383833203030303030206e200a30303030313830343331203030303030206e200a *30303030323032363136203030303030206e200a30303030323239313731203030303030206e20 *0a30303030323330343434203030303030206e200a30303030323330353536203030303030206e *200a30303030323330363333203030303030206e200a3030303032333037303320303030303020 *6e200a30303030323330383133203030303030206e200a747261696c65720a3c3c0a2f53697a65 *203136310a2f526f6f7420313539203020520a2f496e666f20313630203020520a3e3e0a737461 *7274787265660a3233303930390a2525454f460a addfile ./package.lisp hunk ./package.lisp 1 +(in-package :cl-user) + +(defpackage :js + (:use :common-lisp :net.html.generator) + (:export + ;; addition js symbols + #:new + + ;; literals + #:t + #:nil + #:this + #:false + #:undefined + + ;; keywords + #:break + #:continue + + ;; array literals + #:array + #:list + #:aref + #:make-array + + ;; operators + #:! #:not #:~ + #:* #:/ #:% + #:+ #:- + #:<< #:>> + #:>>> + #:< #:> #:<= #:>= + #:in + #:eql #:== #:!= #:= + #:=== #:!== + #:& + #:^ + #:\| + #:\&\& #:and + #:\|\| #:or + #:>>= #:<<= + #:*= #:/= #:%= #:+= #:\&= #:^= #:\|= #:~= + #:++ #:-- + #:1+ #:1- + #:incf #:decf + + ;; body forms + #:progn + + ;; function definition + #:defun + #:lambda + + ;; object literals + #:create + #:slot-value + #:with-slots + + ;; macros + #:macrolet + #:symbol-macrolet + + ;; lisp eval + #:lisp + + ;; if + #:if + #:when + #:unless + + ;; single argument statements + #:return + #:throw + + ;; single argument expressions + #:delete + #:void + #:typeof + #:instanceof + #:new + + ;; assignment + #:setf + + ;; variables + #:defvar + #:let + + ;; iteration + #:do + #:dotimes + #:dolist + #:doeach + #:while + + ;; with + #:with + + ;; case + #:case + #:default + + ;; try throw catch + #:try + + ;; regex literals + #:regex + + ;; conditional compilation (IE) + #:cc-if + + ;; math library + #:floor + #:random + + ;; html generator for javascript + #:html + + ;; compiler + #:js-compile + #:js + #:js-inline + #:js-file + #:js-script + #:js-to-strings + #:js-to-statement-strings + #:js-to-string + #:js-to-line + + ;; CSS + #:css + #:css-to-string + #:css-inline + #:css-file + + )) addfile ./reference.lisp hunk ./reference.lisp 1 +;;;# ParenScript Language Reference + +;;; This chapters describes the core constructs of ParenScript, as +;;; well as its compilation model. This chapter is aimed to be a +;;; comprehensive reference for ParenScript developers. Programmers +;;; looking for how to tweak the ParenScript compiler itself should +;;; turn to the ParenScript Internals chapter. + +;;;# Statements and Expressions +;;;t \index{statement} +;;;t \index{expression} + +;;; In contrast to Lisp, where everything is an expression, JavaScript +;;; makes the difference between an expression, which evaluates to a +;;; value, and a statement, which has no value. Examples for +;;; JavaScript statements are `for', `with' and `while'. Most +;;; ParenScript forms are expression, but certain special forms are +;;; not (the forms which are transformed to a JavaScript +;;; statement). All ParenScript expressions are statements +;;; though. Certain forms, like `IF' and `PROGN', generate different +;;; JavaScript constructs whether they are used in an expression +;;; context or a statement context. For example: + +(+ i (if 1 2 3)) => i + (1 ? 2 : 3) + +(if 1 2 3) + => if (1) { + 2; + } else { + 3; + } + +;;;# Symbol conversion +;;;t \index{symbol} +;;;t \index{symbol conversion} + +;;; Lisp symbols are converted to JavaScript symbols by following a +;;; few simple rules. Special characters `!', `?', `#', `$', `@', `%', +;;; '/', `*' and `+' get replaced by their written-out equivalents +;;; "bang", "what", "hash", "dollar", "at", "percent", "slash", +;;; "start" and "plus" respectively. + +!?#$@% => bangwhathashdollaratpercent + +;;; The `-' is an indication that the following character should be +;;; converted to uppercase. Thus, `-' separated symbols are converted +;;; to camelcase. The `_' character however is left untouched. + +bla-foo-bar => blaFooBar + +;;; If you want a JavaScript symbol beginning with an uppercase, you +;;; can either use a leading `-', which can be misleading in a +;;; mathematical context, or a leading `*'. + +*array => Array + +;;; The `.' character is left as is in symbols. This allows the +;;; ParenScript programmer to use a practical shortcut when accessing +;;; slots or methods of JavaScript objects. Instead of writing + +(slot-value foobar 'slot) + +;;; we can write + +foobar.slot + +;;; A symbol beggining and ending with `+' or `*' is converted to all +;;; uppercase, to signify that this is a constant or a global +;;; variable. + +*global-array* => GLOBALARRAY + +*global-array*.length => GLOBALARRAY.length + +;;;## Reserved Keywords +;;;t \index{keyword} +;;;t \index{reserved keywords} + +;;; The following keywords and symbols are reserved in ParenScript, +;;; and should not be used as variable names. + +! ~ ++ -- * / % + - << >> >>> < > <= >= == != ==== !== & ^ | && || +*= /= %= += -= <<= >>= >>>= &= ^= |= 1- 1+ +ABSTRACT AND AREF ARRAY BOOLEAN BREAK BYTE CASE CATCH CC-IF CHAR CLASS +COMMA CONST CONTINUE CREATE DEBUGGER DECF DEFAULT DEFUN DEFVAR DELETE +DO DOEACH DOLIST DOTIMES DOUBLE ELSE ENUM EQL EXPORT EXTENDS FALSE +FINAL FINALLY FLOAT FLOOR FOR FUNCTION GOTO IF IMPLEMENTS IMPORT IN INCF +INSTANCEOF INT INTERFACE JS LAMBDA LET LISP LIST LONG MAKE-ARRAY NATIVE NEW +NIL NOT OR PACKAGE PRIVATE PROGN PROTECTED PUBLIC RANDOM REGEX RETURN +SETF SHORT SLOT-VALUE STATIC SUPER SWITCH SYMBOL-MACROLET SYNCHRONIZED T +THIS THROW THROWS TRANSIENT TRY TYPEOF UNDEFINED UNLESS VAR VOID VOLATILE +WHEN WHILE WITH WITH-SLOTS + +;;;# Literal values +;;;t \index{literal value} + +;;;## Number literals +;;;t \index{number} +;;;t \index{number literal} + +; number ::= a Lisp number + +;;; +;;; ParenScript supports the standard JavaScript literal +;;; values. Numbers are compiled into JavaScript numbers. + +1 => 1 + +123.123 => 123.123 + +;;; Note that the base is not conserved between Lisp and JavaScript. + +#x10 => 16 + +;;;## String literals +;;;t \index{string} +;;;t \index{string literal} + +; string ::= a Lisp string + +;;; Lisp strings are converted into JavaScript literals. + +"foobar" => "foobar" +"bratzel bub" => "bratzel bub" + +;;; Escapes in Lisp are not converted to JavaScript escapes. However, +;;; to avoid having to use double backslashes when constructing a +;;; string, you can use the CL-INTERPOL library by Edi Weitz. + +;;;## Array literals +;;;t \index{array} +;;;t \index{ARRAY} +;;;t \index{MAKE-ARRAY} +;;;t \index{AREF} +;;;t \index{array literal} + +; (ARRAY {values}*) +; (MAKE-ARRAY {values}*) +; (AREF array index) +; +; values ::= a ParenScript expression +; array ::= a ParenScript expression +; index ::= a ParenScript expression + +;;; Array literals can be created using the `ARRAY' form. + +(array) => [ ] + +(array 1 2 3) => [ 1, 2, 3 ] + +(array (array 2 3) + (array "foobar" "bratzel bub")) + => [ [ 2, 3 ], [ "foobar", "bratzel bub" ] ] + +;;; Arrays can also be created with a call to the `Array' function +;;; using the `MAKE-ARRAY'. The two forms have the exact same semantic +;;; on the JavaScript side. + +(make-array) => new Array() + +(make-array 1 2 3) => new Array(1, 2, 3) + +(make-array + (make-array 2 3) + (make-array "foobar" "bratzel bub")) + => new Array(new Array(2, 3), new Array("foobar", "bratzel bub")) + +;;; Indexing arrays in ParenScript is done using the form `AREF'. Note +;;; that JavaScript knows of no such thing as an array. Subscripting +;;; an array is in fact reading a property from an object. So in a +;;; semantic sense, there is no real difference between `AREF' and +;;; `SLOT-VALUE'. + +;;;## Object literals +;;;t \index{CREATE} +;;;t \index{SLOT-VALUE} +;;;t \index{WITH-SLOTS} +;;;t \index{object literal} +;;;t \index{object} +;;;t \index{object property} +;;;t \index{property} + +; (CREATE {name value}*) +; (SLOT-VALUE object slot-name) +; (WITH-SLOTS ({slot-name}*) object body) +; +; name ::= a ParenScript symbol or a Lisp keyword +; value ::= a ParenScript expression +; object ::= a ParenScript object expression +; slot-name ::= a quoted Lisp symbol +; body ::= a list of ParenScript statements + +;;; +;;; Object literals can be create using the `CREATE' form. Arguments +;;; to the `CREATE' form is a list of property names and values. To be +;;; more "lispy", the property names can be keywords. + +(create :foo "bar" :blorg 1) + => { foo : "bar", + blorg : 1 } + +(create :foo "hihi" + :blorg (array 1 2 3) + :another-object (create :schtrunz 1)) + => { foo : "hihi", + blorg : [ 1, 2, 3 ], + anotherObject : { schtrunz : 1 } } + +;;; Object properties can be accessed using the `SLOT-VALUE' form, +;;; which takes an object and a slot-name. + +(slot-value an-object 'foo) => anObject.foo + +;;; A programmer can also use the "." symbol notation explained above. + +an-object.foo => anObject.foo + +;;; The form `WITH-SLOTS' can be used to bind the given slot-name +;;; symbols to a macro that will expand into a `SLOT-VALUE' form at +;;; expansion time. + +(with-slots (a b c) this + (+ a b c)) + => this.a + this.b + this.c + +;;;## Regular Expression literals +;;;t \index{REGEX} +;;;t \index{regular expression} +;;;t \index{CL-INTERPOL} + +; (REGEX regex) +; +; regex ::= a Lisp string + +;;; Regular expressions can be created by using the `REGEX' form. The +;;; regex form actually does nothing at all to its argument, and +;;; prints it as is. + +(regex "/foobar/i") => /foobar/i + +;;; Here CL-INTERPOL proves really useful. + +(regex #?r"/([^\s]+)foobar/i") => /([^\s]+)foobar/i + +;;;## Literal symbols +;;;t \index{T} +;;;t \index{FALSE} +;;;t \index{NIL} +;;;t \index{UNDEFINED} +;;;t \index{THIS} +;;;t \index{literal symbols} +;;;t \index{null} +;;;t \index{true} + +; T, FALSE, NIL, UNDEFINED, THIS + +;;; The Lisp symbols `T' and `FALSE' are converted to their JavaScript +;;; boolean equivalents `true' and `false'. + +T => true +FALSE => false + +;;; The Lisp symbol `NIL' is converted to the JavaScript keyword +;;; `null'. + +NIL => null + +;;; The Lisp symbol `UNDEFINED' is converted to the JavaScript keyword +;;; `undefined'. + +UNDEFINED => undefined + +;;; The Lisp symbol `THIS' is converted to the JavaScript keyword +;;; `this'. + +THIS => this + +;;;# Variables +;;;t \index{variable} +;;;t \index{symbol} + +; variable ::= a Lisp symbol + +;;; All the other literal Lisp values that are not recognized as +;;; special forms or symbol macros are converted to JavaScript +;;; variables. This extreme freedom is actually quite useful, as it +;;; allows the ParenScript programmer to be flexible, as flexible as +;;; JavaScript itself. + +variable => variable + +a-variable => aVariable + +*math => Math + +*math.floor => Math.floor + +;;;# Function calls and method calls +;;;t \index{function} +;;;t \index{function call} +;;;t \index{method} +;;;t \index{method call} + +; (function {argument}*) +; (method object {argument}*) +; +; function ::= a ParenScript expression or a Lisp symbol +; method ::= a Lisp symbol beginning with . +; object ::= a ParenScript expression +; argument ::= a ParenScript expression + +;;; Any list passed to the JavaScript that is not recognized as a +;;; macro or a special form (see "Macro Expansion" below) is +;;; interpreted as a function call. The function call is converted to +;;; the normal JavaScript function call representation, with the +;;; arguments given in paren after the function name. + +(blorg 1 2) => blorg(1, 2) + +(foobar (blorg 1 2) (blabla 3 4) (array 2 3 4)) + => foobar(blorg(1, 2), blabla(3, 4), [ 2, 3, 4 ]) + +((aref foo i) 1 2) => foo[i](1, 2) + +;;; A method call is a function call where the function name is a +;;; symbol and begins with a "." . In a method call, the name of the +;;; function is append to its first argument, thus reflecting the +;;; method call syntax of JavaScript. Please note that most method +;;; calls can be abbreviated using the "." trick in symbol names (see +;;; "Symbol Conversion" above). + +(.blorg this 1 2) => this.blorg(1, 2) + +(this.blorg 1 2) => this.blorg(1, 2) + +(.blorg (aref foobar 1) NIL T) + => foobar[1].blorg(null, true) + +;;;# Operator Expressions +;;;t \index{operator} +;;;t \index{operator expression} +;;;t \index{assignment operator} +;;;t \index{EQL} +;;;t \index{NOT} +;;;t \index{AND} +;;;t \index{OR} + +; (operator {argument}*) +; (single-operator argument) +; +; operator ::= one of *, /, %, +, -, <<, >>, >>>, < >, EQL, +; ==, !=, =, ===, !==, &, ^, |, &&, AND, ||, OR. +; single-operator ::= one of INCF, DECF, ++, --, NOT, ! +; argument ::= a ParenScript expression + +;;; Operator forms are similar to function call forms, but have an +;;; operator as function name. +;;; +;;; Please note that `=' is converted to `==' in JavaScript. The `=' +;;; ParenScript operator is not the assignment operator. Unlike +;;; JavaScript, ParenScript supports multiple arguments to the +;;; operators. + +(* 1 2) => 1 * 2 + +(= 1 2) => 1 == 2 + +(eql 1 2) => 1 == 2 + +;;; Note that the resulting expression is correctly parenthized, +;;; according to the JavaScript operator precedence that can be found +;;; in table form at: + + http://www.codehouse.com/javascript/precedence/ + +(* 1 (+ 2 3 4) 4 (/ 6 7)) + => 1 * (2 + 3 + 4) * 4 * (6 / 7) + +;;; The pre/post increment and decrement operators are also +;;; available. `INCF' and `DECF' are the pre-incrementing and +;;; pre-decrementing operators, and `++' and `--' are the +;;; post-decrementing version of the operators. These operators can +;;; take only one argument. + +(++ i) => i++ + +(-- i) => i-- + +(incf i) => ++i + +(decf i) => --i + +;;; The `1+' and `1-' operators are shortforms for adding and +;;; substracting 1. + +(1- i) => i - 1 + +(1+ i) => i + 1 + +;;; The `not' operator actually optimizes the code a bit. If `not' is +;;; used on another boolean-returning operator, the operator is +;;; reversed. + +(not (< i 2)) => i >= 2 + +(not (eql i 2)) => i != 2 + +;;;# Body forms +;;;t \index{body form} +;;;t \index{PROGN} +;;;t \index{body statement} + +; (PROGN {statement}*) in statement context +; (PROGN {expression}*) in expression context +; +; statement ::= a ParenScript statement +; expression ::= a ParenScript expression + +;;; The `PROGN' special form defines a sequence of statements when +;;; used in a statement context, or sequence of expression when used +;;; in an expression context. The `PROGN' special form is added +;;; implicitly around the branches of conditional executions forms, +;;; function declarations and iteration constructs. + +;;; For example, in a statement context: + +(progn (blorg i) (blafoo i)) + => blorg(i); + blafoo(i); + +;;; In an expression context: + +(+ i (progn (blorg i) (blafoo i))) + => i + (blorg(i), blafoo(i)) + +;;; A `PROGN' form doesn't lead to additional indentation or +;;; additional braces around it's body. + +;;;# Function Definition +;;;t \index{function} +;;;t \index{method} +;;;t \index{function definition} +;;;t \index{DEFUN} +;;;t \index{LAMBDA} +;;;t \index{closure} +;;;t \index{anonymous function} + +; (DEFUN name ({argument}*) body) +; (LAMBDA ({argument}*) body) +; +; name ::= a Lisp Symbol +; argument ::= a Lisp symbol +; body ::= a list of ParenScript statements + +;;; As in Lisp, functions are defined using the `DEFUN' form, which +;;; takes a name, a list of arguments, and a function body. An +;;; implicit `PROGN' is added around the body statements. + +(defun a-function (a b) + (return (+ a b))) + => function aFunction(a, b) { + return a + b; + } + +;;; Anonymous functions can be created using the `LAMBDA' form, which +;;; is the same as `DEFUN', but without function name. In fact, +;;; `LAMBDA' creates a `DEFUN' with an empty function name. + +(lambda (a b) (return (+ a b))) + => function (a, b) { + return a + b; + } + +;;;# Assignment +;;;t \index{assignment} +;;;t \index{SETF} +;;;t \index{assignment operator} + +; (SETF {lhs rhs}*) +; +; lhs ::= a ParenScript left hand side expression +; rhs ::= a ParenScript expression + +;;; Assignment is done using the `SETF' form, which is transformed +;;; into a series of assignments using the JavaScript `=' operator. + +(setf a 1) => a = 1 + +(setf a 2 b 3 c 4 x (+ a b c)) + => a = 2; + b = 3; + c = 4; + x = a + b + c; + +;;; The `SETF' form can transform assignments of a variable with an +;;; operator expression using this variable into a more "efficient" +;;; assignment operator form. For example: + +(setf a (1+ a)) => a++ + +(setf a (* 2 3 4 a 4 a)) => a *= 2 * 3 * 4 * 4 * a + +(setf a (- 1 a)) => a = 1 - a + +;;;# Single argument statements +;;;t \index{single-argument statement} +;;;t \index{RETURN} +;;;t \index{THROW} +;;;t \index{THROW} +;;;t \index{function} + +; (RETURN {value}?) +; (THROW {value}?) +; +; value ::= a ParenScript expression + +;;; The single argument statements `return' and `throw' are generated +;;; by the form `RETURN' and `THROW'. `THROW' has to be used inside a +;;; `TRY' form. `RETURN' is used to return a value from a function +;;; call. + +(return 1) => return 1 + +(throw "foobar") => throw "foobar" + +;;;# Single argument expression +;;;t \index{single-argument expression} +;;;t \index{object creation} +;;;t \index{object deletion} +;;;t \index{DELETE} +;;;t \index{VOID} +;;;t \index{TYPEOF} +;;;t \index{INSTANCEOF} +;;;t \index{NEW} +;;;t \index{new} + +; (DELETE {value}) +; (VOID {value}) +; (TYPEOF {value}) +; (INSTANCEOF {value}) +; (NEW {value}) +; +; value ::= a ParenScript expression + +;;; The single argument expressions `delete', `void', `typeof', +;;; `instanceof' and `new' are generated by the forms `DELETE', +;;; `VOID', `TYPEOF', `INSTANCEOF' and `NEW'. They all take a +;;; ParenScript expression. + +(delete (new (*foobar 2 3 4))) => delete new Foobar(2, 3, 4) + +(if (= (typeof blorg) *string) + (alert (+ "blorg is a string: " blorg)) + (alert "blorg is not a string")) + => if (typeof blorg == String) { + alert("blorg is a string: " + blorg); + } else { + alert("blorg is not a string"); + } + +;;;# Conditional Statements +;;;t \index{conditional statements} +;;;t \index{IF} +;;;t \index{WHEN} +;;;t \index{UNLESS} +;;;t \index{conditionals} + +; (IF conditional then {else}) +; (WHEN condition then) +; (UNLESS condition then) +; +; condition ::= a ParenScript expression +; then ::= a ParenScript statement in statement context, a +; ParenScript expression in expression context +; else ::= a ParenScript statement in statement context, a +; ParenScript expression in expression context + +;;; The `IF' form compiles to the `if' javascript construct. An +;;; explicit `PROGN' around the then branch and the else branch is +;;; needed if they consist of more than one statement. When the `IF' +;;; form is used in an expression context, a JavaScript `?', `:' +;;; operator form is generated. + +(if (blorg.is-correct) + (progn (carry-on) (return i)) + (alert "blorg is not correct!")) + => if (blorg.isCorrect()) { + carryOn(); + return i; + } else { + alert("blorg is not correct!"); + } + +(+ i (if (blorg.add-one) 1 2)) + => i + (blorg.addOne() ? 1 : 2) + +;;; The `WHEN' and `UNLESS' forms can be used as shortcuts for the +;;; `IF' form. + +(when (blorg.is-correct) + (carry-on) + (return i)) + => if (blorg.isCorrect()) { + carryOn(); + return i; + } + +(unless (blorg.is-correct) + (alert "blorg is not correct!")) + => if (!blorg.isCorrect()) { + alert("blorg is not correct!"); + } + +;;;# Variable declaration +;;;t \index{variable} +;;;t \index{variable declaration} +;;;t \index{binding} +;;;t \index{scoping} +;;;t \index{DEFVAR} +;;;t \index{LET} + +; (DEFVAR var {value}?) +; (LET ({var | (var value)) body) +; +; var ::= a Lisp symbol +; value ::= a ParenScript expression +; body ::= a list of ParenScript statements + +;;; Variables (either local or global) can be declared using the +;;; `DEFVAR' form, which is similar to its equivalent form in +;;; Lisp. The `DEFVAR' is converted to "var ... = ..." form in +;;; JavaScript. + +(defvar *a* (array 1 2 3)) => var A = [ 1, 2, 3 ] + +(if (= i 1) + (progn (defvar blorg "hallo") + (alert blorg)) + (progn (defvar blorg "blitzel") + (alert blorg))) + => if (i == 1) { + var blorg = "hallo"; + alert(blorg); + } else { + var blorg = "blitzel"; + alert(blorg); + } + +;;; A more lispy way to declare local variable is to use the `LET' +;;; form, which is similar to its Lisp form. + +(if (= i 1) + (let ((blorg "hallo")) + (alert blorg)) + (let ((blorg "blitzel")) + (alert blorg))) + => if (i == 1) { + var blorg = "hallo"; + alert(blorg); + } else { + var blorg = "blitzel"; + alert(blorg); + } + +;;; However, beware that scoping in Lisp and JavaScript are quite +;;; different. For example, don't rely on closures capturing local +;;; variables in the way you'd think they would. + +;;;# Iteration constructs +;;;t \index{iteration} +;;;t \index{iteration construct} +;;;t \index{loop} +;;;t \index{array traversal} +;;;t \index{property} +;;;t \index{object property} +;;;t \index{DO} +;;;t \index{DOTIMES} +;;;t \index{DOLIST} +;;;t \index{DOEACH} +;;;t \index{WHILE} + +; (DO ({var | (var {init}? {step}?)}*) (end-test) body) +; (DOTIMES (var numeric-form) body) +; (DOLIST (var list-form) body) +; (DOEACH (var object) body) +; (WHILE end-test body) +; +; var ::= a Lisp symbol +; numeric-form ::= a ParenScript expression resulting in a number +; list-form ::= a ParenScript expression resulting in an array +; object ::= a ParenScript expression resulting in an object +; init ::= a ParenScript expression +; step ::= a ParenScript expression +; end-test ::= a ParenScript expression +; body ::= a list of ParenScript statements + +;;; The `DO' form, which is similar to its Lisp form, is transformed +;;; into a JavaScript `for' statement. Note that the ParenScript `DO' +;;; form does not have a return value, that is because `for' is a +;;; statement and not an expression in JavaScript. + +(do ((i 0 (1+ i)) + (l (aref blorg i) (aref blorg i))) + ((or (= i blorg.length) + (eql l "Fumitastic"))) + (document.write (+ "L is " l))) + => for (var i = 0, l = blorg[i]; + !(i == blorg.length || l == "Fumitastic"); + i = i + 1, l = blorg[i]) { + document.write("L is " + l); + } + +;;; The `DOTIMES' form, which lets a variable iterate from 0 upto an +;;; end value, is a shortcut for `DO'. + +(dotimes (i blorg.length) + (document.write (+ "L is " (aref blorg i)))) + => for (var i = 0; i != blorg.length; i = i++) { + document.write("L is " + blorg[i]); + } + +;;; The `DOLIST' form is a shortcut for iterating over an array. Note +;;; that this form creates temporary variables using a function called +;;; `JS-GENSYM', which is similar to its Lisp counterpart `GENSYM'. + +(dolist (l blorg) + (document.write (+ "L is " l))) + => var tmpArr1 = blorg; + for (var tmpI2 = 0; tmpI2 < tmpArr1.length; + tmpI2 = tmpI2++) { + var l = tmpArr1[tmpI2]; + document.write("L is " + l); + } + +;;; The `DOEACH' form is converted to a `for (var .. in ..)' form in +;;; JavaScript. It is used to iterate over the enumerable properties +;;; of an object. + +(doeach (i object) + (document.write (+ i " is " (aref object i)))) + => for (var i in object) { + document.write(i + " is " + object[i]); + } + +;;; The `WHILE' form is transformed to the JavaScript form `while', +;;; and loops until a termination test evaluates to false. + +(while (film.is-not-finished) + (this.eat (new *popcorn))) + => while (film.isNotFinished()) { + this.eat(new Popcorn); + } + +;;;# The `CASE' statement +;;;t \index{CASE} +;;;t \index{switch} + +; (CASE case-value clause*) +; +; clause ::= (value body) +; case-value ::= a ParenScript expression +; value ::= a ParenScript expression +; body ::= a list of ParenScript statements + +;;; The Lisp `CASE' form is transformed to a `switch' statement in +;;; JavaScript. Note that `CASE' is not an expression in +;;; ParenScript. The default case is not named `T' in ParenScript, but +;;; `DEFAULT' instead. + +(case (aref blorg i) + (1 (alert "one")) + (2 (alert "two")) + (default (alert "default clause"))) + => switch (blorg[i]) { + case 1: alert("one"); + case 2: alert("two"); + default: alert("default clause"); + } + +;;;# The `WITH' statement +;;;t \index{WITH} +;;;t \index{dynamic scope} +;;;t \index{binding} +;;;t \index{scoping} +;;;t \index{closure} + +; (WITH (object) body) +; +; object ::= a ParenScript expression evaluating to an object +; body ::= a list of ParenScript statements + +;;; The `WITH' form is compiled to a JavaScript `with' statements, and +;;; adds the object `object' as an intermediary scope objects when +;;; executing the body. + +(with ((create :foo "foo" :i "i")) + (alert (+ "i is now intermediary scoped: " i))) + => with ({ foo : "foo", + i : "i" }) { + alert("i is now intermediary scoped: " + i); + } + +;;;# The `TRY' statement +;;;t \index{TRY} +;;;t \index{CATCH} +;;;t \index{FINALLY} +;;;t \index{exception} +;;;t \index{error handling} + +; (TRY body {(:CATCH (var) body)}? {(:FINALLY body)}?) +; +; body ::= a list of ParenScript statements +; var ::= a Lisp symbol + +;;; The `TRY' form is converted to a JavaScript `try' statement, and +;;; can be used to catch expressions thrown by the `THROW' +;;; form. The body of the catch clause is invoked when an exception +;;; is catched, and the body of the finally is always invoked when +;;; leaving the body of the `TRY' form. + +(try (throw "i") + (:catch (error) + (alert (+ "an error happened: " error))) + (:finally + (alert "Leaving the try form"))) + => try { + throw "i"; + } catch (error) { + alert("an error happened: " + error); + } finally { + alert("Leaving the try form"); + } + +;;;# The HTML Generator +;;;t \index{HTML} +;;;t \index{HTML generation} + +; (HTML html-expression) + +;;; The HTML generator of ParenScript is very similar to the HTML +;;; generator included in AllegroServe. It accepts the same input +;;; forms as the AllegroServer HTML generator. However, non-HTML +;;; construct are compiled to JavaScript by the ParenScript +;;; compiler. The resulting expression is a JavaScript expression. + +(html ((:a :href "foobar") "blorg")) + => "blorg" + +(html ((:a :href (generate-a-link)) "blorg")) + => "blorg" + +;;; We can recursively call the JS compiler in a HTML expression. + +(document.write + (html ((:a :href "#" + :onclick (js-inline (transport))) "link"))) + => document.write("link") + +;;;# Macrology +;;;t \index{macro} +;;;t \index{macrology} +;;;t \index{DEFJSMACRO} +;;;t \index{MACROLET} +;;;t \index{SYMBOL-MACROLET} +;;;t \index{JS-GENSYM} +;;;t \index{compiler} + +; (DEFJSMACRO name lambda-list macro-body) +; (MACROLET ({name lambda-list macro-body}*) body) +; (SYMBOL-MACROLET ({name macro-body}*) body) +; (JS-GENSYM {string}?) +; +; name ::= a Lisp symbol +; lambda-list ::= a lambda list +; macro-body ::= a Lisp body evaluating to ParenScript code +; body ::= a list of ParenScript statements +; string ::= a string + +;;; ParenScript can be extended using macros, just like Lisp can be +;;; extended using Lisp macros. Using the special Lisp form +;;; `DEFJSMACRO', the ParenScript language can be +;;; extended. `DEFJSMACRO' adds the new macro to the toplevel macro +;;; environment, which is always accessible during ParenScript +;;; compilation. For example, the `1+' and `1-' operators are +;;; implemented using macros. + +(defjsmacro 1- (form) + `(- ,form 1)) + +(defjsmacro 1+ (form) + `(+ ,form 1)) + +;;; A more complicated ParenScript macro example is the implementation +;;; of the `DOLIST' form (note how `JS-GENSYM', the ParenScript of +;;; `GENSYM', is used to generate new ParenScript variable names): + +(defjsmacro dolist (i-array &rest body) + (let ((var (first i-array)) + (array (second i-array)) + (arrvar (js-gensym "arr")) + (idx (js-gensym "i"))) + `(let ((,arrvar ,array)) + (do ((,idx 0 (++ ,idx))) + ((>= ,idx (slot-value ,arrvar 'length))) + (let ((,var (aref ,arrvar ,idx))) + ,@body))))) + +;;; Macros can be added dynamically to the macro environment by using +;;; the ParenScript `MACROLET' form (note that while `DEFJSMACRO' is a +;;; Lisp form, `MACROLET' and `SYMBOL-MACROLET' are ParenScript forms). + +;;; ParenScript also supports symbol macros, which can be introduced +;;; using the ParenScript form `SYMBOL-MACROLET'. A new macro +;;; environment is created and added to the current macro environment +;;; list while compiling the body of the `SYMBOL-MACROLET' form. For +;;; example, the ParenScript `WITH-SLOTS' is implemented using symbol +;;; macros. + +(defjsmacro with-slots (slots object &rest body) + `(symbol-macrolet ,(mapcar #'(lambda (slot) + `(,slot '(slot-value ,object ',slot))) + slots) + ,@body)) + +;;;# The ParenScript Compiler +;;;t \index{compiler} +;;;t \index{ParenScript compiler} +;;;t \index{JS-COMPILE} +;;;t \index{JS-TO-STRINGS} +;;;t \index{JS-TO-STATEMENT-STRINGS} +;;;t \index{JS-TO-STRING} +;;;t \index{JS-TO-LINE} +;;;t \index{JS} +;;;t \index{JS-INLINE} +;;;t \index{JS-FILE} +;;;t \index{JS-SCRIPT} +;;;t \index{nested compilation} + +; (JS-COMPILE expr) +; (JS-TO-STRINGS compiled-expr position) +; (JS-TO-STATEMENT-STRINGS compiled-expr position) +; +; compiled-expr ::= a compiled ParenScript expression +; position ::= a column number +; +; (JS-TO-STRING expression) +; (JS-TO-LINE expression) +; +; expression ::= a Lisp list of ParenScript code +; +; (JS body) +; (JS-INLINE body) +; (JS-FILE body) +; (JS-SCRIPT body) +; +; body ::= a list of ParenScript statements + +;;; The ParenScript compiler can be invoked from withing Lisp and from +;;; within ParenScript itself. The primary API function is +;;; `JS-COMPILE', which takes a list of ParenScript, and returns an +;;; internal object representing the compiled ParenScript. + +(js-compile '(foobar 1 2)) + => # + +;;; This internal object can be transformed to a string using the +;;; methods `JS-TO-STRINGS' and `JS-TO-STATEMENT-STRINGS', which +;;; interpret the ParenScript in expression and in statement context +;;; respectively. They take an additional parameter indicating the +;;; start-position on a line (please note that the indentation code is +;;; not perfect, and this string interface will likely be +;;; changed). They return a list of strings, where each string +;;; represents a new line of JavaScript code. They can be joined +;;; together to form a single string. + +(js-to-strings (js-compile '(foobar 1 2)) 0) + => ("foobar(1, 2)") + +;;; As a shortcut, ParenScript provides the functions `JS-TO-STRING' +;;; and `JS-TO-LINE', which return the JavaScript string of the +;;; compiled expression passed as an argument. + +(js-to-string '(foobar 1 2)) + => "foobar(1, 2)" + +;;; For static ParenScript code, the macros `JS', `JS-INLINE', +;;; `JS-FILE' and `JS-SCRIPT' avoid the need to quote the ParenScript +;;; expression. All these forms add an implicit `PROGN' form around +;;; the body. `JS' returns a string of the compiled body, where the +;;; other expression return an expression that can be embedded in a +;;; HTML generation construct using the AllegroServe HTML +;;; generator. `JS-SCRIPT' generates a "SCRIPT" node, `JS-INLINE' +;;; generates a string to be used in node attributs, and `JS-FILE' +;;; prints the compiled ParenScript code to the HTML stream. + +;;; These macros are also available inside ParenScript itself, and +;;; generate strings that can be used inside ParenScript code. Note +;;; that `JS-INLINE' in ParenScript is not the same `JS-INLINE' form +;;; as in Lisp, for example. The same goes for the other compilation +;;; macros. + addfile ./reference.pdf binary ./reference.pdf oldhex * newhex *255044462d312e340a332030206f626a203c3c0a2f4c656e67746820313034352020202020200a *2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78dadd584b6fdb46 *10befb57f056092837fb26f7e8244ed136ad834ae8252d509a5acb0a28d2a028b7fef7997d5194 *48ae819e12c3074be237df3cbe9dd58c4882e18f24847294639a641c23a5f2a4dc5fe1640b8f7e *ba221ec238431931ef261ea60c6344144bd24c028a0e31232c9139623449a5e488e6d260dfaeaf *de7c60f034439488647d0faf1862105100ad379f179f8a7649f285ae5765bb7bec96291578f1b1 *a8b7c762abddbb3ff4bdf6a0522fff5effe2680952c2d2661ca94c41bc02096e497f2beaa3ae9c *f5ed46d79be2a13286498e1483682943b9a01e6aa9cb078726fc47f782622cbc2f9a108e1897c6 *574a18451c2838a4c095a578d7d49daebb430f57484966d0185c519461e78a2c5362a821e578ba *4bb2808c6db629c93884476df4860eb226b9a5a39e6ed5159ddedb00ac7d516fdc8b9bff1e5b7d *38ec80aea9e1215182910baacc52b140f5bcbf6b7cddcaa67ed2ed61d7d4f09e71ce9ca5ad7d9f *201446710e5531623841193279c2d981440eba7dd23e9a5ff5f3bf8dadf50662c9945ca0652a00 *f66dfee34a9dde41de5737ebfeb473c990009d794e111174b27902261d804247f4e5bb24725a8c *bce54810f6823787197b1b9cc6702170891165c27ae35ef98fbb4eb78597fea9a88eda9c268985 *7401bd283bef65fffdb8bf837eb54c95a3052e2ef26f5bf0ff7f0a788e28dc3ff1537002cd9f02 *8f899f82a8b7700a22de08532883cb8c33093736f7e2512fdeaa6b77f5f652bc2ccb47d5f83ea5 *9cd3d01723aee10934afe1b0aab31a46bd050d23de7a0da1a399545e43e635bc6edbe2f952c29c *aa572ea1af455cc213685ec2615167258c7a0b1246bcf51212334f8436e45ec2dbbb2fbaec2e35 *94f0f5fdba35f4c5886b7802cd6b38a8aa98d530ea2d6818f1d66b08833217a10d453ffe6c8f55 *d19e66313bc21efc44658485c1ecd49ff27bd1c8271bd7e8049ad76850b5798da2de8246116f41 *23960318873e935ea3b3b1e760a75fd36754bdd2592554212ade00342bdeb09c724ebcb8372fde *c8dbc4c4caa444c22f8cc24fac7f2e09218ba2dd1577951d5633955117cbc5a224bdc587635d76 *7df79545555d6e4c7bdd3d986d69730621592ec52473e6996f1fe114754d7bbe77d9a58b52ce05 *00c7c6b9377edb6cfcb7f57dd3eeedd8ad3885c763133599c97bfd17c6b4def94f18a5ecc2da6d *7904c32407f86b886d5b9b8dd1f8329fa8095f8438f40ae6c1caafa645bb3d7a3bd32f76f1847a *b9ddd3ac973354f4252aed4a662e44930351185a10e29de0628e0b96ee8dcd3874efd91a8c1597 *33f6dcd99f1d1fc7b0d125dcd7852f2315b0fb401126ea281cc5cfe6ee181c28d0bb6b8fa50d80 *da00a6d676229df5fac1bbfde7ddf5eae68761495d59884191d122107a42c19dc7267fd5490324 *3d61468d0c012222b340e37e9f98e9e3b1abaf5551f444656e6473747265616d0a656e646f626a *0a322030206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203320302052 *0a2f5265736f75726365732031203020520a2f4d65646961426f78205b302030203539352e3237 *36203834312e38395d0a2f506172656e74203130203020520a3e3e20656e646f626a0a31203020 *6f626a203c3c0a2f466f6e74203c3c202f463330203620302052202f463332203920302052203e *3e0a2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a313320 *30206f626a203c3c0a2f4c656e67746820313833392020202020200a2f46696c746572202f466c *6174654465636f64650a3e3e0a73747265616d0a78dacd586d6fdb3610fe9e5fe1a12d2aaf352b *92922875d8daade84b8a76eb5a03c3d0161863d3b656597225394e30ecbfef8e4749b66527c33a *a041e0483c1e8ff7f2f078273ef0e18f0fb80858ec8b810a7c9624f160b23cf10773987a7ec21d *8b0c24531c470726474114b390cbc1684bc24fe39307cfa418242c89e4603ceb76f123c6453218 *4fdf7b5c0d472af4bdf1c20c47025efef8ed74fce22ebd57b5aecdd2e4350c79184b8f07c38fe3 *97b0258c59c2631211ef8b18bf1d86a1f7fb01292250fc8894644fca8bf1eb57f4f6dce4a6d475 *51a21a2a483c1e1e10207c12f05a4fca222be697c01dc5618f5b1137dfdbee8d2e4dfe6e52a6ab *9a084f8ae52a1d722f33b02f4f625f793c3ab4af188e42dff74ef3a9b980a5898c63742b705af7 *f380c92042ffc33a193011476430483db8f12b9dcfd77aeef47a6b66061826c609f4bb78a21e82 *298828ca1b2fd26a38925c7893855ed5a6b423ee4d4d05c2cf8c9bacd160cb05fee4b167886b52 *e4555d0e636f3da91d6731a3272868199d92f7812a94a71dd7c66419896828692360522c478dc3 *38382c0cada2ab34d3755ae4c351003e5d165393310806c08b4c40aa338106448c3d9d2ecd9448 *7541a4334363ed9641cc48d985c9abf4dc101791c08f6430f7d09d7666064ee86bb86731581307 *de14d6997393152b702d2a8cae019a652de6a55e2ec9e7c09b15c5a7349fd300f78017e92d8a0d *51507bfbdc18fd89e6282c406bf7de751d61661b26686b6ac1892370bac966eec02d40ad629d4d *6958afcbdcbd15eeb905fa5d4391789a83e7739d556e1f170a1578ec5a500b07ea77cd99774274 *ee94797ab12a4d5541f8abeb007d0a5a4bc82313b426af4b5dd544b0ee0b03ef555aad108d31f7 *360bd3a21966204ee565bda010c00a7b3280ae9d4873e160623501f94ecc4b7daedb9803ff527f *b2e706375d98034899a63394d340cbe24ac80870596f102f26a7b176cfdd8def233106e5d3c9c2 *cd9feb6c0daeab686803264384370e71d2d84589f36837d766d9fb07d4743b4808c0c21e5378c9 *0b7a5aa180e7088ef0d30bbd5c65c6711070e165d72d5b19dd313a14b980c65d40850a011a02b4 *412ddc61db8d39572c91d271dcef8b889868663769bde80b108ac924712ce8959e08c857118b83 *60df25d9819c2a1216c7b193065e0903e9bd2e2cf2447c2031402604b39615cdeb16843068630d *4068c22d03c8596b2038811353d63acd6950adcc24d5d951a918d7915370db94bcb07189bc0f7e *e85322814123005e3798101c02a22d256100c72aaf901533ab25148e8b1ebba10fbbd0c35e1c51 *03fafd686f00603e92bbc29ddc25399e3f5068fb245444ef54e3cd56788a08681c0f61b19e2f30 *2c7ee03d697dc703b2161d2ce1c64e3f1dc4224029e02eb4a7cf0e403164fe9540123ef3fd06cd *6fdefef2fce7230052db78c604c999103b997c4e350da60b1ef5d208155c3bce47b6bd4b1a4990 *f8104d0b7b0fc018de2ee9adf5250ed615c61765a2c3ecb47beea5c27edc60d3da5cb8bba170d7 *8dee9776f64ac2bb15b91946c5f79e35fc8612cb43947ff274dc16ae5cc62c512154b7027ccf6d *6dcb22ac6ee17f57dfe2250389c496b59f4fde7ff40753a8815fc2ef4ff86d4e904bb030048150 *fe86c9a03483d9c9bb935f5b0934db0ae915d01c42148a0863d56a4205b41a808a514400095912 *cb565b740f9eb97b004801aea50752209ef69dd343d043e2a1c11f0dbfff6167ddbd6eb96378b4 *b3fa213e221272d48f92330ef7f357f323cd8fdcf21b104e38b35cc9abc3e9789a705e11bca37e *f713267870130cee34e91bacc050bfd3160d6e4138db825f87d1bf8e592c92980948115fdfe22d *4dfa1627924590f41b1e5ba37e77d4a65831914437c1a64e93be4d31d4db42b5daa24d7f53b44c *5699ebe206d7a0047157dba8fe0f1bd53536769a1c8f9be3411be5f1b84521932abe0936759a1c *8f9be3a1b8f53baa5198b040843b7d956cfaaacbe5599135b76d0e6d4e736b5fd54961a304fdae *803a94d6c30b8ddb22010724b0b63db6a06e11c9db554827a322a6b34b22ce8a2c2b36b6e142b2 *7654b3716bd2c39f023243fcb6a881c603ea861886ef9a4a18e7a0012df5c47ed0e855641c7c14 *82dba8dcfaa6ef08c8f02a3ede5d28b8c79b92efd1e1d5eadfadbef59ff66ea66f7f91e68fbf68 *ef3bd7ad1e0591f4ee3e00d4dc3d204a844ca9c0317f7ba0aa863b27125796d59cf961c371ef1a *097353379041e4ae323d69000b58a41649491018ed200deae2143f2749e96dcab4aea147295c1f *8634f3799d42234c9d06123e0821cf743e8767801e50b1256d16ba6e4989254143bdd8e39ac261 *8093355281b737d35bbda292ffd0e198609745dc78dc91bbcabacd5a5aad4bcbb7f7a505e7b0cb *cad65537eb4a7d385e757a6eb2cb2187ae9f1dcbab1c5abcc8973720af6e6972b48c6b786c2678 *74ebf6e33bbb65368613e38701a308e91adc3f81d46a5bae7d27b8afe589cf0279e4ba762ca38e *87b4dbe9070340af6ac4d047b2bdad9aaff7fdadfe0148d8c707656e6473747265616d0a656e64 *6f626a0a31322030206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e74732031 *33203020520a2f5265736f7572636573203131203020520a2f4d65646961426f78205b30203020 *3539352e323736203834312e38395d0a2f506172656e74203130203020520a3e3e20656e646f62 *6a0a31312030206f626a203c3c0a2f466f6e74203c3c202f463332203920302052202f46333020 *3620302052202f46333820313520302052202f46333720313820302052203e3e0a2f50726f6353 *6574205b202f504446202f54657874205d0a3e3e20656e646f626a0a32312030206f626a203c3c *0a2f4c656e67746820323330372020202020200a2f46696c746572202f466c6174654465636f64 *650a3e3e0a73747265616d0a78dacd5a6d73db3612feee5fa17e684f8e4b84e03b7b71666899b6 *9950a42a52767dbd768692685b3d89f489945dcf64fadb6f012c282a32937eb899683c3616c012 *d87df60d204d7b2afcd01ed50ce2a85acf3654e2ba4e6fb63a527bf730757944914537746253d6 *7b6552312c879854ef29ad15ced2a3b717bada73896be9bdf46ebb8b6a11aab9bd74fe6b3f7dc8 *8f7f4b3f00a3d3627489a119b032e35070beb590436ccdc4e94575ac68b6d5cf0ad69afd45315f *ccb27a511662bc7ec86a3153c3567ce8ae5c2ecbe745712fbab3876c9dcd8e69bfced762a47a28 *37cbb9a0a7b9787a56164ff9bace71b82e45bb79e4f2f514cd21d4707b0aa5c4354d2eda23ac47 *9dfe2cab7202dcae01da6eaa1ff7f5b54ca2ba5fd457555d9caef2471057c8a11afdea65352d97 *95e8647cbf5c744060d0a9911946b8cc6c265be5cb462a53dae0c84f1b831a9a0666347a966b10 *6a1bcc9cff3dfaf537b53707db7f3852890e367e065a25d4757bab2360775cec2d8f92a39f5bbe *816b29adc5f67cc300fc546a361b32558561985538c2baaa138df9580be287f2397fe2663355e1 *0ad02ef3bb5a509ba22e37b307c0219f93cf75a4ba435c1bb6b434623894fb35b19867c3dfad6f *abb033d11c670f83de1ff0cb31e869c4346141707dd3edadf3dedd0e0262b659642f78a84189a9 *5900d0561201900da6772d8bc7846902c47a232dd37ebacc94bbb254a66078c5d4ccfee97bd1c2 *c445599e65eb7d5f52744a283c0f9e406c5da018dc3147d0fb2fe586115aff392b6a319489810f *d95396ccd68b471c166e27e6a6f9fda2284438c1d4f3a27e10133c246164f3d88a841f8f9921b7 *5bcd24570ecfa1a9d51d1b6f2ae6d1a6cb658166996773b6db7e188146aad31d4600a06de33488 *a159a028b8c6c362c604b6549405b698e28eab452577e3fd45b123c92a0391e10f249ca51881a0 *abf33f6bbe3aed97eb2dbba572c1315b5816b11c7347cd5755a216a43a29f39bd755921a773ab8 *e9426c6156ffb60ede92a4d3c1250fd7385bafb3975ddff6f8d057fcdaf86271311da38dd96755 *0a921b95d5659b82b8b3f20ce3529961988f57ed194d780870605e860c6be82cc3caf98c951ea4 *454102e61126ee621b625aff918f95f7eb6c254b8c4b1c77b7c4ac98643ae67616573c58d84026 *1ab64a1f34102eca46a0b8adebd9a616bd679e1c0b7c6636cbab8a7b3be75c967525962d719b55 *5e3f9473397827065bc9a11dbd1697b09cfe91cf6a06844ed57e5054354481c8ceec79d63eaf17 *f58215abfb4e0fd6d9e1c3fc8a07dbff0f0fb6bfe2c15b49ba3d187998faff564d95e1a83c65cb *4d2e3c18527693b1ffc1268189fe3d8f7ece056498a9047679176c860b1a19fa01c0d692a41336 *c9c3f414101106cedf03c663aee8347589d15097a030a1373b508de682c88b7933c88bd57e8ab0 *55e238f2c475b22f814b5443a6dd72fdca0250a30db33b6db3e7ddd6019689d23a60b2ae086887 *250c41ec55514d674c2233a894183add490dd5e2be58dcbd0837c15330a7e43149b619ba5409b1 *c99245819ce57a67fe7e0926590afa295b2fb2e932ef2c39065c031c6a1d40c96949d2ed79c8c3 *ad25f45478e57903e95b53d5a6f65c86f199177ae36385f6c7de6da7f62c539bf6b7d35ecc2bf8 *f80118813a50babe5cf725cfbe11c8322feed9a1b27d0c90a6e0b6f06e258f0835ad2703a19d2d *604b2a0ece3aa1f018f3e4715ee5eba71c2bd2c7fce5b95c437ddb8b5856d498c8db83051ce98c *9daba4a5f7ffc39f6741ca6a2463e05987112c33417489bb9ad5beab4147d08d2430c2cf11b0e2 *6747037eb0b45bab8a9beafea1b928318aa75831e060804a66d56e108b1eabbf702fac3a435ad7 *5da2eb07e04c5b413a7d09591810df0977f94b342727a25514d1be11cd5bd17c8f4cc8239a77ef *44fbfebd6c9190e3acb1faef4eb18bed29b6df35fded08123f88e677d17cc2411cfdf4a9d310e0 *c8ba7d08f7d59624dda6401e1ed6a8f85b6cbfc7f6045be554422ec17cdf1092fa01dbdf4f05ee *9fb04fd15cf4a413376a13836a8780db56926edc90871f6ece9274ec0d52bc0045e7488cfd0b49 *b16ac4c9b3380e7d2fc20ecf8ebef711bbb7a92fa8819734543ab84272a004b8e0e08a15394e85 *5e927442aa5ac4300fe180d992a41b52e461900ee2e1d0430de328491b320da2898466ec7b12b0 *73ff6c7279c9d11ccb91c185a42ebc4998369d49d490d75ec31dfab056078e9a6b12c3350e00c7 *96249d384a1e86e3798cfac5be27fde83c0e0389e8799c06433f919dc9598880fa2103537aa11f *4d8648fd1c22f1cb281ea7924efde81c57b9f0c2a41b49c720a67e0837c59624dd48220f43f222 *883c549d932106f445187b6943c6e84f170d3189060cc93488d1ed2ee3148d22a339188e427fe8 *4769d2f41b688348b6e0ce5da0da3a316dfb0032674b926e509187bfd984d0f6a2811f4b24a246 *edd41f5f7803f4bf0f884ce80dcfce3d51592060713048460d25c7e2e8525043efa3afb41270e4 *a5c1352e1bf9379d985a1ab1e821bc946b49d28d29f2304ca300dd348a110ce98b236ff0d1bb44 *dd47e3e0ba499fa3717c898e36e297a738f507a98f856c04692118087a0ce52dc65c30f62ffd5f *24994ec65127982625d641dc745a927483893c0cccc44fd13593ab262693304e956b2f9485087c *3895f8249391a840563fb9099ada9ddc0ecfe250197a8371dc386e721b0daec67114fc4b229d76 *220857e08308702947377a9c83dfc2ae020cdb14b4bc699172189c29097c19f3e9184334bd653e *386ab2c22482521d4412a44914fa092ed114f0eb3838975408e608bb4b10dcfe6de310cee72d49 *bae1441e06e8cd958f417a7315c8420d4e76b5a514e69bc9f69a6d10ddb076aed9ba4154bc261b *78c90e1775bedebe3b5a6ef2ea958bbacaac4f2c3c5818cd153ddaaca6f213df52ac5475614f4d *9d7f46fcf6d8b724e9c45ef2307dff29302e505946fff413de6d32ac398bea71876bffcd28b588 *063bb5df8cee7d5c80cb71bfda3c3e966bf6baaf1203fc5b049fa9b3622e1e998b91f6b73fd65f *4a6bb2ce53066b30831290ccb6d158b8a87cc7c1df5182abb886b1f3926256ae1e174bf95e6251 *f00fd440353bb28ff2f87a42acbbff7602ffa7c05589a177980459942dcfdee7678d7d76b66cb9 *0c7f47b4f74d1cffc7617fabff01f3128733656e6473747265616d0a656e646f626a0a32302030 *206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203231203020520a2f52 *65736f7572636573203139203020520a2f4d65646961426f78205b302030203539352e32373620 *3834312e38395d0a2f506172656e74203130203020520a3e3e20656e646f626a0a31392030206f *626a203c3c0a2f466f6e74203c3c202f463330203620302052202f46333820313520302052202f *46333720313820302052202f463332203920302052203e3e0a2f50726f63536574205b202f5044 *46202f54657874205d0a3e3e20656e646f626a0a32342030206f626a203c3c0a2f4c656e677468 *20313830362020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a737472 *65616d0a78daed5a5b6fdb36147ef7af10ba17798839f126911d3a201bdcad5dd6768db761c8f2 *20db72add69132498e930efbef3bbce8624b72b2a14034a02852de0ec9ef5c78ce2165ec78f00f *3b9830243ce204cc43520a677135f29c7730f4fd085b12ca280ab06a750c4e28918853011558c8 *979a06f98a0afeafe93c204044e80dfe1c5d5c7ace12d67a097fefe16f37525404710e88000897 *4e1639abd1f9e8e76a05335a2dd2028219469cf8ce24f07c848946f2ed6cf4d5731a380249df77 *662b07738ea4a04e49335b5eb8783ca17ec0dd67df8c279c70685fce5e8ea6b36a694c617ec01d *5f728483c7e3d08c4fecf4c717b42f18226018c7045dd26841130a42a746ca95b46d27c81c56f0 *1c092b50b5c284628485da4f20e609bdc2abb488c613c23db758874559b35df330b7b538376592 *2a1a26dd459ae45176132d2d6554eca228318db338bf36b530b1e32fc39bf07c91c5d705eab505 *26109564085aa891f46bc1d228197e718b3d60137b5ead03df8a9f3818031cbe277f02f2078ed5 *5cd0e578829588ce8b2c4ede19716de222cac24dde2b2b4f2d3a04515540fa25654814b35f1be1 *e49653557ffaf499a984a630b6d3a07a9015d7166766596b0db33116ae3561b0d89b28036bc7ae *35ca3829d243f3dc977fafb1721fbc1dc503d0400349af0a4a1a25aa27ab349d87d91370d198d7 *065b75f731cc95a71ec2e96c20e967d8d26886e759587c8c3686cff976fe64df5d768c3fc8e6a6 *f922bc8e7215ea389892298d21aa5a657baaa1dd26f57d7701d667ed7069869409aa116b8230ae *ad5075456a07e888c00e273ef7dd1fd25d0473c701734f8044323b1b76bb49e3a5c2ad34517a1c *00b90e6f8c530984a6258174b7daa94365a9c06ce71bdb9c878b0ff926ccd78a293561b7d61e3d *30debec8c6c2dd2e8a6abdd08c9913077888e0ee5dbab533c2c45055bba9a8d206f8ddd9e4c5ab *d9f4ed9bd767e5d1037d647736acdc9968335dc6a6e3b7b1246e14171f51877ff50e3c2bb59ef5 *34cbc2bb873956062785e12198790349af9997340ddffa87c7bdd3b76f4f7f37cdbf6ec2cd36ca *fffe12fa7bb33006cb314e87c0748da49f694b73c0f44fa73f4e27ff9a73c610936c089cd748fa *39b7342d754f9fdb186a0c5d55e36419dd1e659d52b8650c21876820e967ddd218d6fb5822b067 *e00f81a51a493f4b96a6a14d63b2dd89d19b308b923247511dd1ed7516e5400d11234d7a6502ee *d17fcc2b562d931a49bf4c2c4d4326d6a63118fa2793890742e0620832a991f4cbc4d23464a20f *f77f97c9fdb94d57c43449749894173edb61d31cec86457919dce6d545c6067dd851d43b625f22 *c228c842efa57d760b16258806d2d2acd2ecaa3717a73e43820ee1fade40d2abce9246b1a5bcb7 *b66feda8f7df4c2e4c71d9cb35a74888cf4f2795ec1941921cbf0795347bb22f9fa874414c418d *429ad704ab0f7c62096d49ef53139c2ee993ff879e824f0123b8474f0423cf3b9ee295341d7a3a *68eee9ab4f0580d9636c08bcd748dabc0ba85256a1ede0bdbeba77df5b95108e098248893cc107 *20880692b620020f4164abd02a411c1cc28bee3378b2375a4aeba42d2ebff10c70d938c0078191 *7144c10a4d600ceac0a862a9b4b15055203aa6a6a6a2a21e3251d184442ca4bb8b8bb5252e276f *36a656d8b9dda1520480c12f43a5b68576a8c4281065a4dc2670454f2d321b897b97171e12b25c *bd71836a6dc1250a82925047623016d5098949f33a3f2b9f8e8b9d7d5a53a1db260febf0263a78 *615689c36db8b0cf6e797865fbf3e82a4c8a78615a697230edf0bd2e8f97516f7e403846140fe1 *adae81a4d7f79534e5f9bf0a3f4493be24218976a6726a09bca3e79f7988f2cfb1a8d6079188ca *e3b1a8a469ebe38189435b472687f06bff755469cafbd0478c5e83539a17e837bea34ab3341d4a *eb1133963ee283b8273790b4f9f30196acc0f6d9e443b2222c38201ac225b881a497614bd2c7f0 *f1cc485d7defcf8e70c0109743b8ca349074080492121954689bd951dbd3b47bf67c8ef5436daa *23b9533bd53ccc9a3c00c6f79e135ea8f78a2a13091b39546c139537f6734972aebe9098c0aec7 *2ddd324da2ce944657548ed14e6e082528f059f5cc307dde464b2892fa871826afd1ab994fe266 *83d0e268241c3af721dc471088f7729f0f49ba53998e646eba52a5faee63daf976b136b5626dde *46a01ae686483fa9a8b6b6678cb102c21875cfb7f35cef594fd923d5b363bb656c8756269b8211 *9b832eebd91ddf5fae35557a1d65855a506077657aae4c4bef08653a7f1f2d0a05cc63ee796a3a *633b189aa291b4e9569247fab390fef6537d8a55f31466418c78a06d916e4c6b19af547b65a724 *0b3b6b1e4d3a1830bf3b682b1fa2b690c775ef838196ba57bf546867dfb0082f33ebf3b3d7b3c9 *afa767bf4c7bd263de4c8ff73c8cfd4590f42092f79c7d4b32a969ccd16fe2950c613f2897d1df *b80eb762be80c8403bb6fa071ebc15ad656e6473747265616d0a656e646f626a0a32332030206f *626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203234203020520a2f526573 *6f7572636573203232203020520a2f4d65646961426f78205b302030203539352e323736203834 *312e38395d0a2f506172656e74203130203020520a3e3e20656e646f626a0a32322030206f626a *203c3c0a2f466f6e74203c3c202f46333720313820302052202f463330203620302052202f4633 *32203920302052202f46333820313520302052203e3e0a2f50726f63536574205b202f50444620 *2f54657874205d0a3e3e20656e646f626a0a32372030206f626a203c3c0a2f4c656e6774682031 *3936352020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a7374726561 *6d0a78dacd5a6d6fdb3610fe9e5f21641fe6ac112bbe48a23a744357647d41b0748df702a41d20 *db4aa2d6b652496e9a16fdefbbe38b44dba19301032a142949e922de3de41d9f3b860611fca301 *6582c88805a9884896c960bad88b820b78f56c8f1a112e3849298e6e79198a449298f22074bef0 *cb78efe1af9c0594922c8e83f1793f4d9410cab2603c3b1b09220e42cae268743279574cdb8310 *fbf3b22dea7cde1cbc1dbfdc3b1a7713512e4996c6412225a10955ba9004b581ff7b7da220e484 *c914df7fd83b7b1b0533d0f925fcbc839feb3d9462248ee183a06e9c0575119cef9deefdde7d41 *bfed3eb265301594c42c094247136d701a808a49a2ec8d639249de698bf6fe7810c62c1ebd89e2 *e8e9eba327e3233dfeb2cc1785ee7ecce7abe2eb0f2041bde6a7296100e400ccef35f19b6f6436 *cc3f3d3e19877f3e39fec3405099f5c77e33afda1021d98942921026c41d28c8ff030579070abd *267e148ccc060a7fbd183f0f118ad3fed997ce7cb30d3a7cc0554616a34935bbd9090f4ccc643c *04787a4dfcf018190d8fcf242108872f0ec0a45e13bf4946c65971ede59c42887bf4e8b17e96eb *e6555e17cbd3695d5e591fb859e0724faab959ff7a4dfeb86cae74ef7d71735dd5332f689c139e *a44300add7c40f9a917140530111ce8504fa77a2567cba42d4eaa269ca6ae9c58431222239044c *7a4dfc98181907131b2c198deeb19536430780741740706a0b910d01a05e133f4046c601a80ba1 *7ab809d18755d516b34d4f02979b204ee0723e5ca2880c03964e113f2a5ac401058f0c4ff89997 *8ddd2ce7ebbb0801e983529bb7c5a258b68a9ac1bc5190c1bc1ce70d299c70a04848339857bbb0 *257582d29ed4c1281a4df3a57e3c29740b3351392ae0fb7abc6acae585eeb69785994ef6d3d134 *215c48c0052732646a4b290ebdd80a9d57f5821c8469c6464fd46c172b6d8b9ea5da315bc83825 *2c06e30c9ddd35272c853b2542ce4765832d43c071a801c71e028e2fae944ad55551b737fa0dee *df4677f3033a5ace745f05c4060c11991c8d0fc09a4abf9814ba5d5420ade1d40fde30c661c2ab *1be8884378c6a43513b6ac52d7356c5d1324e44613ecaa85c30ece86edfb0266c323087f69067a *797c278636966c00cee368e2f51e2b837820299bd67a6baa68725e55bab73fc9eb7df37032afea *0bdda7bb8859cc5292303e041c7a4db671482342a35e5bc4e1f14f265bd14d87c223078c43afd9 *101e92640874ddd164dbec8c9344d04e5b34db595863a9a1e45fbdb6463149a36fc8bdf5fbd0fc *fab7875c6482a462375fb6327778dc657959eefb80179293540e81ec3a9a78379995418bddf081 *d6e7759ddfaced36a61bbe2bb6889411c9e4002a038e267efb8d8cb23f5f567024d5a15b07d8da *06cdf4b2ad574be4249f9d50bb1392841299644380a4d7c41b6eadcc7dc2adf2046fbc1531e83b *841259af887f236891db83ed9959e843e306a6e5ba79eb074071bf21f00d47133f0446063130ae *70e278c2a3b5ad60dce0f3ed871234893e9b36087a2289e49921e8728da033b646404bc5f61835 *6c0f5e2ab6076d3e9d42ea88b9138e0c4947c9db497a16013c8921c34ec96f4b39d8f7592788ac *f9103f9b8eae2fcbe9a59eaccddf6bb5408ba5e6ae2c6684a56c8dbd564e213947ceac3abae9d2 *422f4be532eb6ae0dfd66f1c4dbc67a695b167a6b2cf144c5476b75c8ba7df430ce92b8a36bee4 *cb13556942398251667be740f243255d4bed9e6844cda6b9a8f3c5a2a8375204c8f62add5b418e *d0988401778aea605a423025c12c2552e93756bb54c25141a689050a352a3e5dcdf37259d8c59c *541f77ace0207c9ec7bbf30bdef9ba5921d2c577675dfee39a8c15b219d769e796370a41a22833 *3ee6549eb79d9191a44b61f56a663abdc476a5dd1f7a9832b34c8c26e5d23eb11a5c941f0bf37b *4e2d460dd53237ee1730bf55fe4ca3048873bae6cf8b5c97062abb7b72e3dcd7e57cdeed8fced3 *4bcc94dbcabafd764802dcd258dc2724416c49d2b5445e7db375266dba3dda96bba24ac4482486 *c04b1d4dfc7bd3c8d8a8725db69721ae62e3f0535352d2cdb48f2aed65e9bdb7631925911c42dd *d5d1641b8624261c3ccaca58181eac55cc5ccb77f14f262375db39009b7b4d6ee19f8248ca3a6d *5dfe892b4a8cd50f9c4793ed4753e345eeb56f08e42ec29c549224b5b7beb1b9f57d5d5cace6b9 *39378efabaf4bdae8119e70472a82140db6be2f52a2bb37103f8fae8d9d1df7a581717c5a79d7b *8981466c0835144713bfc14666e79d1e838d122743b8a67434f19b64649c35548b76fb2d8373b3 *d0d64894ef7588f72e21a9baaa51855ce5168d7ea84f64a96be7ea01c864aa763e332f6e746bf9 *b9f4f07346f1da9599334e6fc5ed7a36b00199aed7d045c40ddb90b6d4ac60c0a1251f00a948e1 *239939ce7569279fb6ab7c3e3785e55965ebca98f36865ed192b322090e684b7077ad91af1dc29 *e01f6e90fd2b00dbca953613b0637f819a420e92d02190474713ef56b432f67472f6e1fe43608c *93bc7e58ee6fb3fdeedd5dbb511f7ccf0b7b9180e83d3d0e5ffc363e7afdeae4788dfe7f04d265 *17d2dce3744b0c74f17c35f7a30e394042f900122e47133fea46e616d4bffbb9de7f88cfcefe79 *43b968de3e40f0bd2b918cfcc25b5899bf9c826c5a70cfde3122612fa38d70d617a83aa1c0688d *08da106f4e65ff946b7baa7f0146f872a1656e6473747265616d0a656e646f626a0a3236203020 *6f626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203237203020520a2f5265 *736f7572636573203235203020520a2f4d65646961426f78205b302030203539352e3237362038 *34312e38395d0a2f506172656e74203130203020520a3e3e20656e646f626a0a32352030206f62 *6a203c3c0a2f466f6e74203c3c202f463332203920302052202f46333720313820302052202f46 *3330203620302052202f46333820313520302052203e3e0a2f50726f63536574205b202f504446 *202f54657874205d0a3e3e20656e646f626a0a33302030206f626a203c3c0a2f4c656e67746820 *313639342020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265 *616d0a78dad559dd6fdb36107ff75fa147bba8385114f5d1a1033a34d95ab4c586787d69fb20db *74a24e965c4b4ed20dfbdf77e49112158bf6ba0dab872215451e8f77bffbe09d4cbd00fe518f86 *114983d04ba2806459ea2d3793c0bb86a51f265493b0889184cab791453f8a53c229f37c8bc3f7 *f3c937972cf4282519e7de7cdd1f13c4848699375fbd9b46249ef934e4c1f455d18a5d5ece7cf9 *d27cde2ceab2997d98bf9c5cccbb83284b4996702f4e534263aa6421b19406feefe5093c9f9130 *4de4faa7c9bb0f81b702995fc2df47f8bb9b48aa90700e0c415c9e793be1ad2757939f3b0eb8da *313950984694f030f67c4b125438f140c43856fa724eb29475d24a7dbf9df93ce4d3f9637c5e3e *7b7575a1c76f5ebcd2a35fde3cbfb87cf1e6e2b97e9ffff8e24a4201ec032f03f64cb2f7192534 *0561424a188f14fbf98d0038b30cd06cb60065308012f6a7fdfe24256037d0476d3ce49fc080eb *e5bc5a1d32a0294939d3144a93432620639a745c76339a4eb584cbbaba15bb56ac50ccb6c6e9f6 *46143b1cbecc6ff3abe5aed8b648b2a8eb52cc280883efe2d3beb8f5e599601096288c7de36ef2 *b85254ed88e221284e8ddced6e2f0ec50e631205f4a8f219809e688a755e36635c3292a60661e2 *7466169128e3279c39fd379c393de1ccbd246e67d634e8347e18837f3efd0efdd46039aa65c808 *67f13968d94be2d652d3f49ead14348a3aeced8c48cc6f2a22bbe43612909c24dcc40a64831187 *0a48141acf2d1a64670712c740524f73b00e23081c8c2498fa557cbeab55308e797612922e64ab *7d598ec8c14846e929c7e629047f189d81c92d499c26373406fc81c1c7613892818dbde5c8696f *40310e358a5dce3f3c06048c33cbe892a76574f98ad9531b5d0e4cee04ab4ba3cba9e3468f33c8 *9f913e655fadc4baa8c46a4418a803b293398d431d4069780617b42589dbf49a66688781031c41 *64e805ec1f45fdf84d3fb88dbe28ecc1fce602fda2b06f6f8ac611f6a74c1f65a992f6eb47bd25 *89d3f486a6037f60750b06286423c2a2786071b80be5536ee6ba8c7d3ba3144a945d912f4ae12c *60a308b4a0e770e75b92b841d23456017bab35c4b7274f9ee220c7077abd1c0dbcfe44ea7c0639 *d667598a3e2c07358c7672984d4bd31ec879e42f47b779b90798f5b6bc45e2aed094d355dde200 *2797f57555fc26c346cee57a6fb315cb02d967d375bddbe8790817595f0683c2522be587099d6e *f2a5e25bcbb04cc2fe68b968c728aca91885e941610bef06cc86c0a109d4fb372ac86145dcb7c8 *6fa339aef155acea0df244077d2060be6cf779597e0692884ea14c6e050ef78d58efcbc7f28529 *ddc30858b4b8083beabb06c7984660f09356a8ea0486c92daa7cbdcb371b6920b5a3466e0bbdf1 *7d1030715f805afd718792f65498a2f26650b474a9ab80421ee028d7cebcc3e288642c3d8390b2 *24718694a19118f4b11452686b4cf2e9a65d0ac3559c25d9d75318d77dbdfd0c708f18098edff4 *9a44c588dfe34e03dee39ebf3d053c0b4910d3ff07f0ff458dc52089d353c86b1a09fda34ddede *40aa8b93feaa7d2da75c80838434625f4fd373033ccca05a4f8ff73386a6039caccb1aaeb34181 *f3ba9f3f55e62846e663dde5be5ab6455de952146e0e9db7e5b71235d888f6a65ed9eb0ee3c2d5 *4040d633c81f96246e54358d550abd87e4b1eef09033bfe7bbebfd4654ed1f8f60913a35873cc2 *cea13dee0571eb8d240fd43646a61c22b95e7c14cbf6cb1090d55f7a0ebd8225891b034d8320b8 *54a2f21b4d780e2af592b855d234965d87aefcb0b28772b02f05e584b8dfeee40d3a6d9a6e93c9 *3247ba8131e82864ac286667009d2589133a436341370887933d911a2fc4755149f8aaa2bac6a9 *bb425e8e72e4ac75699a121e9c43eab0247123a5692ca44cae1845ea948fb9404912c2a373e8a9 *2d49dca0681a0b149333ff5ee4fdb516bb829e90c1955c164d8ba36dde34aa1be6d0c3418f55eb *a1eac11f74624c7d60caf54836a9f2890d36ecb11b6cd9ad69aeb9a6cbf1d175ccf82a9385a2c2 *5768c4fd913e119b73d50143738e2379033542601ffc3e0cd9eb9eb35cbfb8dfe695c406d6229c *5a086871d58da45e4d9b5d54add861532b74b78e62ab8e5e9fdb973cb2b387924675eb91fad677 *28b045ce2220073ce4e70df9a24e9593d6d701c6b08186696cbd615081a64a6b581cf4c3b066b3 *674a1a9c471db42a0d38532ea91e8f08886966f0c9105b7d74425dcf5d17b7f227375de815fab9 *351f05f4be75abbe02d8bcd6830ab1ca37e2309be9df8333b8839823a43489dfd360440d7e6583 *f2344e0c1b2c531f1c657ea03e3cea4f2791105a656e6473747265616d0a656e646f626a0a3239 *2030206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203330203020520a *2f5265736f7572636573203238203020520a2f4d65646961426f78205b302030203539352e3237 *36203834312e38395d0a2f506172656e74203130203020520a3e3e20656e646f626a0a32382030 *206f626a203c3c0a2f466f6e74203c3c202f463332203920302052202f46333720313820302052 *202f463330203620302052202f46333820313520302052203e3e0a2f50726f63536574205b202f *504446202f54657874205d0a3e3e20656e646f626a0a33332030206f626a203c3c0a2f4c656e67 *746820323037312020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73 *747265616d0a78daed5a5973db46127ed7afe03e244549c6103383c1e1b55c954d9c945d29d959 *739f646d1548412262126000508af7f8efe946f700a000504eeda6c207972dcdf5a1a72ff44c37 *24272efc9313a93c11ba6a1278ae88a270b2dc9cb8933b58fae14432447b5a041247038b8e5691 *303a840e10f2a31a237c44c1ef16e70240a8b0dee09793ab6b777203b4dec0cfcff0f370822825 *8c018e8011134d8a64727bf2fee4a78602ad36447a8c484f0aa3fc8913b8be90aae6e46ff393d9 *f73a988422f2fdc9fc76228d1151a8271633bfb99a7e708dbb58e7c5dda96394994a6a144c73f7 *e225b53508d1f25917733d7f73f26ade302235ec1698891f1921833f4f1fb4eef0e37fbe59fcd0 *130adce890592cc69ae536cf177141ca7ed24c0488e13f8d35359e45f835222e8af8133fdbc71d *346800521a750caa6c39e9ab327085745b6e5195d681499d8d227baefcccfa392a115735cf78a7 *8e9c761057fc100f3b306cae0f6ad1574245fa092d06ff0f2d06fff37bf107b2d11ad348a1b577 *f8bd608c7d2fc89193dbc6acd449db97613c8a01fa2abddeb3bdb52eda0c1870271130a0910147 *4b21436437125ee0d70c7c03f0289a6e926a95df507f19afd7d44b4b6a636a6e77d9b24af3ec31 *ec619514a7329c2634ac56c9103e8b37c920d9f2d3669133a938632616c95d9a9528039a4f4ab0 *8ba9197e48abd5299c4f2e3e8ecd07a5b4805fe8afa19c0a6a5e67b82a2dc8ca877d641c94a57d *4dace21c3187bdfc961e6c965a297084bcd79b6fb749c604ab9c1e492b5efce0baaa28ab01eee3 *5a5177bb4d9255c083d2b8d10e1e5310d14889f0b04e60c7ec8e666b46940a50865339adc5c021 *e91f11e5a7ac8a7fa53eb28fab6fe2fb18d0ef9745baad4027da55d377eb242e9958965789a51f *0f71bac9410007824ea33bec2f8126ec5bf228cea8b348a88d170b12e23e8dab849fd995248b61 *a5e25cc7685a020f45bafc482b694650eb153887d6e12dd1d5cb2419601849be6f1e72a7dfe6d9 *7d52946039da07e7e2450e02dc27f87e88b1a0667c03af7b780447438793d1686231369a88ceb1 *5aadd05d0f4710c4884727887ff832648c274c147db90d3576824bb57f38e833c45aa9d5fa1f61 *1fad841fca2fa772631f2545a0d461033166e83dea9dd0cd3d56b606bb7cfd2375e6076d03c204 *be3e06a5b49c8cde3b2da67fefbc92d7ad5766bbfa44adddb5d8259ddb879a484f68af26ea7846 *685783845a848a225600a73d06e6b7dba488abbca030fdead76d919418bacb313d7a06891cc1bb *df3232ea5a0c4179ffda3a54de888c33ff8e0bba15fcf7ec90fb789e82c45c1e83dc2d27e38233 *e691e4781f5827cebe02acfc07a5870b6ce41e85d55b4ec6a5670c493f26920256bc6388071d4e *c645624cc7a0fb567cfefc82a7b3843b1c35cf3840ccb8fd8adb733ed11c1ebf78c19d972f9b8e *edbde0091ebefae9c767a37a7521ed09bd63d06bcbc9b85e19c37a0d3404c18b0b16f32fb6d3b4 *9da50b4cf778f435b7ffe4f63f76de2e7c73f99d5db26b6fff3e7a0fd651245c658e40851d4e46 *5568311dd71c8c33e31efafaf2dbefd919bf7bc55df0cf73ee38d6432fdfceadfa47551786c2f5 *832308541d4ec655c7988eea6c347ea4332ec6bd83cb5046a9254d247860a327d687f6e7551e3a *47be0ce056516c4aeac6b698808332dd40c696ae63c661ae5de39bac1c479c0b5b3a98592b3d5d *ec2a9a5cc5f74c2ee607f2bdcde3b225eaeca596c42a6f64a84e50bf3078af893c6f2f03b5f9b5 *969af36b2dbd26bf068d84ad46022d0c58c1a5ab555f639190bc58571c80e2b2ce67ebacba269b *f789fa113884b24407a84a23dc20b48433228ca582a64e605c773a5f257ddaa186ebf16731fc8e *0dd878086e926f49b18e0a3c1144fe9ee21a5b04546051814405d204d50c602606e7bacbc82b71 *a1b161e061d547076afa8f6c9d7e4c68b9150bdd21f01ff1055e5511dd72b7dde64535546cdaec *d655ba5d275c3de8146f4a9aaadd115baccc30ccf2558e475617cba6c7101d1a46c68303416c5a *743694af4a13b4092b2f9dd972e4880e548455d02f496a630b15ba027cf8a0312cc65ae3e273ad *7171f19439207678f2482af9c7507b5326149e397ce7b0186b8ee497f553e59c217b3c7d565ed2 *6912d4d55a8a5c34e0590a6c25462b2cb5ea808e649a2da9780db0fa2881b5655ed0dab25a7fa2 *a5ad0d8ed52afd57720321d373e1605c0214e76f1aba75b19bf7ee9f946dd0dd8f8534628e4080 *657293644b0e98f50959f7b8a0ec7241d985e37c97dd5037e5a52a5eac9bd562c3a1b97a3eead9 *6e288ce71d834bb59c0c545c3c114ad5708bca5c55d5f6f96cf6f0f02096f94db2ca776502bdcd *ec67d072095ac61bd7b69ac1dd8bf5391b53828c026142f3a5646b6d21435ff8d039f47a5bccf0 *d98733e7a3df9ef7bea12274465d9f9ae0a9efd33230c23f8a0ca2c3495f53be113a0a1a6ebb75 *c2fd7b00aa80d574bea7adf39ed2cef674d7799e7537a31c2d18f9c8e9b9c244662f7cceebab99 *f66d009a6de9e3963610559634c7f74a00d5df20b17393f4d6389e41042b4a4637d90a0ed665ce *bdfb38c52fef942dec5fa5b50b2c42b64fd7654c3bfb62285f34b76d64a847c4d100091f652098 *b70ed00ac0ca912566f9d59a3fd5628715e3eca98362bee6afb25dd89e661a5873f1adbfaeca61 *be15fe5588cd51cecf077314adcdef16dd71064919bf2f78f3e1d75753f484217100c35f0f0957 *7f166e1fd4dd5bbee37b21fa58d95dc2533a4727c1193cd7eaec8739ea325ec51f6de290e1694c *bd8194a39f4ef09f7b45aef0f4c85bcc10a7c5d04bdc758fc813125e5e865059fed1569e0fc712 *5c0ffb5bfd06dc329423656e6473747265616d0a656e646f626a0a33322030206f626a203c3c0a *2f54797065202f506167650a2f436f6e74656e7473203333203020520a2f5265736f7572636573 *203331203020520a2f4d65646961426f78205b302030203539352e323736203834312e38395d0a *2f506172656e74203334203020520a3e3e20656e646f626a0a33312030206f626a203c3c0a2f46 *6f6e74203c3c202f46333720313820302052202f463330203620302052202f4633322039203020 *52202f46333820313520302052203e3e0a2f50726f63536574205b202f504446202f5465787420 *5d0a3e3e20656e646f626a0a33372030206f626a203c3c0a2f4c656e6774682031373137202020 *2020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78daed5a *5b8fd436147e9f5f913e91ed10d797d849684102c122106d69d93e010f99c4b39b6a3619924c59 *8afadf7b4eec4c3217cf2251695309a125b17de27cfece3dbbcca3f08f798c8724a6dc8b424a92 *24f6b2eb19f52e61e9f98c5911110a12311c1d590c044f881431dcc0462ae964884229f87f90a3 *204078dcbde0c3eced7beae5b0d74bf8f9137e3ece508a13290111009189576b6f397b33fb6dbb *8359dd6e720084858c48aebc20a28a30de21797231fbe15c445e4c12a5bc8ba5c7a424492cbc5e *e6227febbfa392cee76781e4d22f60c0ce022623e93f7c64e760f1fdc5cbd9b38bedcb98801d23 *e9a9441216dddd99cd7a601fbf7bea551c120ea6728afa5ea6a73e084e500f8b2eea23c023f9ff *83fbe8bf8011ddc2bde28427e234f756a6e7be28b3e50efb78db933f9f174ef2252342847777ea *c9910fe153003127c9b7323df9b93e417e1074e4c34ed44b6027813b05821116e37b6322ac0b5d *5c692b180f822c214cc5801125d8fc70271692305456202df3a35b0819f55b04b76c51ad759db6 *55dd9c055c523fadcf58ec6b3368aeaaba5d56f5352e86890fb7562acf8bf2d2de030623bd5934 *6d9d66ed768911a719d29044613c85c0372071ebdfcaf4fa678153fb8535027361aef3cb043273 *9c7ccb3fbd1a64cc497c3a045a91ad12e6b729613e52c22977e427dd5186ccba4a59b5875b714a *a224da732630ff38f2c11536e96af50947b15f9d317fdd16d7c5dfba3133ed9536825995dbbbd4 *ac2c8a969c0521e7fe8be521284e2991eacb51158dd97cd3e8dc6229edebe0e12b5de3f360128a *1195802e1803659a68b7a8aa954ecbc044857653975be7c6b3c291bae346a17fdfcc9a33d9654b *058c0a1b5ecc3e7fe91aa03883831492f04904871112b7595a99de2e511f9ddde1e0a71d83e468 *aac78a257379f4d08a398981929f7f8b1a23fd3001d5cc69f51891a3dad11f562efd1c0927df8d *d5032fe3984845a876028a104499f41e8392d1e49f54f92763fc26933a741b4a45c229703a0071 *726a45f0943f0e6cbefefdd7e7bf98e1e7a64d5b7dadcbf69fef073e8bd25cfb4520c8b7dac8aa *b2d537ad939c5042abcaa6c0ce80c44d8f9539c18fbe59d7ba698aaa3c46905d457e8aaafc3286 *a08997119f40413d42e266c8ca18865c47e2e84b620a471a90b88f6465464adf3a012812f4ef3f *786023486a2eafd35a976fb2ba58b7db073a9f300fb968619c28194e819601899b162b33a265b0 *7d33be9516780069e91ffa8ae60ae0715b14196f3cd84b70024a3422cd5a67450a298203080cde *e62ed7ef28e56557c519d47869f4878d2e336d46d5d2cef62660853f5e61d8c33b5b8c59af1f6f *848f04a62483669d4a5b90a90e93312738651f10a0ee125cf95868e1ac8101751922c109448257 *64bd2bbe2cf33867d0e09d4183774537836d9dfb39fbeaae8043831b158c2edee350de4a3c95f2 *807916f5cc0386ae8a8419683f3bf270ea7abd2ab2a2edaa6c5ceac0569bd2ae9b7a141616755a *66579dd250606966e12479d1c2c1e0658671708a9d03e91b9d6d50029f54a149e258ec2a40b629 *b3b6630557729dadb02086b2771037dd31dc14ad360b66082f8666f92cf63759db40ad2f24f3cf *bb6a1916f54d0ac7d2f78ff0db190b76ddb6e71e420c0ead621eb862077ef2e5544d20768c9038 *63472fd3d76eebbaba2c877cba5855f5e5410f6856d265558d96ba651727609dd3e83646480e39 *89288124b2458b9cf4f5694744f75110cfe9cca7824677db3d0c071d901c1e143f32f3688bb6eb *423b7dee9e702f05c884845cee34f42f7a57b1d7fd48367218705ba7cff008da62c526e0332324 *4e9fe965b6bf1ed96961bede8b4e7912579444740a35e80889d3937a99b127ed7e38dad2b3b5bc *fbbdc3edd863cfc99e49421720a8d8a94a1e1fe6c684a850dc921a1989fa4fc22619b284fa79a5 *9bf25e6b062b9de6e6aeadcc153fd142ba01cbc6dcd64d15650e99c226219cc07c3392dd0a42ae *cc3053766b4342ed1224500ca5ee4e4d52b4f7ece79d05f6ba0c2a0472a447a6a63ba6c6a713db *1e9f0f3914464f4d6dd5a17199198b24617c02616c00e274472bb2d7093e7d76fe87ed04cbf45a *0f0b9fd3fa72b3df3623a9a7dc8ea990b04904a81112372356668f92578f7f7ef2f4f1d7322101 *e42402d008899b092b73b2096621877c3f85267884c47d242b3352ae3170ae8e347aaf8a666dee *de7cba5e542b27071000792ca7e0f1031237075666c4416fcbc7fbdd8186e6340d9c1268f5a640 *c380c44d839519d1b0305f428f99c2aa682c3bd572ef2b00b6fea30f247d3bbd4f92fd6b988492 *5038e05b91609031e8c7bf3749303a45fd36e63beedeab421513c9c49157fd0b4278d68c656e64 *73747265616d0a656e646f626a0a33362030206f626a203c3c0a2f54797065202f506167650a2f *436f6e74656e7473203337203020520a2f5265736f7572636573203335203020520a2f4d656469 *61426f78205b302030203539352e323736203834312e38395d0a2f506172656e74203334203020 *520a3e3e20656e646f626a0a33352030206f626a203c3c0a2f466f6e74203c3c202f4633372031 *3820302052202f463330203620302052202f46333820313520302052202f463332203920302052 *203e3e0a2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a34 *302030206f626a203c3c0a2f4c656e67746820313830392020202020200a2f46696c746572202f *466c6174654465636f64650a3e3e0a73747265616d0a78daed5a4b73db3610beeb57f04839214a *bc482219b7e34cecb69934496d657a4872a025ca622b512a49c5ce74f2dfbb200012940439e964 *621e3a1e9978acc0efdb5dee2e40612f843fec61c25012122f66211222f1a6ab51e8ddc0d4cf23 *ac4528a328c6b277603260518238a65e60adf06c32fae182869e4022a2de64dedd258c1026c29b *ccdef967d538208cfb79a1ae2ff36af35836237fbe2da675be1e63bfd0426939c6899fa9ce2c7b *1f86a4c866aabbadf2e24635eb4536fe307901374fac9b2709a2490c70e56d9f9f5fbc7da5852c *8494200ac094cc7c5dae3494db453e5de8c5d3bfb2060ef3533552a4ab4ccba572492f2024045d *455e8031129c37ab2df3aa06214afcf55c5d159b9bed2a2bea4a2e40618162a627d545eba050bd *ebf5ecd31863eca3714043e69fe9f17cb559e6d3bcde674d08459c19d66f2e5fff7c9835d11279 *a56f3f9b65331be67a6b9069ed024bce510c6bdb2c1b843013fa559dd659430d49f1d1f9a4f516 *4c132462ee45114584e3c6a150245d0afe774e157a01cc278d2ffd3d7af721f466e0782fe0f327 *7c6e47528a200e0b60f0392ebc32f3e6a3abd1efed0a6ab65d64cf6b31c38813b0938544796dec *01c4286a1c07688a84b66825cdf7210f671918671c70027e197476927d399daae635b4b153011c *342fc81014d021d95740c4118547dac818059459bd2d2dc68fb4322ce2e6e35400dc9f523a0405 *7448dc0ad0325201a73f2a9a7dc3a717badb78c063db059ae63f4e45d010d1980d41111d927d45 *400c1594b568a5226c2fd0a6d78e70fdd4c9160bc4301f02db0ec93edb58404e132d5ac9f6f37e *f40c3883602fc3a01c524a392bd6c5a7d57a0bd1948ab87592a69bf8d3b450e3d7991e50790d02 *e64c4de86426e70e2633222125910eda2fcf7e7bf6fcec405c172821bc9fcd1865269bc9d5738d *d00aea02518c7b41bd820407411dc4d36a1f0b8d9120ec785e2580a4cdbd8fd55ad75b990f85f0 *6f7348f1f5626dfa56de570332c142c6639cfbbf16eacbf3745a3f3e90e4a3088531bb4f2f094a *a841d3e9bed21cf797056fc1213e4e31a09882ba694f73b779bd50e9509a5c5eb3d5a6d619d2ca *edcc90743c309c4788c7438893161267a6343226512cd3d5f52c75a4c676f41ba413ce388af010 *a2a885c4994e8c8c3b9d7c6d16e194a188df1757e36fc13fbe877f87c499458ccc7fcd221c6adb *48444360db2171661123636711e26186288b7a69845224b0da1ce1701c60192aceaa2abf296435 *ed520683c8270bfd87777d0b893342181949f269e7eb57e7930bede2cb45a55ae5a2fa7c72eca1 *87b480b806f5c0cc3b246ee65a4631775162f064c03e7400943a246e4a5ac632666bbd274f4e7b *0ff59bb4cc8aab69996f6a2d99cd756bd1ec7de1ae7e95cf323596dd6dca0c7c1f02a24b55f0b8 *448370fb16885b514ac4d253f9c57aea6b62aff44038c1fd0ab48b18b06b677a63cffdd9bac854 *cb1c98c0e4e10313792cc0125df5348fe67e5d1781c8ee79094ddaf312ebc6759916951451e70a *3051d46b3595aa4b9595795384c1e47aaeca51cc13c444ff8c216da955aa90324ca02999348d17 *29d48f1f53adc27d722c463431b5f1e93e33b86d6488ad375999d6eb721c33df59a2d184a03819 *4289662171baa29131255a95d5f39e03e2aedc30b5899ed18eea8cc734c650073f6011a6e603fd *f587af0e6814a224e2c7eda1659cf620ba1a5217aa2e537561ea72e7ac9db5f47de53365e0fee1 *100a2a0bc981822a84dd5887d62e9ffb2e4a9c0996caebbdd5d27761da21395028334448dca26d *0e587b0ca99b21816d79328412c242e266a8659a0d798f217333c4310a07116f5b206e7e4a44d2 *bbebd1dbd9ebf47ad3a7870e9b046284f752fde460f61628e6e4bee42dda33249999e54b05a14f *a7c2a4cbd86abc4dbbf2b4a65263f2554633a7bef1312df3f47a99a94175f8d14ceb15db44da8c *6677814af22c423160b773fc469dcaa8822720096d933c34eb45535440abbba1ec414501d8d6aa *238b8a84f92b39d2be3682f1f784d06c2e07e4eba3690e65040c31fd25bb6a827e0758f6a42e9a *fc2fbdab01aba2cf4523200f77eed2d566993d71b92c813d1e1ec456c542e2cc4946c69993e420 *36a9a64d2eb21b7611f9d123a73618007dc85dced7140adfc528b2e23ebe85d022474d72d2ab18 *68af4648fbbd9ed176b3e8c9a9b550e49ff4d63be92d74b0973a0d4f7073c6fcbfe18de16105ca *c971cb6b99a3a60f4c6dbe6b5e161f29e41bf30696d1768fa6ccfe521e4d290418eb93a92b88ca *4bbde74a4bf5327bf705b0cb0f3007dd846400559885c4690023b3736675793e797bf94a9f5a7d *4c97dbecf34fc78a6ccce4b69a0e817487c44d5acbec909efc72f9fa0ff000687e1969f020920c *e1859f85c44d5acb1c3da3c3049e47120d815287c44d49cb58766cccf695a74f6072ffc0599cfe *5d8f0811a30eb05a24e864f67e1e4404d41b516c969150c5eeadccef8cf66ff52fc546fdf9656e *6473747265616d0a656e646f626a0a33392030206f626a203c3c0a2f54797065202f506167650a *2f436f6e74656e7473203430203020520a2f5265736f7572636573203338203020520a2f4d6564 *6961426f78205b302030203539352e323736203834312e38395d0a2f506172656e742033342030 *20520a3e3e20656e646f626a0a33382030206f626a203c3c0a2f466f6e74203c3c202f46333020 *3620302052202f46333820313520302052202f46333720313820302052202f4633322039203020 *52203e3e0a2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a *34332030206f626a203c3c0a2f4c656e67746820323033382020202020200a2f46696c74657220 *2f466c6174654465636f64650a3e3e0a73747265616d0a78daed5add6fdb36107fcf5f61f4c9ee *224e244552ecd00ddbea7e6148bbc45d516c7d506c3955e74899ac740b8afdef3b7e49b4253ae9 *3ef53014a968f17cbcfb1def7877269ec4f00f4f3049501a9389486224653a595e1ec5930b987a *72842d094d2812587d1a988c129e2286e924f2387cb338fafc318d2712494e278b75b74acc1126 *72b258fd385dbccb67112164ba2dca8b8d1ee36956cf703abdb8becccbc6ce365993ab8fdbd9db *c573609b7a6c138c52c64110c5b0ce9bebbab454dee23445b16096282b57037c24503836cdbbba *fa75800b41b1148e8b16d3ca7f9197790d42ae8c0ae737e675e3f45b57f5657fcd88508c709c4c *228c91644cf33d9d2f5e9d9e0caa4053798b0a54624bb1787afae2759f0b91284d534b83fa3c18 *8a71729805a090606269de655bd090d1695399e7b9d29825d3ebad0603de14e5b658e5669c0d48 *1d8301b9437e71fa6640e81825cce1aea01c109c0884b9a3b9138685955c4b0aa493886282a4a0 *3be6307ac553636dbdbbf4e7cc3c3e649bebdc0cd79aa4badc995f5fcff0b45c364565bfb7cc36 *1b2dfed17cd17a1006c124ec4fce018b046b27435cb919fcdf395a0c2222926afffae5e8c7b7f1 *6405cef81cfedec3dfaf478a8a20c68021f82193933a9fac8fce8ebe6f3998d99649cf93953731 *c227912789f164310111c14cca628c2199d2565a05d34f318badf3458cb02986177816512ed8f4 *e197e6ddce7c100216c30e25ff1d04663eb25f1f8125286c5f420f5bc2d2384b98f8a581beb7ae *aaf3acbe67eca1de3873f48966119edeb35e4320b2229ae8652215a652108a26f04cf4329800b5 *dad0672e74ab4d5fb7611b3ee5bf5dd5f976abb67ec0d82c0518e231a0ec491244d9d128f5bf30 *c029b01fcdbf9b2fe6a03287171f7540f85da31d525ac09a6c0c3ab782845536247b1afff0e2d9 *23ebdb77d197c788c93104354f92b0c696664fe5c59b97f3178f3fc1c889449c923128dd491256 *dad2ec29fdece46cf1f5c9b75a717647bde1c9051d83de9d2461bd2dcd9ede27f3d7b32821717c *278d21f31090338d40e34e92b0c696c6681c520973246e0d51e2ef5049dca252274958254be319 *d166656af8e0c14333c8cce36556e7e5d9b22eae1af3c29d52eaf0ab064a87f6f0231851917475 *0ba5b8ad5bd478b76e516f146b9d36ea4370a878816407272ef75de59bbcc907b256e625c8c743 *39bb94d44e7fa88ad540024d515b180418b8a4bfb9b9caabf55f130232fe262b97837c38f5eaac *c13226a284435eb95b1595f9403d06161194efd7633475f518a4deba24536f5449a69eba24a329 *d675c49049c041e2d85548f66cff643438222d1afab41c3609be1b077bf8fc29299c5dbd583e64 *1326c427db4485c91e2f2c90a4b42d30752208ee726313c4cdc60c9aece77ca7507a69eda77c13 *eca6ddd325919d0f052ba78461a8cdc770ee7892044396a371f9baf5fcf60052bbbdfd70df25e7 *ea05310f6a1e893a98dc9f9fddf3a9cfb265f75873524cc9b16574ec710a829b4098a2c9ff3559 *6b63221116878f2547e36c5cac3b933eec8636deeacfe79baabee84c797fdbd470be1cb40c4e11 *c17c0427b527491f1291a01493565a0749b6c9eba683e2335b8c6a18cc58f568bcc3db00f2c0d2 *59d0d4c1ed803b88552c1061620c58759284b1b23403580d015456cd0052f76ec3844a7546a423 *c0c493a48f0967884ad14aab30715d0cdfad7abe6443a275b7b3ce9d7488fc18442585f5c690d1 *7782f4314961087396449fdc6a8b281c3ed1833eeb1053bea4110ad606900223489fc6004e27c9 *801749c4b06ca555f0fc6ef3fdcdd61e8b61fb434294903114ef9e24e11d60696edd02076244d8 *dc8ca0848f21aff224099bdbd218730f34325902d5afd86d6452dbc8fcb62a57856ad46736473d *dbf9d969081d020189dddaedf837c2a7274930237134fb5d1edbdd59fafa9b06716ebbf51f95d3 *1cec82100843fcd62ec8bf8244274918094bb387c4eba7f3933d2c3a240e6a0f61868fa261e249 *12d6ded2ec69ffeae4bbf9d9d99fd31f421097620451c29324acbfa539d80323104a044dc7a052 *274958254be39974cf8477ea83a9e3fff02f3604a412620c3598274918164be3c162821ac510df *6f8544dd3bd09098969e3e4bcb6eca7b0d6037f96fcdb1e317428fc6281d435ed10912c6ce9058 *e85279873db38390f7eb9f0f51101a2c51cac790577a9284c1b134dec63279e57fb5b16278c6a3 *d8599d2461f42ccd3fb1b7eed6bcefb77d53245277a9e5d9408f1492c8987b57502045c41816be *bc2a36f9d67cd27745b0e931f75690ea9e926bb216ebc32bbccf3e645b0b8659a7846c7d964eaf *978d6aaa4a31fdba345380c5a65816cdd0d528f06077dbe5e5e98b27433762309292ecb4d0abeb *b2bd0f83114ff0ee7d187da589273690aad1799d953390f19df9a81ac88ec20c8c6b38524757c0 *77b66658e6f92ab7df5205bdfdf68d1929e58bad4282d36965a72fabf6fe9526ceac3055a9b157 *5bde93baf52a008f4a3a7d6d841769c0560c76cde1cd2008d9dd0dc04bdf2812c2dd7d526fec2a *5a3a98d9ed669bb9cec5212dd5ed70207c0e1bc07a43ffaa135125bffbede0abbe78e0656d3bff *78a8990fce0ae21b804c3bee419f8b84ede8f66375a5aeb7a9fe80bed464348691b94315bbfb6f *60d17c15ecd163d86ca0e208829427493048399aa1fead2eae51b18d96555de7cbe6506e8c498c *28e163d0ba9324d87674344eebabbaba283bc597595ddf4455d935a9f72f7e15c196a3bdff2963 *94d080a49624ea687ad74809c4512eb863a32bf8787f2d7721b5bfd61f2d00937c656e64737472 *65616d0a656e646f626a0a34322030206f626a203c3c0a2f54797065202f506167650a2f436f6e *74656e7473203433203020520a2f5265736f7572636573203431203020520a2f4d65646961426f *78205b302030203539352e323736203834312e38395d0a2f506172656e74203334203020520a3e *3e20656e646f626a0a34312030206f626a203c3c0a2f466f6e74203c3c202f4633302036203020 *52202f46333820313520302052202f46333720313820302052202f463332203920302052203e3e *0a2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a34362030 *206f626a203c3c0a2f4c656e67746820313734372020202020200a2f46696c746572202f466c61 *74654465636f64650a3e3e0a73747265616d0a78daed5a5d73d346147df7af1079b2016ff7532b *c1a40c6d032d9381b671e903f020db4aac8e6205d90e4d29ffbd77b5bbd21a6b6d92a1d37de864 *9c95a5e3d5397757f7cb2611863f1211ca518269243946699a44b3cb018e2ee0d2f3013110c619 *9244bdebb9386634458225700013c5698341b142c1ff0e87018068d2dce0fde0cd3b1ccd61ae17 *f0fa035e1f060a459110c008888834aaf3e87c7036f8a59d415f6d27d92142384182c6d158e218 *11da30f96e32f8e619935182d2388e26e71191c092805c8399ccdf0cdf6281b332afd7a3b1a062 *78342dabfa421f172b3d2e2b737156d5753e5bdf3b820f11f51abd9bbc189c4c5a1a84c1bda488 *e254202203b04647a4c7181811dc7255b638fed6083fd7a3b24d630f54acbed7dad5a9567d03fa *e83542c211859d1380153a26bb6648198a3969d92a3bccb2babe79b5b45a1f7b154ab8b9a02128 *ec98f8151a8c5258e7eb4dbd34abedd71753445376409ffc1afae4017d1d935d7d6ae5a86cd92a *7d9fb4b4bc5ce58776a92088311e82c68e897f0d0d46696cbc96daa35feeb3fc2b0d0180c11880 *153a26fe953618bdd23e49109af87fe984f5f5b1f978003e8224888ba4dfb242a0346191c5d8c8 *f8c0ecaa2e1eecc6866c3e1f57cbbc8b0866a007a3249688a74198a663e28f9306b31528f5f0a0 *c724af1a8be0ce2a4fb68cf3c8b191b20fdc134729dc93a97b8eb9400c33d8431851ac37fa6491 *1b60d201498a489c801a85f8fdc79397bb73d118714c0c245bce7b2761421ac46f2f4f4fcece76 *a78135632236a0f3aabe044743058658b9d407d35c8f9b553ed7479981ac1655bd9e8dc870b336 *67e0f3fa60dd2b2a864d282da19f9eed92211c712e1c32c8b7c704cc859338803de630f13e7e16 *631fbf0f8b7cb99b8a8d676d2ee67db6849090e28690823a4c7675c7b0cf53d9b2b5ba9b040c9c *ca5e853c6ef67e000a3b267e850663156e2560871ca56002dc401a4074769878ab2b8bf9fa1585 *8072958690a474447a323570943cb15c6f534e0802b74e4908fa3a267e8106f3e5e584c0149257 *16c213db31e94932e110526c8bd99b64f214f271c9ff4f32ad65798221eb167ba39cc5585fb859 *96f96a75b738c763c8f24508f1dd61e28d021673e7c6d3684c8687a205e4ef90a88610fa1d26de *686131be6871efeee18273d93427033044c7c4eb4f2de68ea5bdda195ecfcb598c840cc23f744c *bc9ed7625acf0b30aa727ec61bdc38e688c0993163f051ed47080703a88ae2f5881032ccea229b *96a62299e7b332abb375512d7d0662e092521c82811c265e076a314af8e3ee51f9e1e4d9eba7bf *eaf7d7596d9e8eebacdce49f9eecf3180cdc522a4210df12f16bd790cfa49f9e4cba371f5bf17f *7727db738d3db63dc8b49adfecb50ff8a8340da193ed30f15bc860b4897c9238549a2c84d6b5c3 *c42fc9609c556fd6930829868f1e1deb53991e4e8bd5953e5add5c4eabd26b022611962174b71d *267e1318cc960960279b76d26736f839abf3e5d9ac2eae4cacc8ffbcaa21c92a5498d8e3062954 *a9248466b8c3c46f1283714ca29e649008cffb8e49ca62656c519df71a291eaed6d93abfcc97eb *554f4b8e114412625a72faa6af4729b5a14675b648939ce11119e6c57a91d7fa5459cdb2521f36 *6d2f8287176535cd4aed80d479dd448383a689466cc81a9164d834d3e0ca66552c2ff4c5dea619 *1550aec4d4f4c44c28d8ede24938e24ee3eca19a32197e5814b3858283be1423a69680105843ed *6955ea41251bae8acb42f16adeac2b3d166b73357fbf29604f82fdf47b35bf812879920f4fc134 *f074a2910a73be8e26a441383ea4234122b11d42cb6e562daf216f6a2ce6f07b4b29bbb6a41132 *373f366a21d7c029db520b18f80c24148c602b023654611a9d2fb2eb4cef1a6fd791c614c9202a *798789f739b2185b95ccf3f3365adecfee773134abebec66bbc7af07b61d4f6d1e6f6689874fcd *793dbc31533c34739891e9e19dd7a882a0e460c8fa178dead6da215415946394c8fd3ed262ecda *baa5d5f1d697187b6b4a4ae1d12321a4880e136f4d693156f4555d5d387d74777f3bf5d5d1222b *cbea68af19088c41741b1c263b66a05822097ed2627aba0d8dec438d04354f1a4423c161e25f74 *83b9e5a24fcb62fd575eee5d76159370108d04878977d92de6d0b2ef559c40580ca261e030f17e *356b31be1e92f170c7c7aea7dbdf3b225220124279d411f1fe28c44094fabe2d7ebce5debc1521 *515d95388422d761e2d76c305bddb2767bfb450ab83fa60124660e13efef5c2ce676bf68229c22 *ca43a86b1d26fe85349843bbd7fa69ffd242814693106a5787895fb6c1dc76ff525d9c05f09076 *4cfcfbd760fabf4233bf3d86729333cfcd0c64dc61f4bddc9fb7a404c532b6d334bde09db0c663 *a81709ebb9d73fbddd8edf656e6473747265616d0a656e646f626a0a34352030206f626a203c3c *0a2f54797065202f506167650a2f436f6e74656e7473203436203020520a2f5265736f75726365 *73203434203020520a2f4d65646961426f78205b302030203539352e323736203834312e38395d *0a2f506172656e74203334203020520a3e3e20656e646f626a0a34342030206f626a203c3c0a2f *466f6e74203c3c202f46333720313820302052202f463330203620302052202f46333820313520 *302052202f463332203920302052203e3e0a2f50726f63536574205b202f504446202f54657874 *205d0a3e3e20656e646f626a0a34392030206f626a203c3c0a2f4c656e67746820323130352020 *202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78dacd *5a5b73dbb8157ef7afe0fa257213a1b8834cc6eda4bb4e938cdba613cdf4219b074aa2226e29d2 *21297bdd6cfe7b0f0890044d414a3ad994e39189cb21f89d0f179e0b4980e18f04847214621a28 *8e511485c16a7786830fd0f5d7336245186748115d3bd039e7324482b060ee8cf097c5d91f5f30 *1c4428922c586cfaa76089088d82c5faddecf9c59cc970b62bca0b12ce1253cbd2eae6de14ef62 *5ba80b735d27ab2c1e0817ab3833c5dbb84ce365663bd26a78e7beb21df536b978bf780de0c21e *1c15004a705047c3babe5a5811073f2548449195d814e5ee098c17a9d9dd365d6dbb67c26dc19c *2a8594003e08419110cd1d55ba4b35f43915b801a5af695d99c235e86c4a7a64a48739bb5a740c *1316a24889402a813866cd2420a9a701fef713818339433454baffe3d9bbf73858c364bd86df2f *f0bb3bd35214090103c23c892828936073f6f6ec9fdd08a6b71b6434d384030b54067307899969 *150044299b9916024521ebd06af57fc602a79b8bb9a0a2295f9a626a2e049a885769c911e7e284 *d2e1b7503a3ca1748f64acb482e54d6887b6553a4bea5e6bfd5b6645f9c1349d6fe32c2bceb5f2 *4709100cf1504e81801ec9988090234a5587b62520ce92d252d0a87e525b0e70a89a82b63d12ff *745b992f9aee6596d6ff49b2d313ce00810ca740418fc43fe156e6d4841fd598828a389a82c63d *9203938e11c13d5aadf1e59fec49e61c6ef654bbbc744fb7a6f8c94b008e909cc419d70119ab1f *31243969b16aed6ff51bad9b69abf6e0707be6d358442192119980ca0e12afcead8c56ba59e0dd *ded693eb5732044b80d12928d923f1eee456462bf9d9cc629269bbe9e8d2154a22a5a660943848 *fc1369654eaddef6acf64fad14f006e05350bb47e257dbca7cedfa15f09a13620a4af648fcebd7 *ca98f53bb2e061a3234e050c1a21258d85f2b2b84b6e93f242f199b6e719992d93bb0b32eb9d0c *22c065886b53aa56c50df4a6f907534f737335f63b237c16e76bd3f43abe8ddfaecaf4a6b61dee *881ff7699d98f635bc39a0639398febc46b002319fbd00a7487b1378e04624bfc6bb9b2c01ac5c *803b54e48f60784ed4ccdc9ddd9b5a919beb2a2baabde9aa748b9cade29b7a5f360a6801eb3fe9 *62eb3f55a69ae6e606ed2f350d8d33a60bf7c5fed1fa00b67a9be6ffb60ece36b937a5bb629fad *919d0c1a108e186f264daf1d86c2d06c45222ee644cbbfaa9332ae53ad80aeae8abcaacbfdaaae *7c4b9483b721a209acd01e88d723b2225ae167bdb9f0d33ffaf2a7ee4cfaad6fecda3ea5795a7f *feb3ad547572a32b440b91cf7fe8cd0c7d5392afe77552d57debb258df1f33c238e7484ee265e5 *20f173696546642e5efdedeaed01f2f2fd2e29d3d55c7bd843525a0abdc4c0429527df70df8598 *1e899f182b3322e6fad5dbc5015eb2b4aa0f907294104a913af9eefb2e84f448fc845899112157 *cf7f7c79809062f94bb2fa9a7d0367a0125330de1d247e36accc0336fef5f2d5f595b5f9ecc9f1 *85da638c543485e88483c4afbd9531da7b54626184423685108483c4ab522be34c68bb94f1ece9 *536bd0c6e6620c155daaee77cb22f352a04214aa2984201c247e0aac8c43817bda9b968754bc89 *cb246f2db466ddebf7c0af376552558dfda1dba0b2cfeac65c6abcfc7c30043c6499945e0ea542 *11994250c341e2e7d0ca381c766f06b0c508c6df96c1f65a966057fa1814129d3c5abe876dd703 *f1f367441cfacc7b44a70694f85db8b30ff091c725c2984c81bd1e899f3e2be3f0a78d5df038d4 *ffb0777d94308130a753a0a447e2a7c4ca38946893ff1b534239c2e1144c3907899f122be350d2 *5b2b547e435a0843e08f4e81961e899f162be3d062fc9a832b451febf600d93824695e5ca2aa3a *ae935d921bd7fb412885114442624329c6f6581c4aac423f89a8cd9a82a33b1a8970c4d530ab4a *056bb3aa54d02693ab9b9c0c2ab51954da6650599741a5ee28e656902ee3bcd2edc9da76e4f505 *9915a6121b212760335243872aa4a48370c7c604681ea80325d5eadb3188e0099198fdbdd0411f *8ab98d28512c4c784517dec480c8c6807c3088c4b06cd8313a198a22eef069065f173aaca39f9c *17f6c1dbf8d63e39363de6d9f5becc4df36d9ced932726a34d228e041807c3704fa3834e63db2c *f63259c53acf3ec22d25c07672e707b2eb1871dae26ec78bcda5a3d1b6e66b5330aa342d70e5d1 *2c816d6d625d5517404aedb59f5d6f761dc4c0719e82cdeb20f1eef956a64dbbad8b61e2d126a1 *70df4a1edbf7eaa96c1c65b0ab2761b83a480e64e3a2664db6325d0ab6d7188eb5cd28c29f0ee3 *648765da90d049aa680807e01498ea807873d556a4e549ff8ad2f749464306ca92fc43bd3d4a00 *5128c45348e339480ea44142c478d8a16d39483edad5622fe72ff6bbb48eab3a5d9d7fd1f46389 *423e8590a98364acbd148845aa43db1f19ab7df37aba2b9b7444bb12ec39717e6d574465eb96aa *8e94136153128926beffff27c741e24deab7326e527fe3ee8f2e3e980e3285f8c960055d3adbe7 *5dfade1b63d239ab884ec1ee769078336bad8c26e787039f38b8a7854d5ffc36a4e572b8c1f4da *6937999f2305d6cc24be8a70908c38a258c1b1ca3ab48d0533580cb666b71539ba60bee05b1122 *19b8ca53088b3848bc99e75646d3323c70f43af29c318f9da3c6bf3c0405ff584d81871e897f0b *5999af484e7b3d2ad1790026d9351a8d73c4887ce0568185ac53dbd6b3825a9634de130f1b4b9b *bb9fd0ea5adaa4626d65d358d6c5ced4b019600fc3dd34ae18548c15aedd97753b5ae34098b12a *2b64fc0958135ccae107b2dba2ac57fbbafb0c76acbad0ce8d3ae6fd98e18cc0d8ceb75f2047e0 *6b30cf86b722f35e66f421338d0818deb21da6c95ed387cf6a3f891e3febbff414fe3c656e6473 *747265616d0a656e646f626a0a34382030206f626a203c3c0a2f54797065202f506167650a2f43 *6f6e74656e7473203439203020520a2f5265736f7572636573203437203020520a2f4d65646961 *426f78205b302030203539352e323736203834312e38395d0a2f506172656e7420333420302052 *0a3e3e20656e646f626a0a34372030206f626a203c3c0a2f466f6e74203c3c202f463330203620 *302052202f46333820313520302052202f46333720313820302052202f46333220392030205220 *3e3e0a2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a3532 *2030206f626a203c3c0a2f4c656e67746820323032352020202020200a2f46696c746572202f46 *6c6174654465636f64650a3e3e0a73747265616d0a78dacd5a6b8fdcc412fdbebfc2ec176608d3 *d7fd72db845c29c006122d01b483d0d51209ef8c2763e4b107bb274b84f8ef543f6cb767dcb3cb *254256b4f1abd63e75ba5ca7aabc3808e11f0e3061280e4920588892240e56bb8b30780b97bebe *c0d684328a045647231717942488d31876e04651a26d50a4ace0ffde2e04034462fd80df2e6edf *84c11aeef50a7e7e859ffb0b654510e7800880f024a8b360737173f143770773b5bbc90910cc30 *e2240a16228c10261ac917cb8bffbca02288511245c1721360ce5112d3a0b559ae6f673f873c5c *5732df65cd7cc109d72772b37b5754f55b5464e55bb985d378fe66f9eae26ad93d1553b8b5e041 *947084c5049cef819cfa1e71446189ad49effaeab0cb4a89eeeb5c663d034fcceee5b5d9e6969c *cbde22adb34d47d37c8167f55b6baba8727fbcb4c50c1108ad09f0d62339254e8408873d5ac5dc *b3ff1a573755dd13f22eb507367a9e994df87470f6a367c7b1a5b893dba763bf9b3f79a209d407 *7f787914e0222753e0b14772ca634251c4708756f1388c3e45a227e09e38a4dd2ac2f2378a98a7 *5e4a228248421fa0447c084ac40394f4484e2951214544875651f2a77209ccc2200133aacc163c *418cf06041304a70accd96dbcc1ac6bd21063b88d4505b7cf5ddf5cb9be5e9dd80219e106b0401 *bc9b2f88609a7022e82c3587cdb6aae5ea20cd918e73751556a94e65ae82569dafde65b5d94b4b *fbeb759dbe9f638c6768bea03199bdae545a5197e436b5b7935bf334669e0f10c147010a248038 *f091730d6e55cf713ccb52a9523361f14c66bb7d55a7f57b73082f5c9ede15e66a323b3406175c *49cd6673285732af4a737d951645b63e658d9008688b2d23af6e165f5fbdbef9dfb7a7cc7150c2 *24b1769f9a47dc6ff3d5d6dc3fb7289b7cb7303e913844241c3a95172a4d101ece6465b6b96ccc *ce75deeccddeaa3a94c0f47e8e815039b2d05820dc41f1e1a51c34b90d07e47b55380802676c02 *d9c341e295eed6a6d7af226f649f840b27519cd31e0eaf1e8ff914bcee917845bbb5f967aa5d3c *469439a4e708704d80981e8957945b1b57943b1d96bbfdf3bac60345d581e1950d0e89388aa650 *c93948bcb2d1dad8443e528900032fc96835e25cf97cc01652ea6a4a5e3f4d1c2311c653a0a947 *e2a7c9da289a4e09d1671e5566716892049b428fe320f19659ad8df2ba8b87e2d875b5e2b79a82 *37fed5861e4f4cc2ed0e88df6b63f2ffd496c5d98292e318c5144fa0a07490f843dedafce38212 *6a45d1d59357cfbffc66a4ca1048f078504fe224d424abedaa2aa148945078e94355f4a86d7afa *3050f69825fd8de68b280cfb7ca60e90ca4e0476f2b23dd16ad91014c650d345ec145569b6afd2 *77e9cdaacef712d9522d8a7500b9a5da4b690b345b9f1d1ae5c5b07453e570660e6c310c95a0dc *da5359092158ab1ad51cef75455bed81903cb377ad3666ab2b68757cf76bb692de720dbc42219d *82443948bce55a6bd3172e59aaeae5a3418bf1f95c59c2a0f80ec51424c741e22d4b5a9b47d66b *f9201f9d9db5e8498b66eb6f0e5b182308e329a47107899f406bf3e8618b7ab18f22e9bc9a338a *119e4299db03f1aa9a351957b57ca06297e7244e91a3e267256f1f989f30a23ad7298ce61c245e *b96b6d3ec0fc84c4ed68e4a76f5e5e5f8dc81d41ec787c1261a3111199c93a2d1b755a4b055cd0 *52a1b65a13c0a2971e73a11d811c430951d80d25eeb779919d628162278e63672011a941ccda3c *a7a8aa7d631e7128655e589d131845c389446a352dab777999da79893ed15801ccdea5c541cd22 *642b5aad006ed2a2c9bc5a45a17d65e114b4ca41e2d5aad6a64dda86f42ee36cf26287f2665156 *72b1c9cbbcd966eb7309977286189b826239483c1306d1a16d9d57233a94a5ce64a5cceecdc127 *fb6abfaaeaf231aaa3be1eb1780aaae320f1aa4e6be3aace7814bcaee48b3e06c28e86f39a4321 *79703a05323a205ecdb126ba69b6b1308882effb20f0aa088584cbc51454c441e25591d6c65511 *126086288b063242c13e36728c23d59040225cb625ff2f5f3ebfb9fad8ec371232a6526b1f4104 *de3efe606ffd6f74950e126f826c6d94e34ffb5742396c8e5669932d9456d8176655a4d0337d72 *2e4110c83b119902011d10bfffc6c4b8eff3075248144d614ee020f17b646d9c15356ba64b083e *fbecb3676ec9dd2dec5db57e7f7655217988700a99ce41e267c1dab82c1c457247446ab31f7464 *655bc5a913d9ef7bfd0d3c6b1a5540f97881142326f1adc541e2e7c5da38bc584a2886ecf6a138 *015fc424bec43848fc9c581b8713f532002591380d93fedb54b51990a479e988ea74a219695e54 *ef17e393e6051216365f0c4f7a0716a258b42d8acecea79d83fae4990cbb188ebb49d7b08be1b6 *8b81edc8d80e8709a2d8deaab9cfe56a3bfad19976e3b85e16cd436dbfe1cee4c06b3a7b5d41cf *2133dbb88010ab8ec5ed5cf417e5b12e2e26c983ee77708cd3d10c0a7bb523c0493c2bcd2e84b0 *f9086d4258dbe5760b4ba92f953d6892b46b13cdd6d9263d14d21ca87c62ee78f434d84977a35f *a5130c05b985b81c8b0b3578a574f871d9527904ed5373f6ee30c216143fac0b96afae5e3cfff1 *7ae4690caa20da115636324bd7deb60f3335f49bc21bed20f1bed1ad4ddbf998a51afd2ba7c15f *3879bda76af63785c99283c4dbf7b536adf7d871bdc86a9ba02eab32bb7ca8d7c344cdecc4044a *1f0789df716bd33a4ec61d97f795df71fbd793498818f5ac853559f4360651387cd32358026ba2 *db0a7afc2c16c588633af2acbf000fb7376e656e6473747265616d0a656e646f626a0a35312030 *206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203532203020520a2f52 *65736f7572636573203530203020520a2f4d65646961426f78205b302030203539352e32373620 *3834312e38395d0a2f506172656e74203533203020520a3e3e20656e646f626a0a35302030206f *626a203c3c0a2f466f6e74203c3c202f46333720313820302052202f463330203620302052202f *46333820313520302052202f463332203920302052203e3e0a2f50726f63536574205b202f5044 *46202f54657874205d0a3e3e20656e646f626a0a35362030206f626a203c3c0a2f4c656e677468 *20313831312020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a737472 *65616d0a78dacd5a6b6fdb3614fdee5f21e4cb1cb4e6c4b798a21bba625d1b047bb4068aa22d30 *c5561a758ee5c94adca0e87fdfe54ba222330eb001130a5794744c9e7b7979790f1d9ca4f00f27 *983094a524912c454a65c9e26a92269fe0d52f13ec20945124b1bedbf3724689429c66d0808e84 *321824340afeef70290010c9cc007f4fde7f4c9325f4750a9fcff0d94d348a20ce811110e12aa9 *8be462f266f247db837ddb7632208219469c886426538130314c7e9a4fbe7f41659221254432bf *48b0e08882991e335fbe9f7e4879ba2c2ef2eb55733ce3849b07f9aaa8dded51efe562955f6f8b *23c060ff39fe383f9dfc3c6fa9600ae3499e08c5119623f0484764e81009d38689e7aafdf1f407 *6be97657368bcbce25e7abaafef4befc684c364fbf462dcf182210322330bd6332b45d658832d5 *b2d5c62ff26d618dc327c733cc259f9a50d00e38aad676e29f44ed9640899331d8dd3189dbed30 *7dbbc9d0ee66571db05b1044143d60b7fc2fec9607ecee98c4ed76186db75bdb439b638b3eee03 *8e11a56c0c3ee8980c7d904113de798cf6c1376d12c048821938c8e06682210c4f745a27993038 *2cc14b84a7d3f925c48a6efcf9f6d5fce577b6bd6df2a6b82ad64dcc411c520cec2523581c0193 *a18338472aa32d5b6df8932e096a83bbbbeafc73b168ba84785e2d6fefdb1138641a9ab131b8a0 *63127781c35817c44c8224c2081f83491d93b8490e13ccaa9d43db3e39796a1bb9bdfc9ed7c5fa *cda22e370e507cd9d4c5760beb605a566bf7ec265f5de74db9fe64ef9bcaf5b1ee0d10f31f2423 *062447e0bf8e49dc7f0e13f84fc7bccb9e77ddb72ab7ce6fd5c55e878a2e6b6c5d124a13058352 *9383284638038a0423853333a84e3d16987540ac10e51cccd108b342077d11813838c0422eaafa *0a929650d3726baf8bea184faf36e5aa58da077a12f535b797d3fc2637b401d6ec21c09849cbb6 *7ba89b2e0f30e8cc7e0c03480ac1e206ce974bc7a93159161a9adbf94cf7a85d21a05e83721b83 *4fb80d641f5e7738494484774a17837d521084940b07cab73693ebc0d5d772dd14f555b12cf3fa *d6e5f845b5d1a498723dba6fec2e0bf79de24bb1b8b66b41df367ea7305182319ea2e842482512 *128f60ff0c98c41782c3780161e6bcdd17f467511730c72eaf5c542e291c41ebc83d2cdda3f2e8 *9092604a80041bc3d6193089882bd9b2f5be09b494be7de4cdb657bd04f5755deddc8336ec749a *d5a167d4880ebde589fbae433e4485b18c23c9c7b0e7064cf6e8b014e1b4631b0ab17e6c7db5cd *36a24e82c07a1c7502c83ca9c6b04b074c064e2090e8b3ac63ab9d50f6ad2cddd47f7b800a6582 *a28c8e616b0d98ec51251409865bb62613b732e4f0220916885e2f8345f228582bd12a8e718232 *3986b38a80c91ef102db2c912ddba878e1ca54793df1920dc4cbfcf531e7d3770fd52f14d29a8e *ceff7f830a984437288fb9a35fe6afdf85659b593ffaf9c9f367f3e781b2b9c9eba1acf9f6a32d *daec375ebcfaf5d9d9d9bbbb90fb723185eca68818830b3b2671173accbdfa8742ae52428ec1a4 *8e49dc248719d4effbd4cfc1f21d928e4e39bd127eaf8f0443693a86b3e18049dc470e13f80856 *03180a413ff0d159b9dd3857dc5e9d57ab7fa7628452ae16d7eb7428215253f3872286a6d46c0e *34652062d6a0146e60ebd02a463fd12a4623727b6955cc5e09a310f67d37b0a9dc3f7a9b2d41bf *502cb566c05337ea420b083dde7961afd7db80909331299439aa276316b9396e268a1a997d8cb3 *29486d90d95a6428025ac23cab766b0b3abfb5d766af33194c26f6ca66fef2f56f6ff7a81fd846 *d2d09fe878c6a8725b040c69d7861e44af003f9869046cf5e92058bf756fcaadb511cb0c49829d *8d368d94eb9bea2fe30c6654137c6d6d6f72772dbe2c8a4d630e1728b502553f36c3154bed6d41 *ac5ad48f0d1ddd00a6d0d7adbdd1647b6f3fa42959e7abd56dbfd37cb5cb6f2ddbb437152dcdbe *b85b15f94d27ed60bc9eba332de32727fc8693221492021f087146586f4a224985407686901a41 *52099844938ac7784dd4f8b2cddc5cd6beae7362306ab4d445ce18eaf880c91e2108b4544bd6db *7ce2d68c37bba8ebaabed75a2889693686023e6012956e1e7340f6fa634163bd6d5ee69b4db1be *5bb80340efaed64587542e819298913114f00193686038481b1817a5cd4e31e3a06f26b23118d7 *3189c781c3ec8983a3339f41cd41f1a53b1e6a93814e780ffa6999d014f15154540193b8471c26 *3cd4686d8eca770205111f45aa6b8944c5bb8398daa997cca3ba81a419e26a0cc79d0193a8e2f6 *18abb8ed6fa2b1647effac622591a0640476074ca2f3ea31fd439907a7f0471e674e32ad7fa211 *813381841cc38fe801936844784c10113e8b1f0800c991c46358d701937800384c3f001e9ac6e3 *730d1a53f23154360193f85c3b4c7bded633c9fd059982ca9d460673905987b1638585bfc2104f *c277638eecd8ddb1605b451cd33d63fd03af177763656e6473747265616d0a656e646f626a0a35 *352030206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e747320353620302052 *0a2f5265736f7572636573203534203020520a2f4d65646961426f78205b302030203539352e32 *3736203834312e38395d0a2f506172656e74203533203020520a3e3e20656e646f626a0a353420 *30206f626a203c3c0a2f466f6e74203c3c202f46333720313820302052202f4633322039203020 *52202f463330203620302052202f46333820313520302052203e3e0a2f50726f63536574205b20 *2f504446202f54657874205d0a3e3e20656e646f626a0a35392030206f626a203c3c0a2f4c656e *67746820323039362020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a *73747265616d0a78daed5a6d6fdc3612feee5fb170bf682f112b8aa25edc26457a4d72359ca63d *fb7028da0295b5b22d472b6d25ad5da3e87fbf190e2571574b3b010ea83e1481236a341ace3c9a *3792cb171efce30bee072cf6fc4514782c49e245b63ef216d7f0e8ed11d72c22102ce27877e0a1 *1b8431935c2c5c43c2d717479fbf11fe82074c04e1e2e26a9cc6932c8a83c5c5ea2787274b97fb *d2732e6ef2a58b837f5dbc3ba3d1dbbcca9bb4ab9be52f17a747af2f86f9b8885912c9451807cc *8b485f16a252f0ffa896b77005f3e3089fff76f4d32fde6205aa9fc2df2dfcdd1f2197cfa40481 *a0b54c164dbeb83a3a3ffa6190404f072113bb79c099f4c3856b684276470b503124b3a564492c *066dd1ec2f96aef4a5f3b3273db217ef6eba75e9e6bf6f9abc6d8bba82871c2d0769de22016902 *a5b982331ec3dc3e677e2094348d5d3060279d6b8ddd923b0d51ea2be2f93e6d963c76f2ea3c6b *8a4d470f8b961edee5cd038dda625d94a97e17e42862679d08e6a9357351b9a836c2cf39e02a95 *8e59b95de5aba52bbc1838f09a38afca32bf56dad4e7797397b3a51bc4a1f36d476c6996e59bae *255e353552db749d13a9a8365bcd7a55376bcd98eebfb03f4b73403bb247f8de005cb38c0287e1 *870197acefc1be1c5f05e2736014b153d5953bbe96d5550b3c5db38c9d6dd6115123dd73ac3745 *a920803b4414afa7e95daa3f84a955a8b4ba7cc0a97c6d8a10e3b783a9facf87742d7bd05946e4 *13f832bdd16ecbaea8ae89843e4654f433a2a107e0352589865e7baf1cfab82886d9a25426018b *c2e889288dff1f511a3f1ea58626d628ed79d02c0c4f0cca3158f1ef24a5fb939b26bfa2e1f155 *5d5fa6cdb10a59a25c96750370734711fb583e884f2c202dc673c067d4648a4f289980ccdef320 *3e2f5e6a63bfd49020222f7ee622d080a8e14b05c5979fa72f8fad10443e8b83e4af83809ebbfa *f5bfbe9ec890b33879dc5189e593fc14c93ac1e56eea9645f5015d74f050c3759f765b09460a3e *07b0464dec6eab799e70db63223ca34b0fd5ab33004ac3ca0d8e1082fb8087ef156c68896412ee *14ecff2e13dfd1fd4e965634a0fc9a6d9bb6b8cbcb87fe6959d2a8bbc11a44e3d373fdb4cffbea *aed082d2fd466a37dfdb13b597b020e0734844a32676ffd73c7d00acea6cbbceab8edd374597db *6c0c929805b13f031b0d4d0e782da8950cca7e5a2dfacc9a66833882b9c51c8c1f359918ef739f *05d1a02c1a7f52575959641f46e36f5bb7a8207fe523a96bd2aaddd44d67a63423ad61b63bdea1 *db608a4226c3600e308d9a58325b34686b66b6dd5840700ee4bacf144e38a2271ae33e11dac081 *69434fce019c5193a90f41bae77e32688be0e8a47e7c0bad6dab5adb93c165fae4fe85dd6e19b0 *10d6b133b07bd4c46eb7e631eda6528551a02a95b1bc3417e9b81a67c28fc09e807192e07b7a91 *fe2ecd9abaacaf1f6c288143325f8633680a0c4dac25a4e7d95b917ff3facde9f9bb57fffcf77b *a2556ac589a3325d5faeb06f6a3b22acd30ca3a8a9ddcb7af5f058521171c8fc640e5dbea1891d *19cdb3878c02e5ecf5c548f9e3a3c1f9f31f632e7e12ac087c502473006bd4c40e96e6d903ebfc *c7775fbf3f731fc56c8d0105f0204e9f085108213b0b771a14b103442c7bf89c9ebb6f5f7f0728 *11e98fb66b8aeafacfaf1eb55a0a16f87368510d4dec766b1e32dc665200ed4e38878ed4d0c46e *92e631be257973e07b9e7372f28268bad9382bda0d8dda87f5655d5a3110a0823787c6d4d0c48e *81e6313098e4be7d2488418f91cb86840fabc5600ebda7a1891d09cd6320d167b4152c603944f9 *233e414c38caefd21253e036a54d4aa4e10e295ebf4f9b71af1a0959bdb22eef042c0a652ce7d0 *7f8c9ad8e1d33c067c84c9c1601a9dabbe32a141e00c78da2eed726cfe5b1b4850d859e8cfa149 *3334b182d4f3182051a558ba821ff02ffdf0a30e4e2667217870a036647070a9cf19f2dfbbbcd2 *871789b36d696e18ae97dc017757470b2d1e0bf88173bb6db59cb2f8a00590cb7f94ec43bbeb34 *9f0c9d33988f44c1cd7a98992dddd08f9cff68c5f0bc466dfe0353bbc9b302630ba967c3bb785c *a2118a47847cdc514904cc8eb31a5df0044b99b0280a35e37392a9e7941350d120d70f13067f3b *76956975bd4daf1512b287466a68e4000d9b6aca7dc13c3ffe084d439fc5bcd7345dad5a92ad0f *87a078e5f73418e0d40cf50e63e8a8a3b44d99dfe52559c463c962c87de6818d290420c9abbb82 *ee2b0c48042af69dfb9b22bb210675e802d7b4bc4f1ffa7196e13edd65a93fe16adb0c0e30f557 *20d226607ac8733ab5dd079eef396feaa6df0c4cd760c7f37e57319fc29b24ccf3220d1a7f3645 *15968b4130a05aad0e7ca184093988709f10516fe8ccadd51b98fdb999dad5446d11be1c3ec08a *683a06716886812ddf815f43aa98414d3534b1e73bcd33ec6be657b7adaaaa94df00cca185c638 *7eac5de6903b859cc3a685a1897527abe741cb7f45f3b4a5cf55ba22e39fdabbe371a464fd7d92 *d4031f852c78627dd6f3585deed927b81c7ccc209a85e5a3267697d33c83cb3d7bdce50e1dedc8 *9d96e215a4a52472d6f590c3e00e53745964d098ad886026722ceaea7718f8da5840f056e76aba *51bfd1802bfd0803097d664c3b758c8f34f52b0fcd3449cabbc5e19bf767df9e5f4cad12d0050c *259370c03283e85475a7aa52e4dcd4f753f95100355eea37c7e5fdb47d102c4a62b37d00850186 *1b2dfc609903cba685ca63c2d7726c930928d3e15eaf427537823aa23a2fa9ca3bf529896021d8 *6002d51f0352c1511d030e76b5c41f7f10fd2e6d8a54956fc50eabe316dde7641231fae7506084 *0ed0a92f6b1677e4215736ecf313ce4268c6348baab7727faefe075ad3b9fe07ee2095b5656e64 *73747265616d0a656e646f626a0a35382030206f626a203c3c0a2f54797065202f506167650a2f *436f6e74656e7473203539203020520a2f5265736f7572636573203537203020520a2f4d656469 *61426f78205b302030203539352e323736203834312e38395d0a2f506172656e74203533203020 *520a3e3e20656e646f626a0a35372030206f626a203c3c0a2f466f6e74203c3c202f4633322039 *20302052202f46333720313820302052202f463330203620302052202f46333820313520302052 *203e3e0a2f50726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a36 *322030206f626a203c3c0a2f4c656e67746820323036332020202020200a2f46696c746572202f *466c6174654465636f64650a3e3e0a73747265616d0a78dacd5a6d8fdb3612febebf42e801172f *6af1c437bdb4b8c3a5e9a6dd6093cdc5060e875e816a6d39abc4925c49ce66ff7d67484aa257a6 *bd050e0721504c0d47e4330f87337c59ea05f08f7a94091207cc8b44409224f656c545e07d84aa *9f2ea851e1829388e2db914a9fb384481e43011a0a13a54342d482ff07bd0014088b5507bf5ffc *f26be0ada1ad37f07c82e7e102b5189112100110997875e66d2e1617ffea5bd0b57d2323205450 *2259e8f9511012ca14921f96177f7bcd232f2649187acb8d47a52449ccbd4e67b9fe65f6df4006 *eb6cf3a929d2555d5dfa92c9d9badae64dabcb589ffb695da78f5af0d73ad375e1ecae5a3f423d *bdfc75f9e6e26ad9a3a11cba8ca4172692d06802a40c40c69c849270187aa3d251b2cd2cfbf1f9 *92d6836093d71d3f861ba4e12415b1200cdc68025c0c48c664249c8482f6683b36ace1c7d7265b *55e5facfd91f0134c9a660ff80c46dbfd1b1ec3f18ff4f8dff312b9bc7428bbe81fa6fce321032 *c2127e8681e87fc14074868101899b01a3d33190afbfbacdcf7be34f122029e15c4c818001c998 *80082239653d5a24e0b7a311616e7bc5fc79b300f20c87df09503020195380b39f453dda3e4d54 *4f08e89d22182abefdd6100295cff20ac8a0621a49624032a284059c0432ecd17694e0f38fbf0f *165b31725bb5fe9774bbcf0607e9bde5c5362b2f7d3afbd8de3f8b231a1321e32970342071870e *a3e34ca5f383589ad6d9e608459dff204d67f90922229229acbe2c246e1f323ac8cffc9fdd1aea *e983b6c2f78197c0f71cbff7a3189292f07c46494235bf6f61d17649e359d55cfa8207b3555a62 *81ceee322d48d7eb6cad45eb4b3a7b2cd3225fa5dbeda396b595566bef332d2852d0326d6a4956 *7ec9f57b596465abf5efccf77bd06ef2f2a3690d5a01d84838058c52878ef7a9fa3c2b17ab3adf *b5c6b078300c56a58249f84a59f4f2d587db9babe5d87ec9084d42a3b6a9ea023b4d940f95559b *e9b7f63e458822983ddce7db6cdc198551907d6f3f5ebd7eb3505d8efb0b05a1921ac5bcd1eda7 *baf19bbcd9690102998fbbf15924218146074c9cb08d826b98ae52585a8dda630109a035adb1f8 *cfdb1f6e6f7c777309237122baf634fd97b05911a3c15042b4a141a72330f7383fae946e9b4a8d *ae4f81994050635aa83a69f6bb5d55b7c0120bc1251e8bbb6a8b65362b7a179da340e0c0aceeb5 *9e725754427745415eb65a79bd5fa1df62dd5e3b18562b3745d98050b9ab028972e51623f20efd *f12c7b7142c2b0630f28e142cc5eea9f327bd085de2afd7a30490012ce1394a3dbe0af56ced216 *8d42010eb22ee8098ac5d634d64d23df00b1c1aff6b5b11c7aa0496003c1d7634050ae377458d2 *f342155755b1cbb78a5d7c55ec620163922e559ba16aec935148246c7a9fe9947ea76fdb830346 *704e89d9eb0a423f4be42cfb9a16bb6d06eec283d08c3988cfc6112a1312c71d9e7f5f2f7ff617 *37b7cbc591a9cd604fcfada98dede7d8298638e46dad659def41117cdad7c3c2182361c00eecd0 *ee2eadf168882b5d8918d24c34859d8085c47958d0e9b80e0b1ef2f6dec7d54e73b8f831afd5dd *27f4aad9aa7d727c20cf1e1f8808821e9dc286c142e23840887ab4fd864107415f51d5af81e658 *53a4bb55b7cef9cb0b942043dbb4b85ba787249ea407dc3d9053d84c584846f4709824903e7ab4 *3d3d73b4cf2c878f2e98d1733aaf7931efd8b0d7844e66440cd9329c02330392f17a10b2b4802c *dde9a8348a13e7a4693c22509ec052d742e2dc44773ae3a5ae89c9cca38270a13ef2254e207594 *8abce2370c871aa3ea5225012840121896252878a5725856bb08e35142221e4e80300b8933d876 *3a68fcf7432878b3f05fddbe7d7f7d73a565d9d75d7dca4b781893289ac2a6da42e236dae88c8d *5edefa8be587eb773f2db4582f58b2b58f0468d10eb73eb0706cf3aa3c49898cc025e309c4040b *899b12a3e3a0e4e5f2eaedd5bbe55172908d27049d2747842496c914c81990b8c9313a9a1c9749 *1c94a7605087c36d8ed2b046fa88977ff79d39644a0f55f41bae8c7d6aedd7ba1891350d8cbc93 *22264822a670266f2171d364742ca23ad7868d028554302669bb2f4a5d2ef7c59d9a1aee4441b9 *ea67026c0c48dc6c189dd373004f9c989882490312b74946e7441a78ead9a7621a2eaf82504ec0 *780b89d3f84ee7a8f137d7efaefe94e931253498c29ac742e236dde89c746506bb2b2aa6b0a2b1 *90b84d323ad6685ae1f86844d7278a581aeedeab4d17df55e43a8cefab6a9d39d982cd168da7b0 *4bb090b8d9323aa71d0076498c4d21a35b48dc26199dd1747edec907837d138ba6606b0fc46daa *561907aeeb7743dc3a6b300b093ffbe711ff178b07246e938dced8e6d7fd16edacc554122ea7b0 *dcb090b82d363a638b17af3e5cbf5f3ed3e60036fbc914d6231612b7cd46e76458c24b4fc1a7b0 *cab090384dea74ac61d467fdc732d2b13cf42407a9ad779bb6ead8bc3972e4cf21b5c7f4e0ca52 *1de5f060b8c3c15b8afea209e4abee4407decc15118aefcc6779f9a5faacae4ca076a3cfda0b5d *8547d1eabc1eab744245b1be6b71683fe3c21276ec78c0d064db0db9f4432a8d0d20ddd57991d6 *8ff8c2662fc192f7d7babcd9972bb335c18f9b23b72730a592fe9ac93ae1195f0e26248aba8bcf *b96effe11e3a53f768f8d6a69fb34677959a3b8a4892e8f0ea488f278fa91a4f1e074f0d85a605 *edaea6a05a57b6fbba6cf4776a2862754b97d5250048b7a64173548b65fdd54eff34e0177a4462 *73bf842afdeed5e63e3cc6fdf80ec5fcc5661280233b668451f1071d3d212c4a594249089c1a15 *ec99864ffb12614c24e547fafa03c3716037656e6473747265616d0a656e646f626a0a36312030 *206f626a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203632203020520a2f52 *65736f7572636573203630203020520a2f4d65646961426f78205b302030203539352e32373620 *3834312e38395d0a2f506172656e74203533203020520a3e3e20656e646f626a0a36302030206f *626a203c3c0a2f466f6e74203c3c202f46333720313820302052202f463330203620302052202f *46333820313520302052202f463332203920302052203e3e0a2f50726f63536574205b202f5044 *46202f54657874205d0a3e3e20656e646f626a0a36352030206f626a203c3c0a2f4c656e677468 *20313833362020202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a737472 *65616d0a78dacd185d73db36f2ddbf42d37b3869c644098000c94eaf33be3449ed719d5ca47b6a *fb009190cd542255917292e9f4bfdf2e169044934a7c730f97c9385c008bfdc27e8a4f62f8c727 *5c242c8bc5244d6296e7d9a4d85cc4937b387a7dc13d8a4c244b39ae460e232972a664060010d2 *b9c3611ab1e0ff235e0c084c648ec11f17bffc164f4aa075037fefe1efc3056209a614480482a8 *7cb2b393d5c5fce25f070a747a20321084279c29a127511a6bc68593e49f8b8b6f5fc97492b15c *ebc96235e14ab13c939380b3287f99fe1aabf87d1b15cd665baded2c52424dff8e9baba6599a1d *6d70fa08d8e7f837fb6d7173f1727160cf25f048d544e78af1f42bb0c25190a111b46212dedaa3 *a00dfef103e9f7b7ef6fe6df7df7eadf772f16d76feea21757b7b774f0a7ca92ab2bf5e38f7ffd *80aa03c178920341890423701e950353c159ce334771f150b5b388e7f1b4aa3bbbabcd9a56cdf2 *bd2d3a820b5313b09cf1a925b0db99ba5d35bb8d2dfd46435f439fb6db55f53dc1fbf600760ffe *fec6760f4dd97a21b3a390224f599a819550ba9b79b47813cd17efaeef5ecf4714f2c811078594 *72574c5d0e89f29cf1387f42f46af1f2e797778bf3e4b94c599225fedae52c1260e10f0f55f140 *a0b3d87637e3d9d476b4e5f443e0ada1fd7a5eecaaad3fadc07e3581f6a3bfd846c81854501a1e *47f67469ab06d153eeb40240004fda683bd3d98dad3b5a160dc8f2d12f3ce12d3c60f568d79f66 *9cf3299b45324de0bded27c2eaccef96689ac0a42cab0e58a20fe07a6b7606dec9ee9c84714fb4 *aa2eabc274ee614526bce2008060bb2eda36ad23457be16be8b3ae6a8f8ce1bb5d5bd3fa75dd74 *36d033dd13cac012f43547b2455386a3b627a276220231d4434eb776b74267e6ee0dd33c58534e *71cf05002e82cb22ec9e76650a6fa10fd57a4d07ebea77b4a8db5d5ada2b1e4c7d6f4bcc37ceca *d9c1cad2bf45b7dfd5ded6814cdb8d58b559917790282d8a2b39b89c2532de754c70c083c4427b *46c1a9c0502de118fad4f603e179e3c31631d3d31bf368e6608883a36a6759542516a00a06fd27 *bf0fae3294dad941c5d3f70dd02e09ee9a7b887090dbafe80b0903a86d6861e883c961ed299042 *ec5cd65619e6e9ff7fd23ec871b67011c649d9ea9ac83f2a25eacf56334891d3b315cd2de3cf15 *37a573a613fe3518ea28c9d9f216704eeb1b1ae21baaeb08f2cb13237c1354ff7271bb6afb35e9 *a1d975c5bec3b002cf1ea4689ee5530aa0e6b12a6dfba464adf67581c967ac6871e9a26158b586 *82a69269213dea78b5ca58aa7bb46eafef5e0e29a99ca507c44b2a235243c7c4935e7c8692a555 *3f1de9c427573870492064007d925ab44f14a7c8de6b4b5a1d4b99af57b0b78530376d1b504ceb *bffe982c1f8de492fb3d16b5f31920162ccbbf0ad73e4a723e0b789cb13cf03f36b0490e3693e2 *2b30c4892467633ce09cc6f8d9f87e5e6cbf8252e23b4d68090a8287218ded6b536209f3517fec *404d41b13e12cf1c7212465188c191de909f04fce59042c26476bc1f5ddf9d096198d9f2ecd964 *5e5ddf8e10c1c14faaff22a3cc5fbcbb7ebb18b1b3c479abdf839ac7a68228964a93e910a8ad75 *5ba92becb8f3c7de756e3dacc163e0663f59408fa1453ebdc2eecadf6dfd6d9c2d5a62027d29ed *8d761fd566bbae8aaa1b6a0ded7bae42a67dfbeecdebbba1ca126c978507409ec029c736cdb7d1 *cd1e7b45dc22bd00c029a82943573db4354494d4e273bea358a6c2731c33326a9b732c56c82564 *09dcc204dc1301123008413998a6873c7561dc6bcb8290e0f989ce4edbc8248c2a0834d4a72562 *98ca1391f44a06e298fa1caef25d3bde2a02dad273b19ba52dc7327ee97c09e4c3d146ead41900 *963f2d7ebea58d7b5bdb9deffbf104861db0ce2c9beeb16bed68d30f99089299e022f895bda767 *9cdbdda33d10867bb7b420dad1c8f8d04182818169e48545cc78f28c705229e3597004af047615 *32712d8994f9f45721245d0728a1a31a9aef9154c005947bad9e9153beccd63b97731da8ec4c40 *45397d1317d619778f87dfbdabe408b947826fed662f844c07c496fb0ea79584276712904a58c2 *b32f6632c5b40c73fa1664c4290699d09366fca4f5c0d5d314430ac5318b55da53288c8a9a4691 *4c87b1527b3f43089d0aa9990d4355721ce35a8f75522ddcda1c26325cac5b4f15baa86a6d966b *7f50d56d15188fc9fa249375ad5dafb04ea930a3aa83f75b5a1d86085cf8211920176e082c3d1e *bd18420719001efe2a8177fdb027c5f4ae097c1ce9c133f6e5fdbc0f2669f0410aec7ca42060d4 *b774e8a675047cf482939a8d1df12409609e3e2b0c9254f6333b50359e5fe593c96dd56e2f31ab *e66e3a250f026fcd13d153d67e3450689ca1788c9ee1275614d241f78d6dfd948b05224cbe01b1 *394ec3e4c3e1870c75da8a846c23261c4a7fa2bdd1258468463f010a01ed4b1cc7d3ebbab41f07 *eda1ff9d388f5922cf346e1e253ae250df169ffe08c799868ec1a3205f9e3ee505358529e81686 *bcfe037e449bb5656e6473747265616d0a656e646f626a0a36342030206f626a203c3c0a2f5479 *7065202f506167650a2f436f6e74656e7473203635203020520a2f5265736f7572636573203633 *203020520a2f4d65646961426f78205b302030203539352e323736203834312e38395d0a2f5061 *72656e74203533203020520a3e3e20656e646f626a0a36332030206f626a203c3c0a2f466f6e74 *203c3c202f46333720313820302052202f463330203620302052202f4633382031352030205220 *2f463332203920302052203e3e0a2f50726f63536574205b202f504446202f54657874205d0a3e *3e20656e646f626a0a36382030206f626a203c3c0a2f4c656e6774682039393720202020202020 *0a2f46696c746572202f466c6174654465636f64650a3e3e0a73747265616d0a78da9597db72a3 *461086effd145c8aaa40184e824b16212f0e020748525b492e108cb54a38a810da5dbd7d86a307 *d41a39e52a97ecf9a6bba7bbe7ef11e224f2833824aba221c9dc5a9544d334b8b47892b803597a *7e4203a2a88ab846ed5fc0a230ae0ac49029e920333a11d6481725536ea14ff1d3cf5b45e6902a *2aaacec56f5328ba618aaac2c5d99f2bb7ccf00ffeeff8e5c989277313671aa2a221b6470aea3d *4a9c299aba3273a81ba2aaf71e2d7ff3132fc89ab45ab77e89350121d1d4b46e3529abf25a5497 *738fbc5dcab43956e5b0c3007658a1b3e54d7935202a8884168f105a7de97e83a4debbafebe47a *1fd228a85bce8f0dae93fc63705327df707d9e702443fcf97c3c94052e9b81329950cf54271245 *53d5fc5a1d035f2fb7cb643b32baedfb63991dcbc318061a3f40f1efab6c08ffadaa0b461ddec1 *739334983a810184605b9133ba55006bb6d59e25b63fc3b1f5d5b23dc1f563277c0dbc01d30053 *695e9d2f358f8c151e03621d38ad8ad331c7742e91367ed0c10d249b6d9326f9e2fce7711b8f56 *127be784429c1d3a7d3a9ce531a98c6e9ced4bb4b3ec3098a2064c11ea371faca23eaeffdef5bf *154eed019af19c291a30e64dc0eaf24de058efb58509cf8d62ba0832146e10bb3b276219caae65 *521cd3a13429b92a37d5a7b2e8fcea31d409d75d1f918bd6215f9332cba98b04b513fe91e21325 *6177a053dfa0e45e4fa40c84b76d136279d3dd81fa71ebfa96e7b59238933bd0f1425ff5c50531 *195b7a224df21c8c4507e00cff254972798414bd3be4badbf439de79700febd37abf7cc0652b7c *547635c09e4bcf87be59e969279bbaa86b06195692a8c8b3f97a33f54656a0e09ba9a79089dbce *607aeab97edfcc966f3bc16d3c8b1c7753853e96cc82864a54e5b9a9796375499b9b6d540bbd44 *2c317b89043bd8bdba9ef380dade45f4117976fce8cb8ea54604727dcff51f398becd07d9d89c1 *1d306e6f51207cc0e4400e55e9d575e7f831af692bf2dfd0f589683f471fb542f8e707e998b1b7 *86a986fd175fbf579d206403a60085f4acdda78dc598c844a2e9942120ace1fd3288e3b5d857d3 *24824e3cc3bf25f9052fe3a3e1aa3ab11ab148d25e4d591dd20db4c541206e32965787d903ee8e *d55f1ce123afc2c1386ebe56d952238174f6e07d65a46a5ce2738347b47b72cc2e3cd443bef3c7 *23e128f1f74788ef7a8c0afb019d6a68069617a6e29797623f7b3c29a08d0e029ed050a357fb7f *f0a46950397b60c8653f4867c9941eecc9708eff0f3f0ff95144fd686f9fe8cdac333596b8432f *7a20db13d611e03302aa6110d28bd0573f5322df100df637bf77e66604ca2612f5b53e9a697d22 *63e94b25f351430ae0eb3f85d39fe2656e6473747265616d0a656e646f626a0a36372030206f62 *6a203c3c0a2f54797065202f506167650a2f436f6e74656e7473203638203020520a2f5265736f *7572636573203636203020520a2f4d65646961426f78205b302030203539352e32373620383431 *2e38395d0a2f506172656e74203533203020520a3e3e20656e646f626a0a36362030206f626a20 *3c3c0a2f466f6e74203c3c202f463332203920302052202f463330203620302052203e3e0a2f50 *726f63536574205b202f504446202f54657874205d0a3e3e20656e646f626a0a37312030206f62 *6a203c3c0a2f4c656e67746820353735202020202020200a2f46696c746572202f466c61746544 *65636f64650a3e3e0a73747265616d0a78da95554d8f9b3010bde7577004a9b8d880c1c7ddc6f9 *a8d8b002b26954f5c0123745251001c936ffbe043071372e55c5218479efcd8ce7c350319a072a *1059c03590e2580620c45592c3c450f68d693e813dc4b44ce0c0eb3f8951b7b00b6c682abaa0f0 *184d3ece4c432180605389bedfbc181840449468f7557d8e4b0dba2acbc3a44c8fb5a623db5093 *e2704c33566a8ea57ee83e41ac7d8b3e37ce740801b1ed8e1cf8f3550f7025f663ab5d1c59595f *34082117b3b928e224d490a0db92023aa75f385022dac5bb3f654de42d88fdeafcb0aa4a8b5cca *c402b362e599ed3ad44f76792bdacfbbaa279a1297018dd6014f944862ae92e298e67b9e16e42f *96442ca4d14c23487d2f2740aa462b637a579afde9c0f2fa3e550daa43b6d0f81f95aa8e6b7660 *8d405e8f44117a7ea4d9b6aabfb4b57bf0d674a42cbde8a0882405a8eaf2764a9654e40ae8ec59 *5ab332cec6d06f699dfce047202b5c7539bc165c02f5bff8af40defdf99995422fc95209b74f8f *bea73f3d7c0a7c8f46e2a4d87f3488d3c24580cc7fb458865233eecd81bff947d3d4a5e6aa2736 *e624d04c47dd8a9328edd068fb4c7db1476fed25f4fc7a35a5b3e58a4e473cae571e0dc3319573 *5ca6f16b36843d8c90448d633bc88e25cd0a88eb5b9da4a4177f391d0b60b3a0abb129da2c961e *bddb572260192de4a78907bb7e9da5509c9e098d86ed8d0806d8769bfd6c00136171c1df2d7ae8 *40e036ca3a22c075a53785cef7bc4e0c6099f2bb001108b083951e720d1492f781f15be5a6c37d *fd06b1c99725656e6473747265616d0a656e646f626a0a37302030206f626a203c3c0a2f547970 *65202f506167650a2f436f6e74656e7473203731203020520a2f5265736f757263657320363920 *3020520a2f4d65646961426f78205b302030203539352e323736203834312e38395d0a2f506172 *656e74203732203020520a3e3e20656e646f626a0a36392030206f626a203c3c0a2f466f6e7420 *3c3c202f463330203620302052203e3e0a2f50726f63536574205b202f504446202f5465787420 *5d0a3e3e20656e646f626a0a37332030206f626a203c3c0a2f54797065202f456e636f64696e67 *0a2f446966666572656e636573205b2030202f47616d6d612f44656c74612f54686574612f4c61 *6d6264612f58692f50692f5369676d612f557073696c6f6e2f5068692f5073692f4f6d6567612f *6172726f7775702f6172726f77646f776e2f71756f746573696e676c652f6578636c616d646f77 *6e2f7175657374696f6e646f776e2f646f746c657373692f646f746c6573736a2f67726176652f *61637574652f6361726f6e2f62726576652f6d6163726f6e2f72696e672f636564696c6c612f67 *65726d616e64626c732f61652f6f652f6f736c6173682f41452f4f452f4f736c6173682f766973 *69626c6573706163652f6578636c616d2f71756f746564626c2f6e756d6265727369676e2f646f *6c6c61722f70657263656e742f616d70657273616e642f71756f746572696768742f706172656e *6c6566742f706172656e72696768742f617374657269736b2f706c75732f636f6d6d612f687970 *68656e2f706572696f642f736c6173682f7a65726f2f6f6e652f74776f2f74687265652f666f75 *722f666976652f7369782f736576656e2f65696768742f6e696e652f636f6c6f6e2f73656d6963 *6f6c6f6e2f6c6573732f657175616c2f677265617465722f7175657374696f6e2f61742f412f42 *2f432f442f452f462f472f482f492f4a2f4b2f4c2f4d2f4e2f4f2f502f512f522f532f542f552f *562f572f582f592f5a2f627261636b65746c6566742f6261636b736c6173682f627261636b6574 *72696768742f617363696963697263756d2f756e64657273636f72652f71756f74656c6566742f *612f622f632f642f652f662f672f682f692f6a2f6b2f6c2f6d2f6e2f6f2f702f712f722f732f74 *2f752f762f772f782f792f7a2f62726163656c6566742f6261722f627261636572696768742f61 *7363696974696c64652f64696572657369732f76697369626c657370616365203132392f2e6e6f *74646566203136302f73706163652f47616d6d612f44656c74612f54686574612f4c616d626461 *2f58692f50692f5369676d612f557073696c6f6e2f5068692f507369203137312f2e6e6f746465 *66203137332f4f6d6567612f6172726f7775702f6172726f77646f776e2f71756f746573696e67 *6c652f6578636c616d646f776e2f7175657374696f6e646f776e2f646f746c657373692f646f74 *6c6573736a2f67726176652f61637574652f6361726f6e2f62726576652f6d6163726f6e2f7269 *6e672f636564696c6c612f6765726d616e64626c732f61652f6f652f6f736c6173682f41452f4f *452f4f736c6173682f76697369626c6573706163652f6469657265736973203139372f2e6e6f74 *6465665d0a3e3e20656e646f626a0a31372030206f626a203c3c0a2f4c656e6774683120323238 *350a2f4c656e677468322031343030370a2f4c656e67746833203533320a2f4c656e6774682031 *3532343720202020200a2f46696c746572202f466c6174654465636f64650a3e3e0a7374726561 *6d0a78daedb655589ccdb6708bbb05771a777708ee6ec15d1a7777f7e02ec182bb4b9000c10324 *b83bc1dd1dfefef6da7b91b5ffcb73aece73ba6f7acc9a6fbda36a963425a9b21aa38899830950 *d2c1de95919589950f20a6f0e9132f80958905819252cc1968ec6ae5602f6eec0ae403b0f2f2b2 *0244dc2c006c2c00562e3e0e2e3e360e044a809883a397b39585a52b80468cf69f246e80881dd0 *d9cad4d81ea060ec6a09b403f5616a6c0b507330b502ba7a3101446c6d01aaff3ce1025005ba00 *9ddd81664c08acac00332b53578009d0c2ca1e81f91f21197b730700f7bfc2666e8effd3e40e74 *76014901684092b40090a29983bdad17c00c688ec0ace8007a171064f2ff86d4ffee5cd2cdd656 *d1d8ee9feeff99a4ffabd9d8cecad6ebbf131cec1cdd5c81ce00050733a0b3fdff4ed504fecb4d *016866e566f7bf5b655c8d6dad4c45ec2d6c8100967f85ac5c24ad3c8166ca56aea69600576737 *e07f8581f666ffdb01346dff65c0acaea329a2a64affaf72fe579bb2b195bdeb272fc77f77fa4f *f27f31eb3b8326c7d9ca13a0cbc2c4c2c20a4a047dffe797feff7a9784bda98399953d683d7072 *018c9d9d8dbd10400b03449c001f568095bd19d01300f404f93233d93bb8821e0180a6c40f60ee *e08cf04f35d9d901cca0665b63bb7fe2ff0a7100989ddc1c5c816626b6ef414e00b3bd9b9dc93f *55b7b07f0f730198cd1c6c6d8d9ddf43dc006647a0b329d0def53dc6036036b603455d8c4193f5 *ef28ef7fbfe85f6be47fc21c2ca00e8c9d81f6b640f3bfa2acff1dfd5fc96ca09e5dfee9c2c5e6 *3d081a94a3ad9bcb7b00342453073b3be3f708683c965e8e96c0f7b17070fd97b895c3bb210768 *2c2eb6c62e96ef11d048bc81ce0eef01d0201cec81ff664e90bdabc77b3b27c8dbd5d219f85706 *48d9dcc1ed7dc63841bae656ee7f6580745d40f5ff3783645d80ee7fb9826acd0cfc8f89e0e4f9 *6788b60e7fe5f0fef3949dd57f46b9407eb64097f7b9e10209029ddc8cdf6bcd0512b4f8e7d001 *be3b72b1ff532ba0cb3f07d17b10e469fcaec005d214792790a2e83b816652ec9d40b2e2ef0412 *95f83771830425df096427f54e2033e9770239c9bc134846f69d402e72ef0472917f27908bc23b *815c14df09e4a2f46fe201b928bf13c845e59d402eaaef0472517b2790cba77702b9a8bf13c845 *e39d402e9aef0472d17a27908bf6bf8917e4a2f34e2017136763531ba0eb7f6c135e90950928fc *9fab9697fddfd9ffb97d78ffa9a08ba99595a995b3a9dbfb19c0cbf5df5bf33f3b07c9be6f215e *90acc93b81644dff4dac2c205bb3bff09f45f617feb305fe42909ec55f0892b2fc0b41d367f517 *82d4acff429093cd5f0892b2fd0b4156efa362650559d9ff85202b87bf1064e5f817feb3e4ff42 *9095f35ff8cf9efc0b4156ae7f21c8caed2f0459b9ff85202b8f7704dde4cc9e7f21c8caeb2f04 *5979ff85ff5dcaffac0c2b1bc73f75ffcb8f8df3bff3feb3e0ac6c5cff5d71572b5bb37f95e4ff *bebc44451d3c7d18b9008c6ca0fb811374c672f1f2f8fd679ababd15e83c9011071d782c2c3cec *ffbabc4cdd9c4127b4eb7ffd57005d8bffc3e656a03b1408f4049a222cce3998f2875aa7b78497 *fb4b144e5440d3818b5ab4262836f64c7721862c2482db96fc9473a25b6bd07aacccc240d985de *25f178267089eef45519973c0b724ac8987ddd7537dacdf2fe46a07599a5e0b5e34876177284da *d132737dcc09ae34b5365a9ea25d3490733e7854a04c23fe690f768514ac57d7bda9373b948b5b *4b32cb563d22ac818a9d54152dc3a93c922362d5032d25096af57788bf75045c1bfdf28543a71b *fa63215c7ef2ab21d88329cce76036d1dc85d6dfd60211598cc4b4acbf0cf57107b58c00dae73e *bbf6f6cf49bcf395cc6d45a333d86e6dc7975e4024da1d7ecc2a145e3a7369e9de5039c2e30e46 *bd27e789441b0bbdac2c62ce0baab4925b1aa98f46b2a9dc66961bf6b43a7377b647c939291f38 *d9a0117374a6aef1739f522816c38dc931da725fbf443bb1b20b3748df86f1132f9fd307e45e4b *91a16eb2cecfca3f4517d010b51fbaec02db4749b02554c7904e5af867ea65b3f6ab1cf2c94497 *f797245be46c9e3fb833c3865e623f7f4e04cc454e3aea887dc6bcd959aba5cb10fecc6f6682bc *ed42a750630737bbe8cf31a45f8377d8d50e9b86adf741a5b3bb7e3d96b6842f046c7939979d7c *347882dd2da34d4889bedcf706cf4e81f0987839ca7c47ba67b13765848d350ded49ec90209c8d *7957a452da03f5827fc6ad94ca1f933c5243005f180a6f20ac812e231c5632e2fbbaeb22f4f7b8 *3fc2ed74dd34872d2ebcd901e8d9e9b4abea668341a992a409fca11d3fefb306aa1b92299cd769 *abbf7675354d18022fe30de555d330e670b5366065e1e8c2a8d14ae8307dd31ce8c39a0910f70d *3f4c41fb9abfcc91d86aaa737905e629ec061a1129141148de4f61862a834161fcf02eccd6b271 *fde6d160883add235770f4f8f27d80f5101d8d4b39d182707bd8da4e6e20b1cf6f0c42134c5453 *27878292d11ebccc885b2d59c1bff867ef77459da97628bffdab0c7ef2b2021592ba586e7eab1d *58db3f2ce0dc6d81069d3d156dd91dac741e219aa9db3d566c8ca2c3c98508f3bc5b5d539916d9 *58f1aec9ee4ae4a4db692a22cd27840e52c0936b3b5e7c331b96113088fa7ee39abd5c4378f9aa *9f40db43816fa463aad057345f07f3821c8de70611d1894f43e58bc1e2c9d7614c6af51fba9382 *c6f05bb81950c49b79d48b5408cef5f74df0c7bc72acaa8c26180ae059db424e1bc56ce34c4eac *3eb894f8e7a970685dfe7ae023a078a5cdd6a0cf49d3bb7f1b597538d5ddac9fa68ebff74e3ea3 *95db8973d93f6fda258f830392d623b670db7dd5beb21d076aa3b9a2e9f3ca1cb7addb2b1f9e7a *396926fcc26212395b4e465d2709dbb846d7feb0d84d16c2cbc9243c21d4fae9913bfa63a1717b *249ef2e6a6530bac606080ce51822a243d93d476b16e0b4de73474f9e10f18c58ccfc57d3b8fe5 *984fec3f50a0365e0a6a028c6ed1e85168fc5e1e142a319955a1dac34a8ee00611809e26fb0e77 *745fb03eb1f415ad399ead87d4aa5a976556dee9e027435ee7f3a7ab6006bcf86b0b292bafd574 *cf4c7dfe7656a9e234976a85ee2f248dd425117689dd4a7c329669241e4e9100d7c00ca1dc3350 *0fb38fc47f44756bfcedf3e652ef16a2ff7179388a0c762c02b5d9f79ab405953fe95aed86311c *fe494edfe480cf78c7572879e1cd18b522758307bd42accbe5433539f1a4134d5310b6bb90cf56 *f8a43f5a94969a0aa80876c26437d83dbd3b6aac2f391d5d0896133a1ca7f9da3e6b63643ee572 *963e40467d1129ad98e09e71b48560e0b2db98ff526919977b59d35de7be68079d13b74d4b6dee *9fa616ea18bbd07322edb6949ce87e55bd23df1554747cd62bb5ed15e481c970b1401d62b3e294 *dd4b1ef0b571c9a67a4d8fe077e27d4a5c6438621a4beacd2cecc34fe68de19e58d3a358c481b5 *d5adb86058bfc11e8470b51e4d31896ef4e4b156fe76fccff6a5448bf1b55b731489c49f680456 *c805fd20024e3fcd398428fde0a179489c0e2d7da9a55fad5989ec436a230527a1f2e542eb36a3 *375a2a50794b0f24e678f9140eab1b12db1ce19eb23fe90f2712bd8edbe349f7824b6cc463afbe *6879ffab9c40bc71089ecf89459e8a4c90a07163e423b07b1c690cffd76c410841b1c4428f45d9 *b0949b331cf3af9bd4a504120fdba842a7d0b7f0d4317fde8a58ea2bd13efbb3ce46cbf66e4349 *1a747e25fb5a4ec1d16c6208179e21e89f0d2744bf98b9674d13ec7fbd4e53917db283af2cc639 *c70c5a7cfb242893c41b68b5ef2c01d1ae5999947c3ce47c949537f52c4093a920977f33ccffad *38c923412b1d91485475b1abd9b573dce0e7f0c7a2fad7db14e9669c92c48a21f1780fe438691a *be9626c6b25e76442da3ec58b384756bff59b998018464e1cd4006ed44f504c9b2560a6b37ab72 *bc8c17b0df25b0fdcdd6d2d48b380262a2c528b50aae049d2b011691da9f4a79fb2d1de83c0b20 *7d2fb8f6a64ab803e88e0637b310cdcc7d4de9c2c517564fa1f315ab9d99d86b00f8b643cedb15 *2ce850ea2fb4861bfc6f7a9931527d22b818e3e0e216ac7b5079e01fa1b7fd3f0bdbd8fdcc9946 *a5aefac988ca4b4fd158713eb6c985aa999c6611b75d42d05150677ffbe81c2b88d3b8e528d8ef *cf8dc77fd1d46775c9654f53261e74c57f11913ed862f3ebb20ca83fd21e965ddc8648f6a19da0 *473a1c99e03b4f0dcecf514926b3908860fa974c033ff681f6616df80147f1c86e129a484e32f8 *6455239be94e3bf3bc6296b82b87f47a307c956d543dd33900a1b4cfa84d98a62e52346f1237cb *6b2aea92f970c71221ae2c7427cc242302d4b603780298667bb26c4706902d28d12d46f9be8775 *f24b8b1f61276144ae77879f546720b4191b16955f83a12089325567e8fd4ca2dbebf86d3d594f *5300acdbde256b6b999c6e657655adf6ef2dea4abff4bc3fcb1a270b9a4b7a3c0c3fc098dee8e2 *bb4461f474eed48e5d065fa9576ea91be018bfb8b9e8c649d567dce17a77d6c5589049cd65f52c *08ed2e63606029bb807d9668df56331c645174ffeea03a23de235fa65dabb3f268698110e2a48e *5a64e0d71f355bb7cac43115e15c7296b802f7f15911d1d7e11bd81a5e8facf703b4595c3273bb *b5dc692e5ac745a4bf66ff0f250e9aaf4756ce9c304a161aedd563108c2e624e3a6e0f97b6004a *8c0d9878939806b5c93d1391a626fee3afcf164dac8e73f79c8005ace9b60db2bbdf4cbbea585f *77dd7cbfe2b8ca20b8ac9c163375f5d09e73cfac29112849d97ce17e6530a6f64b5d2ae84908ae *b513a220e70cc8ee551fdd629c02dcc382bbcc1f218cb66ef5714a52f0935d91479bffd401644f *e47fdfe9fa26ac11f952e344e8918adc8fc83ce4058772f424d21dc56c88c0b02fa9067f72b077 *c37bbe593f8f18559707904524f7a6e3954b63261868ebb7b2cbdb76486fb9a903fab2bd7c87ac *fe2125a85e09d874e261857239ecf3d0e4b92f0f68dfb239301317acc1f4b43ca38cc997b1bae7 *19fdc8b3f58c7345da70285e5fc48758b813181bb1fea5aebf25dd4cd700dee548f835b8597980 *23ca34bb516ede2c360d35b174b8f0982e61f935a26528ad0ab6f520fedc5fa5dadd8b51a2f3c0 *9d0bbb4236906eb21bd58ea327cc52e4ae5b4b55bc03f7dada623a99da274ffaea24ef7c235c22 *fe20f0a31be4471ecf9a7aea2c941eeb01ea20e1787b33f42ee8b723a77ec1f8541b916166570a *5bf9ba5b4dd47cbd10d53f383b6ab63a473ea8f30d4d1f5f5b8fe9bfd69006c8184fdf0b3548ed *01d798af09fdbf271307a616324bc82e80f9b01823abe2e86865bf8a120d3bd580cbf9ef66fcb8 *8e2d39bfe956447660b82808c01789504708d08f3ae338fa89999d10dabd0d0dc7317a3b0f3886 *26c551e837a740987571c9af7e09d5518281e8a336f12a63b05dd61ddd0887ea5e4a7aa5d308f6 *2666a88b4ff5290a08b7fde29f6c4e7144d29c5275ca9f134e1bee1b65157d6a8f15f823f1e1e8 *60e8d186c9597fa2f2fbddf6d622b04a7cbcb2ea0d408cc622498a288338bc6ee476bc4c7a3784 *49a53cce253a4cecfc324825e22ed531d9b68606fde454c314b320b74916501107c76dfe390f43 *15d0e9ca2399194715518faa24bbed6daae577661c1685ff79338ce7e3e28b785dadc6865ef355 *46b65dffbe468f0a55765ca24841a603a4fdad459e5a5a54d1e502c71f5812827bf7a7cfa623d8 *77aca2e8c38dbf913e1392b1eac7a1d76f7378d09b2dc1913439738a7367172fd265d289978377 *b9e4201c3045ba5b8e25bef56ca6f81ec254a3bc24d1eeaa0bd0d22633a80644e115eefb1e751f *6cd9dc28e7f878b5ec1bc5047939ec785dfb0451b674c132cbee67e192a013baeb60c4335f6b10 *51b7cc8fc0984e6112a9c75bdb652fab20bdd1a0fb16af95398c4d4e56b79ae4880fbf4a563192 *52ffda7ee9e4fe71d48113d11aa705f9e01f408fca396215d45c4b1c687df5a71da1e2910a6b49 *b8d409a26d29c62baeb4ec0a4182ea3a1f0770502ca840e747299b4603f623387a386c2d26e773 *eab7a2ed437828baa4f2ab47d129deea42db0774cd1305db8887b045b0a655849e20047b0c130d *daf2eca7b314ff68920eb89bfc08f5cbd76fc8d7ce4fca81ab388ca00bb9e2f50931b75d0c68f1 *b8f22a36b64650ff27409e66cf0bb26d60f030ca11c5a5ccea2d5c35c550a7bb37ce53c1caa51c *96ba2b8c8b70585a0ad8c294fb8252a65225d9810ac54be3ca20be4cec14db5ae1e1c3a5d1e838 *4d401047ab7fd36b60c28e14412f253d2ec536aa93a1223808d04fcc82e1b1c0cbcd83346bacd0 *a635b2058ef7bdc27504305bcc121542f99ca38379e6e719cdc4679b9152f9ec69489dea1531fd *88ed34cea9686d33c51d82b4fbecc33861d355e9e7a98963a5db6f24bb98c6903cea828f2d51dd *39ea8beea01404ad554fafbe360cb677f082235e741fa2e8d2ef273a518e5efbca22e3091578ab *4b4ce3e2fa8d83ecf57abe6b993ea89a8fd597fcd5d9d203233698e66070644f299d9fc6fb4f3f *3e94807e92b82ff168b0277b3a722058980cffb7053c4236aecb3c4523445a7cba0ee48ca11e64 *25991401d305d4f8ec1ff5b0a772ed57f90d66854f6fda430671b1dfd96cd96551e581e9055bf5 *5edaf6121043316ade01e289f3ad4bed451dd1bfa45929dd70853b4fc7b4067092d0d68f373521 *3338906d9b0d1de7fd606f55085a7f0a2b37c7f568789e31602a0526790b7fc4dbce5716258e64 *0288abf51418dd25700924a9cb3c73fbbba9b617614320816b2d13c277135d3513d79277767f09 *d80f26f40c6e35ea66fcb434617fa934497bd236031447f3e7a52e28bef2948dd92dd4b2d75a1a *5dc8a00ec727b564a406fb12210fc3d03e86e049bb20a743fe81785d9c1815b36281447f8fcaf9 *4b35c0d9ce0639189c558544e1055931d6582f327998b95851a2bc41b45c8070f59cfe95891c6c *abdfd21835c996f4d3aaa4d8dbefb212a20ef01af37668fa4be2e653e53b025e69ef0873984372 *443eb487c435452b9d18dd8e706479681d8d84cd0d3939ff232d7843ed4fe00a94f87a3ed96f07 *3cb756d3b168f80ba94ea17e41a81846337a9470d6641ca1266b50050a1937cf993d9f7a66acf6 *f39f7202bce7aca7a7263bf8d61d435072d3d913bd7f592f42aa32042e3056b95b6edc5af450e0 *b97db9e76b64da6ebb375e265148616a6a95dda7051bb6ac6ddc372cdcc5aa3da74b6798265aff *7135243113a919d661d57c23b692cbea10e439df4add23dfaf583e0a5194f1836ab805de86bdaa *79c6a967662f81623a0a8ea18755b8f51852b759fd598b39a528bedfdd236e404f5d7155c75db3 *3eb95b533f904bba208cec43fdb7b1cc2107e5b8290ad1b17cca84ca7213e657d1a81019d2333b *07a5e96355764c57bf908f080704f51a9ff0829d47dea0b4c16ea60a4c05a120d156a3a833be22 *b1e07b81cbdff66e3adf0e92560dcfb52c20723daada1159d56c01d55e51be7d83e1b36ba9ec14 *acdc59138b348ad92f0e1b197f66ff01a76b40a12f01d164d8659da4cb94f182d9446d59c4b988 *4fc8ba849b78b6baa1f9eb445be94c52f657309138ec3d7a2cfa431aadad2d67bc98b26547a3e3 *f8ce077d8ede412ec9a211b34c880fbf4bd2c182571dd4989fcf139189e3ac5bdd237b77873ef3 *3e8459164af15a4e9471938cc209c4310734ed09e470d60158ef9dacbcc8d4d64c5271d0c81629 *bb67f5c839b49be4cf778b22300a6f9ea9cd6ee43792d5c97f667aadbdf8855b1f58d7f34413ed *1c0ff0d11ddf68f5265c1bc015c55c0e4a23d75a0453cf77d05b43fcd267cdf64325c1e1803295 *932ddb9de9931d77e34da930d17adc8a2e71ea86ec337462445d60b2f352c24f4fc476923dc575 *f266ee8917c9a81b5599b5dac934deffb6ddd7f28645c17649682a4998b8d712e6ce47dafd874f *e611b5ac7eba73beef851dc039ba0f917130ae9dd474b58b1fb508bbc82396cc2bbfc9a12574bb *27c402a70035e3da3807cbfa1125c8e3267b561c5d0e7c2ccd86a3f13e48c8ece7e681d2156c06 *c30341088d01f212d108bd0a6f5061f6dc83c6d5fdf1eb2019996a36a240e3535307cc4768abfe *abe164d4ee848e526e868e54c7994f97744fc551b6f664256d52daab0a7727468f1807631065e5 *59edb7a52fa71261eafb9afc94c48536eaf05fb19196369d057e9158a8fea968bb536c275fe0b4 *c257b50d368efe86cbbf3d5322b0fc53fe19e39c5fc8fc7ae7b4129c7f7d6949398b2ff7dc445a *2aa32bee9b32af141b4127dc4857350fb2ee1f225a04b7b4e4d30d8cebb1f8968c578e3078344c *e1c60f2a7d3c8f51d06fbf6025f55f3264fdf578a8688dca29e428f2fba10a32871d78a927e409 *cef282d0b84781aff93028f2abda3da89726d0dfce25fb443492448be2d3eeca75d77f8ef32907 *6def945affe1e3a72eebe74aadd1f07eaa71a1e1fe49f5b443a8bb854d8c15596bbff7fd52d1b1 *496220a71b95084c624da79620fd62e5e56ac7cdabeadcbb24f887bccbe0fd74993ce437e4de72 *5c2417b825cca67492ea83ee8678b8156691b62f4e09a9124a1fea9b5d7e36ce04b8dc59f39173 *df51afadb4a77f0e86d2595ac4f2aed87a0a7dcc9e206ea021b81095b8f9fdc898997fdaaee6b9 *557771de15d71b657a538b542461a9444b706c8e96d82265b6bc12d4767ba003bf0a9ffebd19f6 *365c8fb59a7f24f5def8b1df5e4a5c156eb2e015833fa1f0d9fb6946dd62e446a7e7f8d5944e60 *9d22968ceddc24652f83c15138069cf032e180cb73a7174dd4e5d48eb297e17c03a188c2073164 *c8d69640f71051f7c20ebf01353631a3eff570c3cd56190eeadbb669bdc99fe2bedc82e20f10dd *9ce537e8a4d991df7fecfefee06e1995436737973fdce0a8131da1fad669fa476ac416e14b35cd *a9e5807135d6e0dd91eaeadd6fd68c555b26db6d8f2f2e0f6102e4accd1067aa3a61c21ffc3c9c *dce7c6e67a3b86a2c06ffc2abc482ac4956446301fc4e576f251d7b6795f0384e15bf42a04944c *23d2864e6b263fb8dd44dc907de596f130bb501f569613b394d6bd9a4b78b12bfe73de82634f74 *0087d9e8e35aa42a8e3c9c9551bd202761584506a3e972347c120925f61d99faa3ee66716cc900 *f49120f8a548e4796fb8059c3dcb50330578253320251856fdb7f83623e4c4c51c51e07612092c *21a27f90748db976236766ea4d51edcd7ecf369676d5f7afb2c70b1386deb62c04fc44cab3c513 *b15bd594f2e3236f1a7b3f863c88efcae9e99468d8c67d4bcd8fddc4a83f7e1d195baf070b7aeb *ee32c0003050137f1a6db6102c40f2701f95c15fbfd40f81e72a45acc7044e377d5826f3497097 *ed26882d4b230e320a50181b868dd2ee1777a1e6eca1329d7b681582e44488e76f082300a88373 *2609259949a65d4f69e9a168aa09e5f22ed6892dd2341bb3927ce4a55edd27b8906d3547dde6ea *15f810560379821289a40d448038fef2e0b2b11f738cfa40f756b6ae2a7c20cb83e92c284c6ad6 *0dd33ab567e8e7e76bc6693d1b8964b142fcdabc24b22f1e754d233379fe076122073645e63b9d *58e2c09430a9335c5b9368d5c94bbc6d5585cd28ac97a0cef700770504426e284916e0a052a5a5 *12b141c612bac16f26c86e6a87d0af10b2a8d499f61135d9a489dd6fd3bb9ed2b8f7e76ed71743 *a2903fef84ea8ef090b4962ce1bea77624407675daaf0ca8c3b991c19072a7a40d48ec32279291 *adcf52c3a209f72a1ba7649ee70430a0b5b581c3043df147ee575486f7064402d605fb74465ca6 *4f1989211acb58ca288b501eb0f1e7947aa39a4d4cdc5a7ae61c5bdf12611660ce65b64a6976f3 *5e1c012439d4984e41c99ffcf561d201b241e36116a4ba037315ce322d35009b0b5aea6847dc41 *99b25b3fc1ace3f563519a432e8943482e9939fb20e6799355aac06a04954f6d96e798a6e2689a *0d8f5ce063eec1c6175b3d9ea6d0ab752364a8ec88bfae0d465feb0eb43f17f759df7cd7fe56fd *5b3fb9befa98eb071be62e72f0662ba737a052e6498b117d079b69f7e6ba958dea268d7f5573df *90c7d92254a8872b6504530d3d859323ffcf5581f1c1f7ee8108e13eab93bb034aba56c958e54f *fe4abaae7d2163c4296cdac7654d323193b712aafd65f7f614f671aa9d69524752c5af81d94e62 *f6d09764d736fc65b3a85eea0856295bc4a5e228fe87ac626ce7e624719f0d0d02fc12232b3a63 *13c2a3c8b79699ce820ae71994e91b82eff732b9f238f0a0509029c528ae7e1b2fc53689fcb922 *3321cf11a9c5bb7360b691fb20595326092b19dd9daec4b0ab11d57ccce9a68a4a25ced3e8153a *aa50e084a6b7cb5dd1b1d4ddcdf05debc7a7f9dc3c09dd86af3bfc68e67ee1ca19e7b773d50af5 *c69568d99fb8f1b3aea918ab9b4961e0b6cd7905ed43e07b008f94cb3c1f99643e57169934f0b6 *88c68f75ad5b04ade5290f93041e85ad76242d7a69e3e9ab806d2310179574bf9a09f3c0495588 *943d2fb26d88ba186a3ba6ec50cf2e4998c3a719c107ef3a91c69ebf66ed58b64fd41b0622adba *5235960fdb431c5a86933941eb6bb2bb88212175742c723235393c6b84b49da8ef8bc1f22d54d7 *3c517c86d99e6507a3c50dba4dc064819b9172e8f0aeabe8f53d5c2cc83a9dfd2ea6710717f310 *b1f2875c4cf08606d73630bf5ba6aa4cb227db89e7402acc1ca1fb60c951a5ab283a00c50fd62a *a114b9a41882f52efb934d411d2e615a439c747eaa3cd388b1c41ee562fd69b370f2cfd168c30a *aab7498cb77af282f5ba13a94fe2894ae345bcbe18d0c80d8bb0eeee873a3364653f70d7982d9e *3de2e79efc162a497f6bfc698016382f380b911748ec9bf2fa64388216e38f6f99d9418e589c82 *3da4d8a54dacc6ece2a19f60c13756d43778983857e97bdf6334961418f5758dbc7b89a8cc8657 *a318c3bb507d717bbfdad551ffcb6fd5dfc28804f85d3d9be09356d9f7a52ca213ae3994e64f73 *0dd337eefcb5d519313c5915e8b97f982d7a1f49c25331bb5511ab840b96708fed05b7ad1415d9 *e40a698cf12af3207eea5153ce92d10a2af54a861815192cc6849226797e49e19a247153ac743b *6f50dde56f096d0a359dd524d0b0fe537ca2695cbfbfcc2e5e32fb85bd623afeea4de39eb602ef *38bb7b4981934dd5810a4b2b67f53906b2548baf791f85130d09aa245ace6229f00d56a0a0376a *a1cc368397109ac3e457b0786b8e782acd447775f99ad469af8d8627f834a9b8f3e53c98d8cf76 *6203b98f6f749847b505a78ce7d1d73551694ab85f795e830e174318d9bc9566f8abf92e261a2b *8a2293e74a1b968c4bb4667fefa9b87adf0ce8ea7e9456407930af27755e9562d58d9eb78d67f0 *921def2ab7685a6608110fdde4ed8431a947b1a44ee2ba7942ee844ee2a09344a02b3e511249b9 *6bfa30efc506854ad65a82b0f6859d467872ead564be5cfcf6ccb7ece42381cb6cbe6f8d001f5f *aa674867d749676acb0fbaa48e73a426c68cfba10668c89d30c3da3069c67568d2df2563296301 *b0d17594d57447111874c7c95e89a27c67b50a6d023f5bf3225c494c865dda2de7f6366792c4a3 *ee776b49290030fe2df6c51e7d6ffb0d16cba210b3b855913793e0f1c15e0f87ba34b543d3f9e0 *cc7ed35276b24784b8127b294e38a3b20fd5f8f3ded896e01fbfa7dba3b49ea12f7efd01f9863d *ea372f846819e5ca0bdc8deb15f2d64541031c6927e2fc0ab3f68f4ff86d82718e550831f1a450 *36684033a7634584a2aa06934483a0502ff796790b57bb800b40db1d19f2b692b823fba69a5f91 *bc7ccafbd9a1fc804da80947a5a85d1cce2631087aea39024728c1ee6cad34317489e173d91773 *dc652372e9351e97f48f7b857a8b1ed8a53998f5ec97b14e735fb5a60a9e6d79268731cf58f5c9 *2daeb44fd6f989caf0925b2d0cf0920192d2bf92bda450502a436e8cae0163e3734661190c404e *d87e34511d716ef7c6be711c0705c9f6e3d5685ac4cbe03b686a041e4a8cc9853227126858055a *0f342d9b554936eb214c4d4837b2e0f53c69fa62e93e66a6a59b15ad42f24274079aefd0251f09 *5a45d757593cc24d23dc838cc7e0307c5a1e2aae90ec1b30483802a56028d39653f5598ae7a16b *49e68a5797e35a2078ca4ab5d02ac5a45d019e1cc570c0083c7451b5ea53c295b3a379292298be *296cab07bab8893351765b3af191509c73a4735eeca32e84b3e89c2b87bd30c415ed8a44514816 *977a83f5cfc14a77e7e072bf68a95b5a4c10e90fea6d270cb06a9f0f25cd453ccb75a3380f9025 *113a7402f995f7cdf8c77bfca8da67a9b009269b1f7ba6085fbed56f4be915ffa6e82fdf0ccdcf *b31bcea85e262f9f3ee32b792d99ada14703faa7d18f321bfac2ec2f8e219a56129311ccc4b5c8 *050ee3da636f3a8da14981a3539a0ab74fe2c5450f9a367d74ca50ca3e17f25fda0edf7fdb477e *ae7bca67e1301db8d6b3e18c38902753639fd7a99180c702a09d3c7770ac1c661ee2406d5089ce *85119f14dc0e3a166c646177044fd854fc3ee8196f774e3b46d1e68a83449fac70a909da5562d6 *6575568654e95aa2fcea9c1588749005abd870f09b8fad4dd8099c4b7d924ac7412758a991f076 *fb0c6279dae3f711ae15fd155b2529d4f767b6e1514bb8c0016ba7684b0b53e617708dc6cf1584 *87e93b467ba2c172f3db9da9c7d8c30f050bc54f9717769188ad5347ed622a33106faea38f87e4 *2f8235d610a441af74c40e23fac6848e759b188d4d32cbd84b1aaedbd8dd0fa6467a30aa4db60b *baa64d5e9f3d077cbbba2113c93a1488206c320849da835f3b6de074608605c8cafcbb5869ae76 *3395ec10583df686c58bead44a0db25683aad67785c1c1afec4fbe848f958a540d759350e75e83 *e7999e9a3d16e6cd9a5836fc967cbd764df4dd234b50dd93ffce87ee38c73d0f79995b1e605442 *1a9180539bb5dcac820f1693bd5b41d88fa49276b0da87696a1362f973850f7d76e6bb51cad34e *a6d3888e0497db894f1dcbb7af26c6541e1e23a9df79c851ac33e13766cf80ae60a3dd2d23d75b *555cdb86cf87c86c153f9a0c377a6fdbd49e3ee0701e7e84502668156f2475484d4935f029b199 *2387cb76f197312b17d82e0ac831b8c0ccb9d8add82058c69ff5ea732c60a69e96dbae025c8c64 *fca06d9a9f943dec1052cdb425b761fbb1b19d075371cf6427521da7ff257027baf1fe6c5bd079 *cba409c7235f88b01380dde6d4416bbaf82194ab7b43ce637d30185c3b5d26292ad9f6129dd76e *5b27fdbcde214a574a45e619194bcfaee227f3778bf1b058e9ef9a5d6085237ca6cd338d175255 *d5564b490be66ccfbebec53d44e9644b706d560100fdf198c9c05eaf104a1c3e524736a9593171 *1d31442a3b2d2c891de6899c8de3d57dba15a69f310b197a3647a4e9d79485893d42d02ea3bac5 *57453721f3041897955d14f79199b424a68630afa59f0b762fb4515221206291dc6fe4611848d6 *8c111c084cb395eb2760f8bd472476af6dfc85087c9ca2f9e036718f65d8ff1431b91acf18168c *d7276511eeb0d413e0ebde8cbfa0ff2af3ec40037cdeee13cfd53d4fcace40fdfc919cc39a24a5 *398412b1c959800bd010e431c8341bb5ffe7191763d68a0d0aa312ffec7b5fb60f527346a5d950 *227d21c69e55f3a84595d78730fe05f207b2fae62525f523b78048e595b3be99ea84820977e04c *d214cf7475ebee9f09e6cbdd6678acec2b4a0703f2da7b34151a78e962573c2d6fc6648163234a *a2db627d7daadcf9953dadaec67da1c90406323cd616a40cebe90532f75ac85f57c893b64e3902 *8ca5055439581b921edfa0878745c3b38b7b5229a725edd177834ce2e5ae2fa888ea0d0cc77a66 *1d93b274e1f13e3ad974e2b340da473df9d705e721a44001f4e8318d6ca20cd9550bdc9c4c7cb4 *59cfbd9cb842b144e1842e47b1e83b3fd8a95435a5991efb50dd30a197bd5945cf216738b789e9 *b81e7ed347083c49cb8999c14dc55d365958c64eb50d9e742214790ae0c79297c21ca7ae221326 *4cb5bd1a271413d7b4dc236e302cd53b6b36c19ccb125d08295822d5d219d7c6a50a1ea628aaea *c72e9c4e5277bc5442683869baeaeb322a4eacfd4ca22866779c3264c41de22d58ccb51bc7bb6e *137288a98dd5435724794649d0e8a229bb651c2a51ca63f06368eeead7183133a0c1e13cd85dde *563e8310b672a8bc4afee32e3fa37bc01c3b446e5c4835ceafe2fbf292ae147378828b263ca96c *248fdce175fe11da6e1e09366f74ea3241dcf6c100597c89b0f079d6ec4430a1f3b0879a3083f2 *abfb84c678bb0348f8350b3ff60b366047512d9a088b9f3b3186d34d4d2663b1ee058e0ea388e2 *e7b2161a113b702da7aa20eea7b293fd8d211309b3c1c186465be8f63f5235909ac0507c5985ab *594e1a8311c6a4fcfc403373ffc0e19230842fb117f7ea482d85ccf3a46fcf5357b912bd9dc576 *3728d6671d12c51f3eac0951271d793fdd24c196695dc80d31c42ff1a1bf02a9a2eef090f26c6f *87e7f2b19d45c3fff8c5c44563852be1ff019b763eeb809f4eb1a48f9fbbedc107ffec44f2f861 *4a3c15c5c8d7afe1cfaf36e97bed18927d697f8df8fde5884d9f94bb20a765f9d31783297d1283 *acb5ccb33114856170067c5b070ddf8376257b5b674efcf51f93bdec7c441055d75d84feae9cf5 *c185c98f39139ff2182926c52959ef08fa7620cf3c03ce949badebc51c76be36e69362e6c8afa9 *341819f6b073df9ea1e12f8be5cb37f37c1583a5904ac6b1b56a4b160d0ffe9957ca23e5c7bff2 *2d9cb1a6d87d86814da6cfc0de57aae3b7ca0403e921c93c2c0fbcaae85d868cc49ffd54b4e88f *61e5f487410f756744e99ab6db36803a7db8de980f88359b4fbfef630a2e9df4aac323760b29a9 *a0f5b282c9574eebcd87d76f33e98fbbbc7679a5076d6431660285e0ebf1646b3d95241a3fca3d *0c2c4e4f840f460a7227134260c7b68ca39674a6622d5e99a7d6f238af31e6ef881b7f631376f5 *ad39fcc0406f191be7a1f28d0f1e2d3c3db543fc2ab9840506524147755c83f807699e154389ae *01425dcc2fb7baed61840c1ee5825c16aad444be8cc76ec94217b402fd6bedc442ba9e8c5cf613 *eb0ed948472e8f6286d4d62f4bf1437bc470489d6484da5abf22115646d6a102509573abc75de6 *0988aac10270710a48d0ca58f9581fb2d618b94d2d5fd3c9cddc209ce9cbcfef536999d21a95b1 *b397e4ef8f500eaba49b6096e499daf1754bd86ec4698237ee39e27ff0cdeb85091bb59f04efa2 *b14b3ad547d0d456efe19006b376b1f2434608c642e5d1f9e118b73699a8d2873d4a4d7c6654e3 *45ad48080e1e1df3deaf64559cdad0497cc3a9d9a1ef84ff52bdd7a204ae26cf19cf424fd65c4f *ef3a6d6cdb6f668cec1633f7596f3de40bc3b3fb6b89185f5d27fe4e5612c5d6badcb59bff8d18 *b12aa9ff9020ba53431b3fbcd94ab1be7b9f976eb6b5be94cf91cf720db7adc174d6f5cf0eb048 *87e92d44cdfcd8521a115530729afa57f15169c63835f10acda7f190d278c9c8818c4b1a4b99d9 *b8adc894dfb77b93913082227ec32c86440380667ab2ca6f9f963b78ab9bc79cc24dd7fde90bab *30e735d94b366a47f972e18e56f3609de25499297778e44d0005189c30e51e600f37a44207d01f *59b029750a71258279594abf3024482651d91869755e681437edec17d286f4247fda8b6532b5d1 *31c9c752ca80ac3aa87eb12f976bef7652fcc6a465fe787c20d42b8ab9d2ce7ae32be2ab477719 *360913f6f28375b4c6c4dbb340215478bcdcb85d7c2a2faa263aae4bca0093f2b555761d869ed2 *a974e687a631d199b7ddf61f22682c4c6e13964fbcd7b5edb3adc38e4c19eaac40125922168628 *d199d0b5661d6e75ba1f79dc18ecc63fa4617f613e4c1acf8a17ea00806cd1b9c96608f5e1dbbc *62ab37e4da35f9626e2a481941d9bf2f14dd1336b0848d4f22df1af72f4d529911086f5e51165b *e8f0210f150c6f1e5228a943367442aba2c6354dac1ec3742ef94518cf24fc5bbc471c87cacf93 *34b9d0a884e8d3cbb1d650f0919e6a5610cfe8929cfbbf229e177f91a57779f5d243d41e8a0ae3 *1e16745bb9183aab3e6e454ea50a404908d8d21dc602e38a558b6855c03452f859c1ccb6ca7e8a *6e1ffbf3aed4593bb7ca2c99ea8e76644914fff849bf28a78d26a52d3363ead8f079b38c2ae0d3 *0ca54dcccf432bc31dfca62dab943f24b61bf154310977b0f8ac9395fbfd633a254a5b2cca297c *638fd8dd4d07943a55c435fc53d4e91702588451a3a1b9f5db88dafd9656a919b061ddfd2f4ce5 *168e6c3f7e7a971ea99b5c0381f6034e8c8f60be63448d54b14fbfe02403a549c9f1609875d8d0 *a67e8b192c4cd8759bcf515fb82cce8823ce2d946c6a426a941139ff49b35c16317bcd3c50e761 *16d3e2350824695e91ffa2b81cedbe92492e0304436499e05a31037be1f1d58fece45afe610109 *dfeab2a0f7365aa1c9705c2e10bdec91d28635151dc57e5c7525ef60f0e1088baf8ededdfc315a *c7e53cc2871109edd4099e3b90e27250c974a00095ae0256f88b9444e03c252cf14821829b827f *d57e4bbc1847c387fabcb67370845c923e0b45ad0d9b5cfa26186fdc9fc43801182f1a542beb61 *25cc549aece7d31bd75bf868fef167156be1a4a47bf6be5d7368aaded72ac10689829984a47181 *e929a4b18f27d5c3d15dec129523c51134d4236ba78301069a62811d48e726b19f709c34cbb43f *f6a671051a5045b3a2164a3471a27038a11a2615f9a897789c6563ed1754a16526487ccb9de7ad *d77490cb01cca70e8f4479622c375ae853ed389fab04e40a3e9334340fd2708a184196bc1a3133 *7a0638edf312d15272991814a453572356e9ce87a850d8d40f28c154842ce56c0945b1040548b4 *1bdc434f7aab0c508b2c27e3d529a0480ee249a403bed8cb8536fa0ef37df42e4ee10b65b135a5 *8ca3492626cc0aa8edc46a0ff7bb4285a8c2094825072c6dfc34589332dee84e25d0d77b85b56a *68e16417e3412d8bb2cef2a4aabbf699d96cbdf0836d690b4afd150866bc078fc7ffc751b1c821 *80de97c2d0d7a813c67ad5c9538ddad054aa52a65de149e7993693ffe28ea1e903654edf70f645 *14668587484b4bb59402a4b332de0fa4e7afc6f16dd938b4890a4ea76edc2ec50277853b88bbe8 *501fb244d167ab0e74c96898d35a849f4dafe3c952b6d63bfd79517cef7ed396bb243f467a2c4e *add03b9a3e5d7da639ead607dc79a0152ef53e583d23558249df987e5514981852b7e4e888e08a *2c948e8e37e9baa0b900ec96b930a04760d7c0ebbef08155c5c8a3628408e4c0160435ca737145 *3c99f8640b459928013b58363bec5691937183bf6a300c555e903ba74c0c5d53fc90a518b249e2 *98a19f2c1b3b7e2b167c86bda5da53e308dc59590b1d7021a4ab0497ddf5b91d433b416a9ee90f *637f43ce36c9791bf558f049663028fb007715b43b15288651b8fe27bb08fe08a52b893a93920e *916a6e7da7b1b06779b92f5175fd61f353066de1d401dc35f10ef17466c2e8e3327aa8f6b2b1ca *efee8883c7ce8fa687608360a25e245ff0022dc1d4f61c905d6c7d2ec9da6c6885c95579b3f8dc *3da97dba689b5f02b1959890d5688c5194db450def290f3157d8cb83432b4435b2da3d3ed0d5f6 *f5c645a72e282adec6463b4aae1a28f2a38c651156c016de434c2457043578081fad7c83bac3a1 *0d97c1871d2074325808e32ec3d5878ae9a25075afeaa4158e61e3f0ee3dc6d97ab9e3af416cce *2b3a508f253473f8e888d6f33080edfdd845b2708f0c9505a1234dd90a85cedd0f1eed5c48e7a2 *98df75642d2a66dc348e5056745a32312ac06a98e6f0d3d17a024ecd219c715d9b5846874abd00 *8fef3877ab84c8c122d954c26beab69c2f35eea10e6841125dbf2878fc5a25283ac458b7ed50c2 *d3fe641ac2a1c846068686a9ce4d4f3b3bcbaf99251ffa64649fe492ea1ae5f3a7a0d823d3cf73 *989ca2981a3b536202ddf055ab81ba77f09cd83263efeb5da62b7a3691e1a4145874dcd7ad6df2 *e34863fcfbb5297c77d8ca8f979103ad5a7d91ae38655b62b2d51751603cce3113cacac60d63e3 *344e2ace3557229afb14a33f83b84f434dfd427766866009fd8f4de9d70ad2be7b00b58465a571 *cef13cab2da5941243d4d88d0ab488e9e01f4a843ec15ec9667d41d6742e3baf57a124557e7a41 *792ba37b50c815966d5c48a98dc312545072540881fc8ad7dae6dd711fcf1ebff469e98fbabbd0 *4ef741e127383532a38d40c5ef7bc76458d895c54fd59512f95ff846e887264674ebaeac83eee3 *bbd7af85525f6a13065847951c7e9117e5eb047a71d52066cd7a8f34d8753d3806f0688d207cdc *50538eace1d1b989a0188dd67fc5d6dc06acb93543135705ffd0bb6b5f818192296bd5821f9c0b *a3b40b37c2309e804ce13f644730935b08d034f9c1e251ae8e4f338268046daa71b9d0b5ee3c78 *49e518b10196de6b66a675edfc86c9ecb093b49254b6932ebea517e4b85a39a5a9be7fe0a676bc *ee4c02694d73bc04665713d847a878fb09f764dfa9eac4ba0d0d288ab97b1c2c25a7df216db7ed *a307ec8cfdc289dd6a001eef15c56befe099c3e9cf3f2f7b42fffacd4cbba3a07e479e84552adb *92a7c9aa2b49001da709f1764c1c1a6e4d51196b9473a77fc0d1dd44d27354fa5a92224b9b5186 *8405fe216a5391536cb2ad8f308e146fd3614bf56b2aaea1f1a601d49a10b75ec7ee4f8450e122 *2cb068401fec10e397130301945fdf522c72f085f02aa7efe8fceafd69e97ffd1cc71f1d6d0158 *e368191d47f66610f3c772f9d2cdaaa934081e0fd6523c27dddadd40772411bd3d62d87bceeb5d *3c4481bdee4011977e29f815a1ebda76c21680bd74a8ce2c98184ed6d6fd9d6768766e1f0cf666 *ec73cdc99d22167bf42353d3ef258c1a17a466f60ccfbbb4225fc8a383e4439c16dadc03e71489 *8692b08199feacf2edd9c08ee6db9e0f266ff33d19edbc160d310cbe75259352e85ea22e18d5e3 *44af46f4ed25bef7c76df1e88ad2ccac3c56bc947a863107e0b5982e8d86b773ddf0af35cbc362 *310f9f27fb124aadd51bb80abdd07eaa88ed79a2c40c0a18293cfb2bd9e0e469c2a2b715769675 *1c6509a1685c1261909a622ba41346998b0f8bc26310e58c6f755bd5322f025f6d0579340ed169 *b39f43ebca278405cc444453c69a1bc79d5df57427a6309514abb843e91dbe5f147a4cae877a4c *7a690d0aca6d152c09b0dc8e7f1f091985b87ea4ee9af0e4caded23a9d8dbc07b8ad4f4cd73daa *57fc3aaf9b6bceed37db2cad4efdb955f39bace2265cfc314b08d171721f4dc141889c4747e26a *c18f41b5c340f576eabb7081544646494156ebc0e8329bcc92860b511677c1eb33d6a441ec97df *eeeb241b38c432037439c183389ff8c4bc44ab5705af1fd25d857eea7c305d6821823d2a9e43e2 *4ae7bacb31d0faf08c5361106fb7a15154c47a85b05bef922cc329bcdd50ac4d84202ffe660131 *11f501011a57430ea663fda2f8071f491c805634f67709f09ab0560d6d7fa2dee2ac11b6526827 *684cb1dfa4984fc26f105c1e0d9b5ada3778a3ff212cca6c2dcd6a2fd815f3a29224d286936454 *74bbef3689288cb4f186f3314cd6ad84b43d1cb2025a275982ea856be0846866dca24657cc99dd *0a8f6aa8f9c33c573e90dc4153367fba8a3b676a0f729725b96dfb940098ec45b446e77b5827e0 *ae90b7cf93880cbdded5b0f14dfeab4f728000fa589b9d12db1a7275329d25f7af17271fb09cb3 *9e1019b804911e36031efc1996dbededf992ca0c7cf24c7f3de659c6decaa9fc38a650b068d902 *1e852e798accd558520bd9b293fec0150d1e1c957007ffa0e32de04eb1654ae938b1cb84f0a311 *97c260796c6b7f86f779ff9f53449acae2b1ae9b33a156bb98d77e3a3d231e452af38044f4144c *07961b2c8b82acdc29e6b432616ff5d96d63798dc4e16d4c4be199767d563c350ab9fd4f7ecb06 *36a721536d5494bdec072ab9e37e627ef88b9f4d317cc162f4213ecf6e6eae7d697ddc16b8df2d *e5994d71fa9269d1397abc9001bf82a665116b63c74e18982e2aa7469c5a99b80c5920c4694585 *3d222bd44e2784f66601274d57cc085dc7c90bd3e29368309344bff8e2679850b2dc8cc37d5d76 *b2481d6c2004e356942753642fa27c8fa69daa17d31a3f62e2e90c7534603c1ec1b67298d76923 *d6d167a42550b90689520135cc8b5ee9d2265d2f31f0d034bc7953e028ac549c48d4cb4a854ffa *d56238c46df5691899715dfeb287e1ba94121eca1245ef7b1af9cdd872f5499492641512456724 *054e97abf2e4f7c85a57c391af637fb0ddf48d332069e4a99a04b43566e943d564c8693485aa4e *5d230c8d32c7998b7212892f237d22f9d98676e9381deb26b1b4904b37a862182e121ff1b51b4c *55f330ca3ebcb8a54a8658323d9c98066d314e3e3b884b8d00154c690312c3006953210ac3a538 *c0bc31d1259a5e72de5586bc09d65fc59727bdd1923f50f45476e543b06c619947b6c96bc56cbb *1f07c1f1968a6b53fb95aa210bf5a3aa4b0a3fe240fb494f848121eaa97138e1153155492915ec *f261ed165c46656d7276d7c4d8cff9f88abcee587511237e7399e136c57d8e16bdd8dee1db94eb *0a3f5fd994785506ff4e388a1a01d910f45a9f7ba76b4be22b14103166abe2dd5cf0b23391f367 *c182ea0255a8abf7ab78e24baad3383202edea2f4d9ecf884c7d442c9bcce07070454ea70b5dec *f2a9c2db8721cc27a4ab72861ffc97d97c2825bf4413a3e67161bf45fecc37a4b0ec73f62da355 *4e0daafb98dfdbcc3287f2a9f36c9f3f0cb9bc65dfa0bfd32ec789e9889547ea424c45b547c413 *f723cfc1c9aeb98dc8b3d0c06aeda4f75b728f94819b9f31dd665f02d219505ef1785c6287297f *e280e6e553527e14a631b3acd752207265687adbb2447edfba973cc23ccbc1683fb5bf780b4901 *cac728d976f2d95c5ab5d3f46fc398bdd14cf4fca13e826f32ceb851bece8d7ec69a4d61423265 *a5e4515e6d35c9a37b48a2e7d672ec10391f195edfc4492cacd9423fb8bacd08580b644eeddc56 *0e23b0346f30221eebb1fc3ffc20fcff1dfc7fa203535ba0b1b3ab839db1b30dc2ff01888954dc *656e6473747265616d0a656e646f626a0a31382030206f626a203c3c0a2f54797065202f466f6e *740a2f53756274797065202f54797065310a2f456e636f64696e67203733203020520a2f466972 *7374436861722033330a2f4c61737443686172203132360a2f576964746873203734203020520a *2f42617365466f6e74202f555a574153522b434d5454390a2f466f6e7444657363726970746f72 *203136203020520a3e3e20656e646f626a0a31362030206f626a203c3c0a2f417363656e742036 *31310a2f436170486569676874203631310a2f44657363656e74202d3232320a2f466f6e744e61 *6d65202f555a574153522b434d5454390a2f4974616c6963416e676c6520300a2f5374656d5620 *37340a2f58486569676874203433310a2f466f6e7442426f78205b2d36202d3233332035343220 *3639385d0a2f466c61677320340a2f4368617253657420282f6578636c616d2f71756f74656462 *6c2f6e756d6265727369676e2f646f6c6c61722f70657263656e742f616d70657273616e642f71 *756f746572696768742f706172656e6c6566742f706172656e72696768742f617374657269736b *2f706c75732f636f6d6d612f68797068656e2f706572696f642f736c6173682f7a65726f2f6f6e *652f74776f2f74687265652f666f75722f666976652f7369782f736576656e2f65696768742f63 *6f6c6f6e2f73656d69636f6c6f6e2f6c6573732f657175616c2f677265617465722f7175657374 *696f6e2f61742f412f422f432f442f452f462f472f482f492f4a2f4b2f4c2f4d2f4e2f4f2f502f *512f522f532f542f552f562f572f582f592f5a2f627261636b65746c6566742f6261636b736c61 *73682f627261636b657472696768742f617363696963697263756d2f71756f74656c6566742f61 *2f622f632f642f652f662f672f682f692f6a2f6b2f6c2f6d2f6e2f6f2f702f712f722f732f742f *752f762f772f782f792f7a2f62726163656c6566742f6261722f627261636572696768742f6173 *63696974696c6465290a2f466f6e7446696c65203137203020520a3e3e20656e646f626a0a3734 *2030206f626a0a5b35323520353235203532352035323520353235203532352035323520353235 *203532352035323520353235203532352035323520353235203532352035323520353235203532 *352035323520353235203532352035323520353235203532352030203532352035323520353235 *203532352035323520353235203532352035323520353235203532352035323520353235203532 *352035323520353235203532352035323520353235203532352035323520353235203532352035 *323520353235203532352035323520353235203532352035323520353235203532352035323520 *353235203532352035323520353235203532352030203532352035323520353235203532352035 *323520353235203532352035323520353235203532352035323520353235203532352035323520 *353235203532352035323520353235203532352035323520353235203532352035323520353235 *20353235203532352035323520353235203532352035323520353235205d0a656e646f626a0a37 *352030206f626a203c3c0a2f54797065202f456e636f64696e670a2f446966666572656e636573 *205b2030202f2e6e6f7464656620312f646f74616363656e742f66692f666c2f6672616374696f *6e2f68756e676172756d6c6175742f4c736c6173682f6c736c6173682f6f676f6e656b2f72696e *672031302f2e6e6f746465662031312f62726576652f6d696e75732031332f2e6e6f7464656620 *31342f5a6361726f6e2f7a6361726f6e2f6361726f6e2f646f746c657373692f646f746c657373 *6a2f66662f6666692f66666c2032322f2e6e6f746465662033302f67726176652f71756f746573 *696e676c652f73706163652f6578636c616d2f71756f746564626c2f6e756d6265727369676e2f *646f6c6c61722f70657263656e742f616d70657273616e642f71756f746572696768742f706172 *656e6c6566742f706172656e72696768742f617374657269736b2f706c75732f636f6d6d612f68 *797068656e2f706572696f642f736c6173682f7a65726f2f6f6e652f74776f2f74687265652f66 *6f75722f666976652f7369782f736576656e2f65696768742f6e696e652f636f6c6f6e2f73656d *69636f6c6f6e2f6c6573732f657175616c2f677265617465722f7175657374696f6e2f61742f41 *2f422f432f442f452f462f472f482f492f4a2f4b2f4c2f4d2f4e2f4f2f502f512f522f532f542f *552f562f572f582f592f5a2f627261636b65746c6566742f6261636b736c6173682f627261636b *657472696768742f617363696963697263756d2f756e64657273636f72652f71756f74656c6566 *742f612f622f632f642f652f662f672f682f692f6a2f6b2f6c2f6d2f6e2f6f2f702f712f722f73 *2f742f752f762f772f782f792f7a2f62726163656c6566742f6261722f62726163657269676874 *2f617363696974696c6465203132372f2e6e6f74646566203132382f4575726f203132392f2e6e *6f74646566203133302f71756f746573696e676c626173652f666c6f72696e2f71756f74656462 *6c626173652f656c6c69707369732f6461676765722f64616767657264626c2f63697263756d66 *6c65782f70657274686f7573616e642f536361726f6e2f6775696c73696e676c6c6566742f4f45 *203134312f2e6e6f74646566203134372f71756f746564626c6c6566742f71756f746564626c72 *696768742f62756c6c65742f656e646173682f656d646173682f74696c64652f74726164656d61 *726b2f736361726f6e2f6775696c73696e676c72696768742f6f65203135372f2e6e6f74646566 *203135392f596469657265736973203136302f2e6e6f74646566203136312f6578636c616d646f *776e2f63656e742f737465726c696e672f63757272656e63792f79656e2f62726f6b656e626172 *2f73656374696f6e2f64696572657369732f636f707972696768742f6f726466656d696e696e65 *2f6775696c6c656d6f746c6566742f6c6f676963616c6e6f742f68797068656e2f726567697374 *657265642f6d6163726f6e2f6465677265652f706c75736d696e75732f74776f7375706572696f *722f74687265657375706572696f722f61637574652f6d752f7061726167726170682f70657269 *6f6463656e74657265642f636564696c6c612f6f6e657375706572696f722f6f72646d61736375 *6c696e652f6775696c6c656d6f7472696768742f6f6e65717561727465722f6f6e6568616c662f *746872656571756172746572732f7175657374696f6e646f776e2f4167726176652f4161637574 *652f4163697263756d666c65782f4174696c64652f4164696572657369732f4172696e672f4145 *2f43636564696c6c612f4567726176652f4561637574652f4563697263756d666c65782f456469 *6572657369732f4967726176652f4961637574652f4963697263756d666c65782f496469657265 *7369732f4574682f4e74696c64652f4f67726176652f4f61637574652f4f63697263756d666c65 *782f4f74696c64652f4f64696572657369732f6d756c7469706c792f4f736c6173682f55677261 *76652f5561637574652f5563697263756d666c65782f5564696572657369732f5961637574652f *54686f726e2f6765726d616e64626c732f6167726176652f6161637574652f6163697263756d66 *6c65782f6174696c64652f6164696572657369732f6172696e672f61652f63636564696c6c612f *6567726176652f6561637574652f6563697263756d666c65782f6564696572657369732f696772 *6176652f6961637574652f6963697263756d666c65782f6964696572657369732f6574682f6e74 *696c64652f6f67726176652f6f61637574652f6f63697263756d666c65782f6f74696c64652f6f *64696572657369732f6469766964652f6f736c6173682f7567726176652f7561637574652f7563 *697263756d666c65782f7564696572657369732f7961637574652f74686f726e2f796469657265 *7369735d0a3e3e20656e646f626a0a31352030206f626a203c3c0a2f54797065202f466f6e740a *2f53756274797065202f54797065310a2f456e636f64696e67203735203020520a2f4261736546 *6f6e74202f436f75726965720a3e3e20656e646f626a0a382030206f626a203c3c0a2f4c656e67 *74683120313633360a2f4c656e677468322032303132330a2f4c656e67746833203533320a2f4c *656e67746820323130333720202020200a2f46696c746572202f466c6174654465636f64650a3e *3e0a73747265616d0a78daacb96374ad5db0251cdb76766c3b39b16ddbb66ddbb67d622727b675 *62e3c436bef3beb76fdf1eb7fb577ffd638fb15755ad59b36ad65afb79c626235250a61334b137 *3215b3b773a163a267e406a82aa92b18dad8189a58dacbd009d9db9800fe9ad960c8c8849d4c0d *5d2ceded440c5d4cb901eaa6260011536300333380898b8b0b860c206cefe0e964696ee102a0fc *8b41454343fb5f967f4200469effe9f9bbd3d9d2dc0e40fef78b9ba98dbd83ada99dcb5f88ffeb *8dcaa6a600170b538099a58d2940585e4153524e1c40292ea70a1037b5337532b40128b81ad958 *1a03642c8d4ded9c4da90066f64e009bff58008ceded4c2cff29cd99fe2f96a033c010e0ec606a *6cf9779ba987b1a9c33f2e5a8083a993ada5b3f3dfef004b6780b993a19dcbdf1eb8d8032ced8c *6d5c4dfe21f0d76e66ff2f210727fbbf11b67f7d7fc114ec9d5d9c8d9d2c1d5c007fb32a8888fd *074f170b43977f723b5bfe7503eccdfe469ad81bbbfe53d2bfbebf307fbd2e869676ce0017530f *977f721999024c2c9d1d6c0c3dffe6fe0be6e064f92f0d57674b3bf3ff62400b703235377432b1 *317576fe0bf317fb9feefc579d80ffa57a4307071bcf7f77dbff1bf53f3958ba389bda98d1c330 *31ffcd69ecf237b7b9a51d0cc33fa3226967660f6062fc0fbb89abc37ffadc4c9dfe6d10e53f33 *43f59784a189bd9d8d27c0c4d40c8641cedee56f4a00e5ff9dcaf4ffef44fe7f20f1ff1381ff9f *c8fbff4fdcffaed1ff7288ffff9ee7ff0e2de66a632367686bfaef26c07fde310019c03f97ccff *166c686b69e3f97f0affef91eaa6ffc1f1ff8422e962f8b7118276e67fc560a467fc0fa3a5b398 *a587a98982a58bb105c0ccd0e66f97feb5abda99983ad958da99fe55f3df4602e8981819ff9b4f *c5c2d2d8daee9fb6b3fd87cbd4cee4bf53ff2bd0bfc419a43554c4158468fef71bf5df3885bfca *bba8783afca5f63f2a91b537f99f8b7f508484ec3d00de744c6ccc003a1646a6bf07ee2f1f2e16 *36dfff43c67f8198fe6b2d6be8e264e901d0fe5bf6df9dff14ff3f3effb5d2fd6f30a276c6f626 *ffcc8ab28ba19dc9dff1fa9f86ffd1034b4757534991bf95333331b132ff6b35767572faabf5bf *f7c0df56fce7fadff13735f5303586595bb137e609b1cac8ce74f989993f3225a23df08b097424 *d4a1bc49a5a428a0cebecf3f236297abdae0a33e94be7986fbabc373f9cce1f3508afa68ec1786 *0d455f9ae955219e2f09557f11f216791707cd5110835e397ce6b97a8cf7f592cc0e98163ba3da *d1de94a2925ed90704fe4c178b13d4f5335500895b51001ae99303829f717a633c7a37523310ca *cfe2b373f2e4d3e7278aa1f1d191e1be5bf0fe435c9abc7868321e373078f2e800c73c5c7e2dd5 *2ad19a661af0ab8efc68931f070fad2279cbe52c9af20e53d3de1b907cc670c9a520e236e7a52e *b85747c9f1337cee9956b46ae7754a8d0ef8e7e37aec7c995a33979f782f97a31416a958a11d21 *2fc4644d5d71a9c42721d8de51b7bc0e8dd3c8fcaec0d3c92ce75994d3b96a417259dc16e9824b *eaeeeee606e84ebc98a0bc94e82834cc10a48a7bba0b8e9d164cef1dca37bccde0a80978475953 *9f3674f6e0fbad6355a357e94bc3d6f14addb5e39bc1cba343fa3a76063bf9298e4b34f8f6a2d7 *19e787d8e9bdcfcb9681f159a719f585069195182ab53febc89994938c86788601b6366d9ce60d *793baf20f2393f7c3da1c5eec585ca22fae6830b19dd248bed3de8eaaae8e234f012f19a494345 *0867f4df5f916fd732e2874780e752d18c7904953d4c62caf4e9ec059ea7481230c3958854a658 *5230d04372e4f4c9817a916790daa276212f10143964ccae019eee030333fabf4f605cd6332d46 *311314edd122dfb5c84277f2f5205295ee13333393f6b95cb9e20b1eb98a32afa161730aed5280 *c10ca5e42b461625355d9f6a271294c8d49b6e186ad65be3fadedbd533dc6e325257490e83b61e *3eeb4c74165cef2bb645aae6970632bc6d16f5bbb09828157f6becdf077d18d809b67570f1957a *f97724fc3865eb238c33efd71babcf80477b6b28b5bb2da3475361293634404613d8165e1abb0b *405590ea2bed15d829a563ad27c3a02a07b5706ea41ff39084841b6638689325cb33e04aab7a84 *7767948a36631a513a0c5a1ab4d22b126a7aaaf464c16d49bebccba7cb1d69d26ecad2703be288 *739c85ee41279076cd5576a36980ded615a5c2de0ec7f641abc0384e8733711b2bb9eda53c7e9f *5e715fe2c8cb4dabf4b8acf4422433652d1304f611bb31f6b2089b45da3b5f558b5c9c58f22758 *81b60f5260ef3bca522855b8f918f7b83e3240e6366232a8f3fdc63db710abf417e9344cdbb9f9 *53558dc8cf7a465619d5adb04d8b85223e1de5c740f38e9e2ad22e8aca3fcd932f363f14625401 *f1e7186df99ca355bfe708e06a61cec44994363158c76478fe9229f212855d3a3d5514305ce273 *b9dd4efe33aa5f03d7ad3715d496237d27d742c0c6b3a40567c7c4ddea4f7795ad22aad14901e2 *0e6d96adc093ecbab4837db553b4bd7d25238d88aa19dadff3943edb5608ce0e452027e8191246 *57eb4696787ba0749e98e138dbfc1d14851d11d1846a04f97ccbea020badc40fd97b0b0bdb2033 *16d3a4d5fb9948ab62a681b4881f416823de3ae4f396c2ff5af978ba7c3b783cf5a6d3ad68e2f3 *ed3cf281407b2c6b6c0bbbfd0a18d77c2a068929f814f1878c8895111bec0a119078f600e7f690 *69078aea40b2f357d1789da93f5989c9b1111e67017f8ad4727a1321e2456ba63ad02359a82240 *8d3438208699adf3b2ba46a6345cac8c6e6fd3bf5646abc08bffd54063aa973e4bea711c3a11e9 *352cc5c7bc3e3d89f0457c8092240cea941311a53579380439786ce8b508e7cdbd596d50fb286f *0fd55bef4e5aa271daedb97a4da1ab296c22ad8c10e7aa2a91d199050e973ebe0797facd1f814f *3cc734becc760aaf0911d826b40222bfa54e848941f105fa82807d3882a7db11bc25a19b16f440 *3845ff9ba4edc27e09900de7132adcb475327aa94166159a53f0ad7a664824a1468aa685884e3c *b922c827db4c57213c90918aef21802d12ed8a593b1a4446013f6d7915714a4778777fc8ab76a5 *03cc4dcdae64dde6beb62189443f15e25494b183cc9d205fc8f4ba574c1a96df02cf73045b9407 *bd6aa71f4deb45f2dba115c7e5d5160bb677f7d350e1b0e2391ddd16926d62959df9e52a1dfed7 *79092fad030cbeee4bd92118f324f4e6ac0ea5adde4f392ddf547a47bb50fd96544375ee0a7507 *1aea788947e3cbe2672e721b1f61a8f71f6893363f4c0dc4bfd45bf909335af8ad11cad7ce3435 *02f3757679aead355b2d9d9805ae45767ebdd57200c74ca06449a4871b83fca2fe9d8855af12d2 *57b32320547ba91cbdc280a0d6ca34c6f903a276b2b69b8aa57f6ebd1f544bcb5ab0d71010b18f *9729f916d89e533186a946216796fe8ccf1ced3a561b01f5b30e5c6609f14607d2bfa7fc105bb0 *f8a3a993aeb8e6a403081dc6d92509deded81de18a237d12995a6c184c4bd987dd154c4e17b295 *18512aa4dd8260a00e6c5a35619a0f48081abf724a43eb66232d182a6857c9040e2bf5962435cc *79350bb9ddd031230fac2054773c4e26c2ced2ce1a4f88dff41854deab93737f2754efb87ffe1e *653a325658a9952d475ec0bc9226de3052dba7012df7175c5c48b1da2af8426847d4c16342de13 *c3f30f1ab68c4607095165d15c357420d036134d2c65d489ed260a18718ea478b657f77963ad73 *ef9d4490fb0735d7b08d9ad44e3252314427bdc01cfa8d60fcec1bcbcb717b9e787f36e23bd77b *05ac552496eef005720c57b85b3832248bd8dc091decf5d93102bd7ced539aa7534cec9a6d6160 *6a6aeab2cc5feeb93e507e90932ac0f492e2e17e0df765e5bd9d92eb79b88ba53ab29a9ce07123 *894b4b5f819c0a133802ef8c7108da37b68861b54ecdb1d11c764325bd8a9f7462d4f0afeb4afa *039ba1d3f09ec2c470d583e9330edc553603707a7a9eba10e900a9c3cde732dc2e230214a1b087 *cdb4115e93f09a233b65decc05e257f5614b7291c5b221bc305887609ea466db94debab7a9b91d *f04a85eab76d256880f7367a8b34fbf579f8019d5202c3f6474df4a7d6e014146da09193aa24e6 *c5e031bd93ffcfd0deeec4eb7a0558d709d90ad31b310c05c83787837e3849bf521e2a7d6f9658 *41277913176165730d75207e67bd1e2ea4decda5f5ddfdcfa78b21d5cc3201bcae49263c6384d9 *7b682a0fee30e295639cc5c659377b2192e377e58a0caf2fca5788d8f847ec760c607c8e5faa29 *0dd1bee0b4331c06a2a262bd3f586bd2476c881e7e2cd9fb04faa40f5efd8418978c75e2b6b354 *8a3709245d316beafa5091a6a49e67e2fc5ae4e6c7774b7bcfedaa98becd6749efde9e65682e23 *3fe353394fc7c226133953783700af81011c161b87ab6122c1aa5aa08c74c15879cb0edbefcca2 *0c27c9f6f01edb2fa3396eebed8cd67094ad1de64f58ad080be046db63f4243da27750363ec7b6 *36900f5f9cc690949f4fbc06a487edac17420c78908ea4ef8bc47d25f2b27ad019e368d88d40f1 *f7513b98bc3518d89a7a336bade3f9b93e5fcfcabd6c3ba52e6f174130dc74cce7d8c90fffa49e *d80e6bdd30c43afa4530db11fcad8ace9c789ee9a478979deabbb8812b2f03b19adab582cce8cc *5fa8f033ded16c4062b35b9cc1f31cc8924016ac85d185b9db459d42cf93d2a5fc20fe889559b4 *9c64a6001eaf05d8a7736828bd1ce0e32e93048ea747f08c4671798eb3bc4588b493924a53019d *e1ae9a7efe2553fbcc2c6db80f870da1a4c56fcfdefd89962e71d40b4e3b17f398fc61142178a9 *5fe0eab3ecdc75e1ee2596bcaf92841b0d8eb20038776cf06a45b1812876e4771588a3428d0f40 *518fc4817a5b90709ea2755d67755e6f0c2661c4ee6fa33307a93382b94f04a18e9be8ce5358c9 *f985047917a315f0d0f3835651afa5173894df9fa0a26829f7a3bc6fd29f239c59122586484658 *90a4dc6652ab8a5241f0a0c4e32699af4183c714a24fc3f8f00986d92242353a1401a3a0c36b14 *b6898f4cef5cef717b1ae7f0f3895ac76bf2094bdf18ab89f98c0d20c05d195d72462f8192bc38 *ae5e97e63a1215db11dfa7a1e9d250bfbf22afc1b95b0d399367850b155bdb80f1b0d6b3972405 *5de9697148dc2e8fd9ed7145ee7bef158e26824bdf521a1a58f8eeb11f5954ed22c6b1b9f75494 *d63bc9571f898c25d3292c4569123e11a701354617c2e3ffa427eaace19ea9241a865b36ca1fbd *5a245ab615649c912adfa3e7d53dea6d2b41366bdccf233043646ac751f0d11a6c55f5cb7b805e *e2b6b084093c915a35d7834230922926555dd7fa0a71feb3bc5dd1fe9e4afd44c915ef3934193c *c6a7768f279d20e5ca46c371ce39caa6bb8d66c236e04fbbf9d0ebd2773f7ccc3cc3f8c3a2bd1a *5f0a22c56f27ecea8e15d11805437bd634340bfe7ef341c00899f0bee1b7bbd67b7b2e644e0eda *483b980646b10f31457084911352266a733357b564b12911329bf4457c35e753e9a9446f83350c *a012146eaf53c19b65ad71e91882efe333c503349d6a34c77f1d0c6dded922548af61da8366712 *055dd05bff357725260064aa02ae5c5064a45aedf220ab73aa6be89bdda66f5a03ad4e2b45737e *b87d7ad4722d893ccf6ec81817d7f50601330af2a14246772d72c82962bb713bf1a4b4649a1c52 *578497be86213be58db89b45c81d52350c7dfc475da7fb4eaef07c578260009aa7deca2ed804c2 *01794700f01c870dc76bf986639530e98bbf2c3544de6a2b4d08d5b37fc359d38528911ea19580 *35869e6e59981d02f30c250450ca26115ee3640afdc77e3fba589844aa48ea19afc0be31afd42e *3091c610e42dd9159915fa82a6a6f624781d221c9450b4dc462fe507043fbdb4f889cd11632cb4 *f1a39c1f51303386872fae6e6f662fed1c3b2f41882389b04baaa7fed48a06eae603784e684105 *806e5ea96a3280f60ff1292d6904f81f85d51a2d0e75bbbe5df4dbbce84e9c177e7f9c86bb222b *9dd3423190b517ea606455f0f4b1c73bbc451b7838ec80b89ee70e10c1d9f9a7af5c13529307a6 *6919ad12e34ec7192469250d37f5f257e3a415ff31ea75d40f91e447b8fb35bfb15d9cee63b867 *690aecb62de018fc530982a4bbd6547375acc9472e71a230b45e1774f32cac3bcff16960ded72a *b86b714f5e54afb3a8468d3269d427d3ab199af27598a43919f300a8b79fccd91b56ce92abb5ce *0b6d9c7dd8c27aaa45d99a7ce6c6ed0d579cc9e1b2e6ef6a5f0b2d72f9bb647143de1f3414f1da *c7ed90fdc5ef43e7c6994b2b579867f077a562bdb6f3cb8d6c935b06209746d2d2eb17a3ea12f8 *6229ba3fd403fb767862eb7891a060b39940d8d885448df002bfb74ceb0fff28e9af4a0749a1b6 *12fc128af091eb9da5136f580e2b41dbd0e8428a885ebe2a54dc11a6b436e34f95f42594a8d2dc *276ec5920b35305f9f6ed0a3be579fe55fb26ac180ef173a950781b27435acc4aa2c9e3026f6e6 *5e744077c0ddedcbf177d5625096754b0ede31ce3800aa705dedc76d1de1f0cbca440e2c9202e0 *a083a056771b467caa55b4902d684359595317062e1b4ec6dabffa7076286f3bde743e16ac6564 *5f8e0b7955050efefce9ace9be3d0e62f8e79a2787d8cf165a45d8cd50385125f5ad3d5077c9b0 *e25c308c0789288e07e5e43b55eda9146c1f67ceac839c0eba14342c407f1bbf59bdd69501d97f *3338f34318be5248de478f76efa9f08548f42d42e2b196597291ccdee3b5868db62d8d6a52b5f9 *72a2923d4808b3f04d35fefa4642a73ec1c8777c38394fba599ebe7d2dbd1c38f9e1372794fe10 *75a544d929a16bdcff78cafb532d176fea5eb03dc2d22d22726e74d6f8b968db9393f9a09eca5e *f739f2c417922311ac8701c6b986785710a0938d061f631de49d9b08ef36a3fa4a46b35c8a91d3 *1fc14c5444244c87346b53e3921236708e1b8e65100f3d43b64520513e199973b41b2904ee1ad1 *b431069511f6b47d17ad3f1a9f4d6ea892be7d06db9787fe1a255847bec1948d0edd9a5322c170 *3803bbc7c0147f57de2a198ca609b7eed4ae13694ea827557d0bb8a40460556021e696c9f86d86 *c2e1d8926ad76e53f98d7e96b33e0cb9467ebf2c26efcfa1dc22eaf9794d0969ddac6d505f10fa *234c7d1b67b054fe2e550179658845d66eedd75255c474f2770d3cf7843867f50aa885afbfd400 *db8e50f3e48f930a1632983772a4846b71a61fb7f79010b4873dbf57bdaa89337a83c3e8a33106 *493e940c8afc23e61ea88b96ac4433de5e62edcbee1f3a5fe834a877ee8f0b22fee22226b986c9 *fed63bafa425e92d2f649b0883cb127dcb9abdaa5301b9384eda7002ef176e853fbb8bfcd046b7 *05dabb566c03b5cee3ffcb7271235c91e1c884905f8c5f782761e257c8a5fcf828ac3e6d9d356a *40e628f784b71e88262a8ffc68d5edfcb4e81ee744da7db88f6c79f57043021ecff78f7268a206 *89e8edc59ac10fd40a8999ea52d20350abc8b8c8146f1c4d5e0e9ab2585d82712a0bc7965c91a7 *84c6261f84069e2304aa757ffdb5609dfcb9d8a0be47da43b60cad2e7525b9135db5a85cec88ee *243916b80bbe0cdaee8d7310848570a937b0bdadf13f6f15a272e7e472c63939ce63ee3e8b3ffd *132f6b56ee4852e559c450e5ae101ca56cef862928f93ccc79c571d8130c40d7e211adf0ecb2b9 *ccabb264279a63c3fe04a491607e375a3117d20d5053d371a8e7473a333806d995475b063f64b9 *cc722d9ab5da9fa6b58108d5fa420e5c6b1a421d3962d3d8b8b58d1435bc287c39adf441326a59 *60e2060b9d9457523ba132bcda3c4dd7945de792b75019bfceb3c71ebfa4495f007b439025d8ab *c8c456d0871e8db7c8d763f2953395174280e1fd74a3647e7c213c067ec2bbaeece0eafe93717e *b6315caa7233bcdeb693841c38455c256a9e0495d7ad82a5f29b03b07caf44488b62ed83b28675 *3b4e04fa40edef063e7028894c373c3830f6e9abec9f1152d8463e83a6e17e5dd3332f372a5f4f *d2e6216d324c3a504c58d238de6c5641ff4526c2fed48549ab903c4810d5747e1bc96ecd695c49 *7ce071a3bd8d152c051b65b58d7edea78aed9cd4caf660b5a24fea239c1ddf6540130c4b0a1b95 *d475c468237d11029442ac0bafcf15840c6272d84e92855b6bea5e720da8d50f74b0ab7f3a083c *32adc0ddb7535f708ee31bb3691ca7c6c5f02eb04b4989e25df77a7cbff7e6eb63fd7546316ab5 *701c5dc7a19930b32cabaafe9cf07bac79e8367971f7e018a550f3ae8d5ec4fcc8232d099d04b5 *93a88d41f605e96531230a176c24e1a55781efaa2a4ee5c5331952f842f80a5faaa1d34bf713db *6ac07395db5cef979385c7d23ea600a8536b7fda3435921ebd931d5a78594373384ef016a3c6b1 *e83a5209257ef955eeb8d3d697ba4207507eb820049ae9806cfd5a7e7c0a8e514a83d6482a7c7a *ab9ca64eb1ff2b73906c2cffc87da99863158bdb1415ed3809ec5d702b0e0535b10ee823a50166 *c4554f2d768b715215cf27838f6c7bc7932650cdc52a90737eaad4f26c1fb72445d6699417cb47 *fe17cc7a4f2b2afa1f881850fa42943a37d78142ff54c880e827e026df4223e507ccd0269245bf *d97bf0dfc3390970b5eb3410a723b9b45a884ab3890af724ae60838a44c44dac33a067b6563fd6 *373246eb1eb0aec56be6c9142c8ab02d5d6855d7fc099ec69828a5cb87d62d0dc45c6d338c3c96 *6d88af40289d63e7e007194d4e6928b94b6cc3ede1d7ea6290f643d6d4a1c3ba6e0c3a2c9784a3 *32c8af3e0dddcf1fddd767f9e1e33dc901f070f390824639f83f0b7f1557a962f38a05d62ee093 *214cd91250a64ed23e3d89ffd945799d9dd87b84890dbc132121638df2efc084ebe736dd5b09a7 *c1f77671e87aa97ee33c7be457746c654995a50ec4381afa75f3d8e9d5ff1e054b39f48cd382c8 *f85b6c3b181ff6eec6a3b6e5f5475fe1c4fed7667835a8eed530ea60a879b122d37b387933096c *5375b064858eb2825637847d4cc7eac7b113faf9d723ae1f5d44849aa8402b9f7ce6c4d06f873d *3eec3f15095891bc35acb95fc14e686b140ea93036cff252614c6cd7de425ade813a971a660730 *c9cbfd8287e62b4685a0888a4f50b6045346571b8548b9578f25d4f52f611bb371478f20440b82 *4ce6e30cabc9678f53f9ad969c7ec30135eb1b86ec3717b4f5f2f76ffa9141e3ba85c54e8891ea *def7dbb0f4b115e023f08444a66309a1a7f42ceb47421ef3948fd7af10545650cf3369dd3f653e *6773843c909a3a805c800d4fab3a06906319ad3e10b16d3ca20012de6734ad1df697a74607b6a0 *98aa26999b6daa511495a1fc8bce18e4b22f9fa83db9d81b3d5dadd65ff745ac9f2fb5e7aa345f *dc0334462dc8d7f42afe3aef09cf01790d5b112ed90a03d9839dbfaa8976d0527c3c3dddab04f5 *cddf6dc6c3c5180cad7cbbee8fbc13c12612c1660e0a7ad4d1fb943e45992189e4725acfede0e9 *c5a5ae6b97ac11ff20fcdac8a70bf1630cd5c80d8939e8ce97fe3b0dc797e40af163943e24416b *e5c00822ea0b66721b8d578c62880b6acb7249e29dbdab38b558a7effb7782817ae240509d942b *f8b2985f48d2f4d4e805bf424d7fc3eddb8f6daeec7dda608546e15d86f01691d4b7ee6fac0865 *3308843a2132830e61425d9dc1010f454638a6bb45c5dfb83fb840454adf0552124518e1a3710b *f54a8472afa15e1fee6353e723a2e8e9b38f77e22a4f0cb875551eb4d02fd4f2a83e022f5bcb62 *54fde97b838f793e31f0167b34f4fdddc69e7549fda73cc7e5d737022c1cce624bf6c575cd6c90 *3980bc09859e230b0885999a59fb1aa3e155e71d622148284ca1b58342b27b9a647d580f894754 *597edf7baf1ae2347b881c72471984ab54ca411e9b411561b3acf7a7c0f31d9c639041dbbd5a85 *17203dfcd86896d11c3eacffee798fe1ca1151a6ad3df7c521c82d441bd5bb4250b69915e81c57 *17b52808e4735325c82713d817caa14d5dd73c98267c972c9336f08080d87a81c0fdb7c841ee8f *2a945f2d37d7c559e73bf65c0418058248c61ed631d62b555ba2daea12e0ba43ec66df650bcf5c *8aae246cb18705d62a7e4d9c1043afc253f1a8426f248f6e89f5076013de1af6d83142568e3b15 *331b076b02dcd9d34060f9dec9fdb8bb757fdff525f29b929136253de7e2575b839526a68a5675 *254cc44ed8730fc3916ecd3f1819bfedead39fdf3c2f0e732d6bd961547e78579ca6a96d33408d *f7308f970c9601471cd7f4393f252e6fc46831ef916fdbad51acbd9a4a3e88d0c16bff61d9660d *f19486680cf2215585808996a72b0950f78195306ff7d9af7bcea3289fc2b7b628ed7804eb5d94 *f0c52b463731818613c16998eb7145779d2b3649f11a44250432d0e1e45c4d717d88a0e4c35cf4 *7c8d3cc9a3368ce3b3694a9e228a47b098fb1e9f6aed1c5b43c379514a6a2c4face0cb9f3a8bfe *3484cb9d84acdf46a3f4624e40697338137f44c819b30a2766e84d366b22e5bfe472b51acc43ca *3c711fb3c3c650af2a27d7668326cfbc5f7ccf8f87680689b867e664d07308e9bdc24b53f3e684 *dec0195c58fd59fd36187e31d7ad123e7c689fed0697eb15cda265bf3b6b2604272b0d56f4e765 *f5fc6d713e7aef5879fcc1f4ef93d624ef2b90c280db1569c9644741c197af636223d06f9eb67d *ede89b1ff086257e58b3d5d3455577ca0517d7030b27b63b4fab287101dbaf88e331b79878b0da *630fe41fe408cb8a04cb977c3fe78905a0469302fb38bf7390655d4fda5396210591fab08bf45b *d79a8b325fd44a6d6bc8d46999d030eb3c7f60ef7f5ba647bbe95a282fb90df38c20b07d39fd66 *b721a1718c77bf8315b751907b11e9aff13be65850745e832708f0e70305fd9de72627e60e2345 *d91b70d302a3d850722caf5138550a01a162dfd18fa1c737716a6708e76f51c1b0df1445e5439e *27978ad1f3cb13b8ad9c309beec4b22b905fac86eb23cbaee9a3654d05e628598485765032d7f2 *9681d79d81bf37b38dbff477659e3d57b9da80cdbb657f7665b220c4548a4321e822e4569fd2be *b7eb0d13f97a6a6422f0d590380c24e47156deb91b6e6f25732c5c0fddea9c37a5542b43a9d4c1 *9a27313c1baa5a940b473c93bd63a05d8546476dc1f86369202daf7a00cb9ad7c11556455d0c4e *d5fa27ec5bbb973d5bddea4669291437894f1d627c614e2f8b2db204f640a64ffe4b919ddf83ec *e7ccdf1f6d092968310c2f2c74fa56f7f4182898b3f61f42b098d31aca2b8c2612aae904e4c03d *f0f95f6d8c46b7eb213bcd11c63d733653d0213ccef8401c05463aa63a27321b660f7f104e5976 *f6a43b95957e28264898af929cd7d01a3442319712f9ba53e91e9d4162ee3953c5fe64382ab51e *69088dd3e3bc9938f6fbad59cf6398948b9dd54c8a6a1790d40fade5ee8bfe397d879e76ee21b2 *d887185549e909f4c9d9cc824784f7649c70acba466ad7c2e8ef482dba83cc74edb3cbacbe776a *16431f5656f405a248b911022150d3c7594a7e272063fb192ad8c9a292e38040a26bace09010fd *b468d5655303f75ba566437fc461f4bd2a860e5f7d7f933c37f200f4de6b82b803787b9727d491 *8047303daf6b4eb414ea933b3e7fdcd53aa1e51398edc9719e183cf6b2eb3a26dfd2c8669e1f46 *f8b9d3f3a800f42134effa6e2ecf19cf8621afd9578b5dbddbfc3ec6dd7e591342d4198a43f5b7 *cd1c513e9ecb2637e9d12f90eb4e8764478d87675237d746ae6b4329791cc98b0c869e1beaf8b5 *1f50ec3e3cd5cebdbfa036c72aebbf4eb107cc1ec50170fb79eb6744ce23396a9da1f9f973adac *ab79386265c8d0a5f41046b2edcca9435b10f0ccfb518d3f0fbcda6a9f7f9f95bcd7854730e9f8 *87b9741cf0b780d9ea8e41f05f469742a3f62ff8a2c013307ff0cf4c574ad29f199fb1fbc403bb *04d62389b3f3348517751b7a9af420674b49a000e7893b0ca39825c2dfa04f91514ae810059283 *d635cd694949afcd209197f5fa6abb6cdc4934046914ad75b9d413824c6896e963fc20bc725f06 *57f0cb3778267a64270d46a8d2497a3f3b631228a345b47b9d8a286ea4572cd9f2000eba99e86e *21f437c3d90caffa95695d0ff2d2be7f3f20a09d2b8a901aa7fbc628b4167a68fe478196fd0b2e *d2015fe7def5e22d6bc26bf20f353aae3b78fc114e25b4376df3f5b45893479329f7ef09b87894 *f1713c22197e552ed63abcedbbdc03f68e18a92dffccbe7b3882c389b1f59b68fdcc691f1354ad *679d900b5c96b1657d467653ab32327bf649dce48aba3ce1853ed754f023962f7a6a4d46df4d3e *4d3d25f5299a354dbaa5442a32b11692350463d10606b1767d8fe87b8569e767047133d9ce407a *72b6e25d766d307db4d20b43f90df2332988430cf8054a2c74976e7eb48a35788e57644e0b8e00 *cfcc030ac2755a9b3ac2170a994b9852ef65963746b3a39f917379405f10ee994081fe67a06606 *f68570ed7c341ded6886c134efd224a3d74e77093cd59c9e08e154de7b166e91621526bffb6140 *23ad80d7c061c1ce760022660a349ff8d7d503ba72bff6863725b3e5cda0aebb7a6799bd532252 *e9387ea29caa91f71bfe31651ab5ae7da962096280565b7fcea3e1c28a017630426f283a210125 *0781d3f8195d713430bfc583d69ac4be0ee3c3efcb66017ea15845a57230e38dc2593d72a7e2b9 *9d61d6a399827b1f00f241f330edc720c4c2f44273dd9b073282efb2bdabaf5c82f1f30e08fa06 *34e33d4de7c39bb615a196d4c09c2112a21a4e94becd3baf15d6db01a572c35c793c82f41339d6 *068d31dfa6b7c4f4971da9096c49963050bdc9248b4a81a8c3317be0b4c03b5f6272b2ec1d9024 *744a093f9a304562fdc8f9c7b35892555dde438f60a79c17fa702ba439703e4f3f98f36e4931ab *d5129cdbedd2785a89240be8494730dd8f37b4f9dd8a8816413a25b82aed01d6336c4475da6ebf *b204e936162f24a18fa88b2e484caf5c98892c275d638a51affd0bc507563b4868c5799c6fc1ef *15e91d7c45bcca97621f6a2999759b28bb6b9ea77e7851d7a349aa77ef85dc834fc969227e01c9 *b3666d63c8e6e04d1fac4cf907b4d2fcc221f660e36f404b811b75e77a4404562f063924811bdc *9d49de12b6717478287801d774bae2a3e594c9aca65386c8895c133b59da8c134dcb7235d8baed *398f666203e82076cd45ac66f8f721dd379aa97de670f2b979d7d5980ec60f7e590d816cbb8645 *753d2ac77bd5015494f58060e439dfc8e0cba1dab4977e7b86fdca76200c3bb443020038fc8cb5 *ffe9c59f78625b97bcaeb6c4c2895c37ad384924734756fb43b6a28610573a8549ebf939b3966e *c273259dd2e334c1dcc563888c981078faae867462899bc34736e688ae63a76807979ffb7bcf2b *b5998fdad74f0084cb23c6aefdad64bc3c43ef2bbef8995696bb7321768a1681cb7af041f31e28 *dd0766c50a5f1b3c9d22696618d414a1bdd482149d6502b737a54834fee9a9002f5665fc308101 *de88b8923f5706af911160aa93ec96b31885bbacb4d2eb395b19c470d0e7e8143e2e05bfa3fcd5 *2c82e12e2e94c0da38e76360db84839649828a3ee7b66e4af27a5e2ff9426c4c3b15bc08365031 *30dce143a510f0e9142aa457e11f12c0bab3ce65148cada8a020c9d2676b94ad980f70389eef16 *a276d743449b0cd436aaf78c23cbc15ef5a986987dc321afe1bdfd1af669ed9f3a55c2697135c2 *93be0ee84ba285711e7d8fc7ae038042f69a655f322a88a94ce3bcbb3a1190baa40ceee9f56591 *79b6c91d75e0ace048fb5569f1ca3d4098b2e4db885ccc80951174bf3528536c2c1efad35ffb5a *72df241d00379e5041bb76391e7d55b12845e81d4a77562eb79d5cbc187d60ae3456f19661db22 *c7c2d17d0403080a0e8a67d7041f099ba713b61ad0a597afc549052b5751a6146ade8ebbc441bd *21854f1d756741b4849116603deb755f0faf511694a39333f171678bc29717230ed654a9571009 *451e89af5b6eb3cc2a6203c30f4e1cde2920d58cbbafc3760825b92ce55b14495abd4630a43f63 *afce776cb2b0969cb157115c05bda8740b1abce90858d4a273eadfa4fbb519659ec510965695f0 *987516b5c01cf36a05306935431ba32dce6d488aa0a8e583ae257059f388ed8735a4f307e53d85 *b883a55fb39891a4b63d53afa4b74cbe10884f058264aea4662a414fb0864557e0e51d9f6606a8 *976f208c661c2f0b2342c3f4a2ee4cc691f1a38879156e578a2d5f4005ca53b5b3eb5f80bb2abf *f0e63bda1cb0dca907efc41aa7ceb2ae8afd05dcef7a369cd1c73c8a3a5e4b01d2bbed0fd581cf *62552127391caee29d3595771a8b9292429567f3ae78536a02aee33e2d430528447a74338bf51d *90aa718da00d9f3ff15f4be043163d427e0533e510dd8e6ec846549d3fbddb5fcc6c4872b93580 *2395198da2d39c1121df18b30fa6a815b968adbc572de95722f338d0d0a2de0b164b2bdd0b096a *d99975ee5997bb3d1b7f720f1d5329d8dcfed84922ceacdba4b1964386a69165484cdab65b3d43 *f7951702194f72d628c2194886ee7251c597d70a6a9919d6668649a8c38879380d84fedc6d940f *98430369a604485847f8b3eb8267a48b1aadb465bd79cf675ccffd2cf9adc512c9301e6b845a7b *da61e95d05ea28de751a0372ba19845f62628fadc38e18e3a6b41f8af3031d81a8d8b9fef789e4 *46c177e318f778bb5d8f820779dd0f491e315f192cfa4de13655bcc2038065326e701373eed69c *48cf8f1fec6fdd1919bfc0f4bb309ec0c25e07a36e9c1eca0abc67442c93c337c66eda70b96eab *e911eaf70203f2d47a3cb3ad924383528481dab4d5ba4b7f67deaa6f83cce335978168c5cb2af2 *78cfc7c6d1e5d5de19931e87da20bb24da496b78f03d23be9385a7f07e368f84c9dc7e382a4d01 *c220d53b6af432c673e97520a315332baab4463ca0f164a2699ea0a3c66a7ba6f6a1a02a5c5651 *9c118a906e70fd2cb303854a6f8c9eb29315254ef1547de470dd1f45f0d6cab5b754fa77060f05 *505e82086703b8c01065d72430efb5997f10fd06c43cdf85ca5ae0f6615a412d8ebbfe897ce5b3 *5f0a14d8da35bd44fb910f3ee5e1d146b4c51d179a0da40485e32d8da990b26c0202a69fc5174f *67a3c49858f1dc55530fb7916db1a786ea78fa1c91714274cb10bb092c72d2df8591c646016eb1 *6b50eb7d47c492fbf12d607ebe4671b1d8b2cb0c674e81defa31a32a7b2d601e0dbcc41b470355 *201e2c668a6c2bf0eac0bedbe0d690318ea9c648ffc15c1b7b3f9d9d466dfa8e78e836550922c9 *8701d49a579f584cb3a7dd89c566804037962d75b5386a5a1ba4f1493ce2ebc3fd8c5154aa2311 *6cb76896c6b3eca5afa771e6c9b94ec90ba23d8e95f9636eb2de746a50cd32872aa2e786d57de9 *55e7949d283237c6890226ebd7338756f88a2c036c5250093e8bf9ca73266cf165340b8d378f50 *04fdc9a1e26b202b50d807fb5b71bb679bfbc2d36f1499e6ab2fd562c5f84dbae1128756399906 *243fdb91f6fc05b0a3621c089e3ce76fe0870049820e9e62d39f1e29960a93bdab1f60dd941f2e *c4d8c633d1497011229ab60a08ef5c5972e97e1f7067b8b6a939607372235323aac0f3e54933b1 *3444ba71991a8cdfd9028022b591c2574aa96d6eb5a4cd855dfde142b531c545bcb19a818f713f *5a6d85eb2205eb4f70989bf5876ac5675c96dfd2bace56b3694f27ce9cd6d55e182b4df1f1f810 *287cc6581c8208b2620541de98c6abaee5b5cca691c08ba073b2081460ae049dbeb1e21cce2524 *c1a218edc0ac61c79ce0434fbd27fdef5b46ea92c05104fd84dbd9b755db2ce4270c6b82fd57ef *b87827c08ceebb9da7da9e74f259d349975aaf563712554c93d472758956877c9cd4c55dbb535a *76b2d087115513b3b89463039d78cea85f1fdf093fa8450429eb9c23170c6641e98e7c6a2a39b5 *cf57e089c845ef66f7a8ff48b3686943700d7cb2386e604a44b2ee51eb1ee5faf6de50d10cd028 *9360c8e2b5cd9b344191cc4c455407d948231c644155915277dbca6b6146b3f010fb667cfabed9 *f0767ef559e9250c43931398dc6b2ea88e5d8ebef9b8940c155783278639ad74c5e49e118935be *aa202ce7aa16396a3bf20d6a7e14a708cd4fa6cd12397e1e3ce615a51c8b9d0e12b48fd0ed4919 *a9ad378335d94195f4e24b1b921b483741d10ad0ced1da6fef07e146cfb3f5a4fa1e0dd4e56266 *f9f639fde124fff8634dbafdbb407351a783515ccdafcec64acd22ac508a0b94808cbb89985d43 *3c220a3d7c790fab9d9b0a487650a9e74f06843511ad979c9a0cd14e7dbd7b83f264a8c5cefa98 *c5bbd55bed45253a7ca5415e18b7c4568362a69bef42c5f142df2f8ab058a3b72e52fc0718e149 *3bb08192893993433e853f4c2a62a82b6cf20895cd022114784a1364cdd4572796852db9e88bb0 *4e499fc1ad873edf4669f36376e8bceed2d996cb4dc7b252792989abe5cfa3663386a9d13a90a7 *a09e113e3fc9e572761a67717c2c447ba0ded7a0c6ca90341b7168381ce764d16167967dfc0d70 *11d8b1bddf84d1253649b84096654b412b8b238d2d97b3ac83d2a7f2be803e3aae27e8c8c9ec77 *b5d48e6db946d664f03f9ca9b1ad23eb03807e53de9a6889d2f1046b755b5cc9c3242eb401ba68 *b5f0d2dc4c6f83ec754341b1d296e3945324c7726410ea109316cf276566e8e9c7eadb3f374bc8 *40b25f0974f8e5607410511359c538d29e3bf59acbcbd10b58ab9e40cff8c6a1d1d8a01b581571 *7f37f0bf05f4397ab0dc58d2d3356d0aabfff6a95ee1d325ce2ee7cd69fb06a94cda5754ec880b *ca76f51535dea9f81c28b3131db789ffee668abbb7659b62b9495e49cc4c11bd6344694b57a1dd *7a2b0db7b9cb1d1ddfa28439a167a18194b39dc12fd671134ca675968f3a3dbc7c07f600529de2 *5b2eeae63e1ad06cbd277764d7ff64f359efdfa0592d4ea30f714ae4441e2cee300f2334041e88 *765a5fa942a6bc4d33f2234583c9eacfac2ec2a99e184249838b9db0f06f64c6a3bd81276da134 *046d3ba2428a21bbf959fc02759a30af416958c0570911421bd682e6a452760e3178ead21e452f *2f7cad2d0cc7de73b80539ab79408970452206412243d77c7b338a9554dc938e335ecbaa250734 *8c0de5f8d856f4b347793736bfbfc258337b36cbd15f7610bbb925eb119eff57433d5622f00d69 *0615220761d9cfd2e26cd81372152cbc5122420c2933a96671c25aeb25e5c52156b82859aa8340 *a8e8516c1c81a6ee308b3e76325bb135d6d08d3cde5f84fb6368a25dacd07ace4907ef6d8798b6 *f59665f8e236a867f9ba7defab26a93fa9325624e5930a2e7a15f052f3c6da02290a6f5d38171c *45333207072e465e51eafb3a6f259f7199c0c940cb2e14ea049c547ac3a38548b6a2df1bb71ea6 *b8bf93caf8c40b613a97fc9e784eac8b88618d6caad5bf979373dd7c7bca0469ac3af769c6a62a *24520e9c6a5c62911551bda42f6976ac603039f1ccf14d1c777da56f02146947da6d907fdeba6e *ba1181fc362f1ef0acf45762dcc36ce7e44990c5254fb1ccaeab1c0989611acb67fcb1f12b69ec *3445b9933b536a6beaba890022f6000381db62b8f1d68aae22c43c5accbe006f51968d4e0fb656 *fa8f7170645b6851135de7b806a199729428607ed9c99b407055ddc41f9aaf242ea8b155651451 *d961af14881e4a7e56e99e1ed82fafc5706f930347f5aeafc79b9d1cea1c8fc320d8a7a6bd4155 *bc89ab9ec3a430b5f365ceb476c962ead9f99e2c5d7d1b733addf10dfe4acc0752e6b4bc672172 *bd90a429f8201d658e485cceac12b14afb47c8ef542e000b9ba5168fafc3a669053b4d3a71c6e9 *0185bce745066fec8b38ec12e7e712029bca9316cdc629d681a4966c395c4a295d877394c9b3d3 *34b3fa13395442b69f8cd6fd39a90d830a5393342cd4f84d590ceeaaefcb685ba783c7391db249 *6fbe16ef05e8fc630908f80d2931e9e92619e219795521221565b76a8ec1ba42dab0f106f6edb1 *0b168ac374ef377001bd88496e4971fd735ed6a6fc456ea2c5f2eee0802219e8d4faae0575a06a *9d583f261bdb9e4f4488b474196747ff5d2c00f983f0eb3027c215f4d0ef6acf25068346dbdc05 *4967b3b304d199bb38d2795666fbe75c68502ae11e13f7042215c799a8fa47854428d1eae1b6a4 *c1e098708b88559ae9b415e518708442757d95d2853e256eaa430154a977dea95ba5817a0e1b18 *8b5da08becdeeffcc2d1d54bfb281564625cbc83df401be479d35d6de8181cbf1b2e19fd6daa7d *f6d9f99f5a75b81a6e7691341de9bea6a90d2453982c4ca5954aabc2ae200f878afa2609965607 *435819d5c6be806087164e481bd4c4b618b64b497e1b4f2e5d6188ea9c31242cea098629d402ca *bd1a7ff8633cf6c0e4ccfe0597635b373539e61391e809ab7af2e8fed962fd2dac3f9c3d77785b *6e5fe3322049af14abfd47be680b887d7cea69cd59393c391abdb279ad1a2d7f4fca85e240c40c *e82d07d26f9bfc134dede14c33e761a891c11449de169677929c63f0bebc67a4ecf1a9fe331efc *f8d7a2d6aeeee5791213e2b2815a353239cb66c8bbbb70cb335fee7a955f1bfb2070240aaca5ab *dc2a3ecec9e2ae7fe1b2f6d1f310fbfa14b0f1c7d9d05b047d874f3897e57581dc55ae10682ab7 *1f9beaa838666f094ff6ba0a3e3fbf5f99626e7a373e333bc26c93073639f80979f156f9515347 *bdb35fb1cf4aaa12952ad5583f3cf98317f1c8b161fe8e00dca56eea1388851b65d9e0f40827bd *8bd086b734b30db3cd77f9588a4577c13257fa91c7f7e19b5dfcfe8e4d24352f98b8ef5a5a4b19 *6f5ac3835f1afd494d7c4bd700407634dc6f4e7e2c252375c569ce59ab2c175190f025feb25685 *80b9bc4c827efa24c0ec29784c9bb53728878588282bfe7e3c2d93ffd6f5a32f97171a3e89bc7a *73dd221f50231a570636dc9d81723c5acfa8777407abe6ac643c01657434c8df9c2d76adbb93cd *4b24cc60b6f7ec2e9b2bbdd19d23b3ecb2eb53d4c596112a386effecdaddfcee63dfae8b375f3e *ca7731330e0b6aefcecda6ce70c87e3d3ba954dea6d6bdfdf39e8a3a6a1eaacae4fb1c6e08c926 *231058d88424fb493b0403b3366d6df5256f45d275d372c6b18196013644195fdbc1a91ce6f2c3 *79d5d27f498f5386f73e43e0bbf50a16c6d7a1c8877d48edc9637a106cf4dcbaa0cee22578ed45 *3bb0b8d0803ddb3ee546f2b2e1b75ccb351ee04e7ef6bedd643bb6647d8e4bbfffe202b2e9641b *e8f2cfb23dfa2feaebf12515c1de2e47e91c289d8a3d865be64d6183386cbd3cbf17a0ab36f0cc *d03b23bd829656edabe988c92fa30e88439190dd909e6dffb08473a59795c05bb52f92e8c80326 *881452fd455afe73502e1a751c3b414aaec293e7b51a3128ae1a357cbd39b2223682ceea4583e9 *b219577dd578915c66f6114fda2480419b7d7a83d5ebae0884b132e6c6c887a6825af7ac587284 *a8c619f0a33ed0b28bb5f253bc202cf66c45746aa632ce3082db51fbe4d56e48a16049439ea5b6 *f91b572399b147ca00674a56853a4885d155ea13149b612a3e76760cb727643959c346a7da9e50 *a916d19d92568c2e15b8cfe895041bd3c14ea655fc86e5d93c9c3dfc8e22f76ec68c39e88a3a1b *5f8bc5da32839012174db47f5c0d3b2f3cd8807aa95811ec5656183dd764e55d365c554053156f *254242baa62e343b2855cd633b2ae13aee8c9071c7055e39e96e661233b4da972e9a8eb339e243 *ccc79318a0d385302b0f71ab42a8eb5db5130842d09537e07aceece4a75281cece81b430f64fab *5e9e64ce5d88ccf1089ea434e5fb2ef069ae4013208b021698e225fa4d65af1ff4d2de31cdb7dd *7bc5840630448809250d69bc7e0c0ef80275625bcdc4fae9db6459467ae9fff92f7cf671b8fe83 *2d2712915321881a0eec5957fa0a0252d7c14194240276357fc257fedea8254fb62412005e2a87 *0f3652c0b67789b1bf6e7a81ee09da52a3cf2c41a5ab3ab49d219e1a8628809dd354640b2c0b7f *960a2827327f79e8c006c58b708c329f9a4cd37287fd75a02b16f8c3226487ec8a2386b98951d3 *137e1ddd4f43b0ac61abb05e1278c5a7ffcf17100a509b147a3e75acf1cc13261116fbba9b86a7 *d52a3e95338d5eb3442e340f08ecb8d617087cdcf8111ca76a1cc1973238ed9d02da50d43a330a *94733bd18296feee3d9dec163fd5fe4ab112b5689a059a674cf317a74497bac164e162bdef4130 *a27e38335bfce6e0393c793453e0da5313d1de17b508f7b02d4cf0e9e22dea64a2a932bf7ae688 *f385be4651ce076fa80682011b5cf03edecb72853db8147573ccdcc1a2a6f70fc9614809f65525 *22e3c670fc8df5f5285c77cc5f43a753c04e883c9a016bdc0d939f0a7da539f556d340bc389bc0 *dcbf1d97ebd4c0a5c714b0fa4e38c492acdc5769baed2ba6c6d3f0bea039053db0badbfb25a06c *3b765e171d7300f525108169fd3599f4863672c3742189127bf55ef7ac00af6fcc3f61b9f1c572 *62cea6950e453d316f109924ae4be239a52ce57af3f1f3342015a83125b725f3d8d1557c2b1435 *297368daf85eef8f37c69fc3ce8b6f7ce71ba8ab9a9264d25c526f771ecfb17846a36aaecc0669 *2efc88cb081f9c6be2072ae43f464bec910b49b2059435c05e91b81477c94b140adff263e7ed03 *365bdfe1dcc776d80d06b1e6d0aa4938c13416e1de1b21cb2f0e921dea61509375a39e84398b3a *faf9b299e995aa4af9cf04e1e6be9f94dce1680bc0d78a5f183a365e584b9f9fcc976d7d1aa6a6 *746613eb108fa6dbc2c1d2cfb7e184f46cc8911d674d61e20e720f602bacfba89f5c1eaf7dbfed *330d0429eed0ede420e21456d43bfdf428bd7df9c4e7faf7e40a3d765259ed9322b892f3e8d64d *22dcdb1b2e6b604bd58d19b5c2bee8573696aee5bb24de93b547a97d42aa36e1529667791906b9 *0cdd98837e9ec0e07b5d2d814c68f8154ae9cdf32a90fa54975c6f0d31662e7750718de8f7c47b *9c5ea7babc8e518221ef447f29de6baa7e3a59c88d0c8de324b303c419e3a940fa796035b03ef9 *fb04cf2b1fe83d495a91a91ad55d040650c8434ff2371722cdf1fafb432b2af41d2a3ae7dc06cf *2ed48ab5c3c3b13d525cbe33b498408f883549bc6188b66ab55825e71b5c5864cf53d6c716766a *9c2542ef9db43d3be3781b1992273051a530ac12b59a6516c764a845b048969a40a39e7b27cdd5 *5002ce1024bd9846495f6d43dd82b1b67d887f3848877bd5c7444c25158aeb2161ff427a7c09c4 *dca0d96047a2510513e5448282ab427f590db27c7f1a73a44f2986beb62e256ee4c2313ec611c5 *f066c5df419e5506390c74e24a13a657056f6f606e40d6f752a6ed2dbbfea66daaf9f457da9d25 *01844987a5ea1c9ffe5071567671fdf882eb44666cb9447e39214c244992b40b68c1c7ba3e81e6 *6835452c182a675b9c6112217c92d0bb130591df285cf380efc177230df3d670c188654b9401b8 *5457c333ed3b9f78fbc71ba133bb24c35e609fdabd76c9f96e8659647977568eacf569b183cf11 *9240f0e220cc37507eb97ed7b4ef237b12c83320c34a5a39270421ddcadd8d4025a6f490122a14 *3468d9404fbe618f4b68b437003daa9877d4351a134427197b2866c28c2a3cd171220ca98a4409 *124e44c02eb8083b585574b758a67f6c1b0b77ab3e235b0d446fa708284cc9fb268c2ad3469fa6 *c832ec13da577087bceb5559cb782cc796cf77536b032b80b7e5dab9b616512f4e6d7fa764a20d *b5e6ff79de98c091bbdcf26b0abaa1aa64261d17011ad066bbcb3360ba375d758b22f7eef2c58a *17c8f822d0b875be36dc2548f16c698eab147581317cb6435243d508246680a2b6f02838479167 *9d4d196d30133506b5b90d8d5b9e799aeddb98366aaf62006f60d4728054fa33df3993efc8b1fd *563b3466849db63846573f8a8cc2dbbf22e86e7cc2724afce715025aa007dcdb5b13c67cc95b5d *27e56c1b094f5414cd87fc405bae548d949eeecb88c02afc4768550c3a1999e172ec0475bc6dea *1cf8cdd1519aedb9ddd23b5df376286776d7437061788537f5ece633a4a8c7e596c1124d4ee254 *725d020fd8a603706a195fbcc627cc288bd9e31f8a4ca2177b36d77ef3018bced836f5f629c2c6 *1bdc3ac5433e9e669269f1527ea9a69e78be3a337c6db27010e0fc237e7c47bb26a272cab90c6d *b26bd15da52ff9b24826b60953424303ce974a8ea94341ac20fdc707d6960fc4678154f72a8e1e *f64957868758a58ead49fa2da5b20a43af96ad7c9a72500d87764c4291919a54c3300116ead08e *9aee3b1cc434637a5ea2a42fdf94e1bcdc6da0d91a0034f263c0db83fc318a2911747423e41645 *e2e18538f2acd295f372b40a19fb37ffe73641caee4bc1835070ccf4e21b863231ed1003f5ddcd *b9d8b8d907cf1fdffc55b7d39e6c7d7731413303b0eddee01785859c0729ed64d740d01b76b81d *5be5f569e5b8da6d74b89f15baec76c5b6e6ea033a8a8cd5808f5e74fe0a27e4f41e857932181e *ea81676ebe63afb9b3395f72974433adccfd150dbff1f92f1ebba76515ff52debc1686da3f72cb *0de4d073444801d2745acaf8465cb1a4879cfa42aecb8f7dd29fb51114b4bdc307782f137e9522 *87c54a512e63d79e6d3b280131bc643eac758a24568319535530a972717b6033b9ee4acae7d7f3 *2d9a80974cf26b5514c1543f7d475d2c7bc4a42804af32a6f101d1378467ce0caa8ad2f81e8ae7 *45ab7b8d8ccf53a3372b472233a569cbe853cff1787793aab2c663644db1e8ce5fd635a9174314 *b8f29b48625b81a99f41a6188c61ce6427909c75690f2628371e0b31ef4351c9de442575090806 *b0f42d5f1cf831aab7f1f50b523b8f8ad09317825936053de984eee0ae4adedf7ee34eacefa710 *137bf96e210a840601d3d24734c65ee9733b9aefe92e73cb1b0aeb937b55ab06b70f1162e4ab8a *084a5bbc1aaef716ec4846f3dd5e1fa6efb6c355ea924f6115f7b3f469c19d2be7f9d18dd121c0 *516eb5031a569b5da4ed7577728c82af340d9fa88127c0441145a6c9282b422a760910bde97448 *0986341fd6cd76bfe7ca53954026f66ee3061090f00a28d9b08df48bd1ec069e072ad4a2320548 *65febec0fc7fedd4635f240ea0b0e1daec266fda6c377967b2b561b33773b3cdcdb65d9b39fd73 *6dd664736bb25d5b9de73b3cefceefdc1fe07a79376c1e7174d7d26ea3874cca51e22336805d4b *d16f61c1cc155e0b8411403e4a04730bbee63b7ca2e676eb51f226efeb88a7a68b10ac7b260f91 *74be22c75dbdfe6d6c81b7683531087a1959b7f9ab415d28dc623c11730748fc70f1e3210eb864 *cb9e93405661f64ae6ddd10d82cdddc40d23b79da03178d0eebd15cc567ea2b3e48f4508a2bdc2 *aaa550d63ed1c0f8c2f7e01a7db9f35b7f976a250f236e9dd599d63ec2a90c140ff7b8c9497592 *6282fe4420b95fd33920638cf08df83ac888af4f067b6352e14c99dcc092482fb48efab8116567 *095476a1562e86b9ead8d2bb00af60da89eb5327863ece433f5e495a52b5c14c65d03866c6ecc8 *ce7fee1b5faca9d6a8fe06b26150cffcac5fd305d4378dcb9e2073db4ad25a2b203e5252890ef1 *6557e96931347f66fe7aa54e93c1decda2c61f3ef8604690eb26e2d85eb4d33126d6a588dd1e8c *a32ceafff42dfacf2ac91b801c2b30d10390362b4d5238e3c7a7b3263406305e7b936fca736180 *b676a2de336278190228246a234bc59eb1094c2a2d31859360a97f0607836708b1f0617615dbd8 *7a2bc401c6a8e92e955f2754a3d41a33f34a287ee7f6b83f0087197eca055069bfb2a364ead0d2 *a082af995361a967568df0696ab79f6e31a6f24ad62d14387459a648fe6c4ff0f9a716d68ae8ab *16f82c03b9407a0aeae08e948642324161cc1da8636beef21d6783a25c9a6734f0c8b73b1ad84c *c5f34a20b042806bcb715b6e822066dfefc3b82f6d9d3d3add599a5d9d4d0f9bd1e3efcc899fc9 *3adddfb430ac757993d7d990b44fcc8eb7f5032a0012525889f19c2d4e9d483c6b8e410aaaaee0 *3a0dd92b9742a5e5970842a1fabef9920c2ae258a8fa93ccd9b57a6ca0c74d67f97e7daa82574f *c82dd1c1170f4186e7756080656ba59f11b32f49c043f3a8a9836172267083f0c0b4a6906f8ad2 *8d4c41565f44b0234590d745dc4be382a17f7364712e00e18be47b6df1ad2ea051e5182076380a *d22fe6c5bc07fe66be0ba84cd5356a8b8e16f2e869b764acced45cf1456b5b461af490135ed773 *6436cc4e13c060f11b0dbc9bef79d12a3264a226cc272ba57aa2c6aeb931fa8595558d5778b2da *533f1763acdd2d42f2dd247219758c9b5ba994589aad0755af853fb6f6379cdcfd8f6265cc3769 *ebbd5d0f7c8b382b7646da5710d86a32560013d592f0a9e709647c269a48753c82e16bd4f76fd7 *121d6cc20da64c42a693c932fe8f1d9cc791966e6366eb2ca81705ab0a9de8eed3917d728eda33 *03bf4379d46f22f0502400b20e24d6d8ad445f42ec28e387a5d0e4efd311e91a2c63d86f49a280 *de85a90450cf53ff0cd710e7c7f1512fed1d2498a2c3fa5d62f8ef5bf0e994185e95aa8cb17b1d *bf0e990dc0b26389c1f202241de367385bb370bf924b6d2f3d746c480e71431e918877ec9bf62b *6a39da626ab4427b99e6e2f279603c92e98246b07715c136a8f6f06c6becb0aeac0aab9a942247 *93d25dfca16b860e4c4d6720c2bdc3be264ad2ee49af664b3a3a404bfa2249fd6df5666025d171 *4054b310c7968bb9965f5ed06c48de72cd9e6e22a5007bf225861e3831a7ad44cb531315c34cbf *50ba72257b286606c9a5ba1ad7980b47affbb468a8855cbb7130506fd36ac0646eb228d1bedce4 *cd1e23a53364305f3061bfc6073e82c3af2efed01cd2d1ba33896d12408e5b865971971c359cf0 *3d640c872b03348452b189bbd11e237aa493b42b819cd3cafb7aa961dc5e80e802dd1d55f35d56 *21734b2034631962525f659ba5ee1b6b43570c3210338c57983bd8ac75a015f8c769186218aed0 *5718c9d07b99d18a15efbb2ecca166c2e6455a4651814a53316eb57f557e5f738640ed09af3353 *fc894a9214b5b47dfe6b457cf97f6d2da4665e7613b4cde8f1b2fcdcca2442cc2a3cf8e178d84d *7e487a97be2f946dfd5f263b7e865b04be0b1c1f356f9a49954c229ce9800ca20f71a93d9abbb7 *ee596de234720114a1c87c14f8466a5ac69ea25bb7f87d6c47ea63062a6ca16eeceec0213973b9 *7f6ce1af587627d609434905962d471250c4853547b2fbe5b95c4881dcb840eaa51593bfaee5d2 *bfccec606f3dfc0013069a4eba900b9bf4c2f5f3aeb3ef59c350f0f4e95afc4ed45d54416a9f97 *3b6e986065a88c18dd513f605af19e19c92afb9f5296e6e40dabfefa640feb29739f946cea3f22 *18ac521194f0398eda9acac1755e02c109597aecc760e31c2641ca01919a834e5872ca45738fa1 *b7efad27e65c9c8a77507af99ffa936a360bc1222f6b7d7ef6a8e558598f2b6d4492b83d45f4b6 *4ced997cfcde160380cfd7da842cc0a23bb032e9a5f730ed43c7207c4fd534c4aac312b575ae6a *dae74fd2ebb1d8741bef1f95b5dc6c6ca95d972cadd925ca9f3ed659cce5118574aba8140f795f *1f84d4fe624735f9d46d861efe284ef92e5184a7a7213a498613fdcd8af01deb54cd6dbffc5b16 *e75be12da4ad48b518e7ccb11b2f3fb65a301299e44c31582a84e72fc75fe5f78ea49f1d1af2a0 *a83698e05f6ca2d9c46088789b8d364d7ef6d57be74ed3f1c9343e974db728570a37dad5f7349c *070fc61da90e1f3053b931fa1c91c3f72888f788b98ab36a94048b26c089c875c5ae3ac893892a *14f52402912ce33d0712eee01030c260c6f006ec300eb479f8cf71ef85b3f07c7bd03fe0779a26 *3cf81e6c0bcecf9b60b6dd39f01952088747d851524d7bd78ee5904619b7567ed0f0897b45ebf1 *23c52b38cf82cf63300e183871251b24db86eca5db70871906611479bb0d21c311110b1e513339 *746875c0e15dcc9757b4ccee530252f9cbf05c746f95386a77be84ba53797b4c71bedcf45d9e3e *0c68e7c07639903c476d7fad8961721f2e8f3f16bddbe10ace2e39655a1c797a3de9f81779bf29 *c07aaa1b71ab0ca070773c571f685ab598c8112cd732e49f458a07cbebae3e37401fd8d27bf450 *19fa06af119537a15f8ce1c4480e15c2173616ff7d36b2fd7aabad8c9213334bc97828e9484010 *867bbdc2826cc333d565e5810db40ce0589d5e4d7b09f2ae66ab149b78ea90f96553dd547bb4c3 *e0cebcf098c488b11cee831e429a16cdbcd83977bac18527980869efec52eae11b90e333e40104 *f3196cfc65221794bebfefdf1724bcac704be0d353e882a586c90b235a36133fa010c26bcab91c *526bce5b0cb4487cfdadc7da1795df935f72d37fc21521e734fe79be713ba28a9582f5a177c1ea *1354772abb5ec9f097f2aeb66486032eff197dc9653fec0fdbd75b3e2129592afcad73f15f164d *915faeb2b125042c063e84f7e01ca24b3b7b05e2e83a7991c79effb9572ae1075f2eccf44576b1 *48eb4d62e11feff39c9923b6709127b506090c4b642a51a22f0981c2857c5fc6de8a638a4aa991 *954fb84c19abd4d05a6e0838474a96460488396ef4383ecee0700c58bebc16d45ef822213f4f48 *c3a822709db4ca8ff61b39f1e163c04ed7d3193d8894104d0bd2ba71af6ffc84c024b5d57655ab *7d59a55b787eb44d52aba5d680cc65c08cbb24cf956ed112270fffb9eb1f041436d73bfc1716b0 *866bf5f0b70bfde3e484f36a7f50c1b0df769b322a61db92be055799f0beaf8261e163f246aba1 *7e7f467d92bd777ec0f3d70445d3b7a403e614459c494de3d8c4f9a2c8833574b53553eafd7bea *a5533f6a3fbaf5dac9bfe7a77df291ccaabb07cb008aae258be1cdc619822b2d34f9957b8e5f03 *56172abf12448e7777c659239649136fd62f02628651bf7aa5bb5049d58b54dc9af382a6547666 *e42013a99fe3e59184f3be5315dc69382e30d136ad6668ef85a5b1a457023d08240b477c0217b0 *7b85a3483182829a9b7373fecdf22f1397bd7f6ea4e72b9d942294ad331ebc42570a6b11b92c5e *9a49256bc9635df2799af8f2dcdf701f7ccb45a8c5d849baa9591a80d8a05f9496b407ef8700b8 *7a3b10e7ae85a7950f4fdda00d9cdfbe6deee6e781735c2ac1cc43cde2a9f974b8dd56e241332f *358d0fc12e6dccc364984b1d472cc87f241872628b123d803ab4936dbd861b9265dc526467b816 *b0e3a192d9991a23e864a8a34097d748bb2b50c2cd29128b85c59fb9e9912a6a1be3761e8345ed *e2ebd0568cd4cbb2f84e471df0208773ba0ba8f79e9725738916c571ec837869c4512a295bf936 *900efd40bb8c2477e3c7880b6b3c5dd61eaaf287858562aedef4bce5db060b9b4ba1f9a107788e *b4adec02dfe03023617618043ca5b65ac085fd4b80d4195fe24a799e674a1b93ab8aea7108ab6f *615782a823d58855c3a0abc37c5c8e46bcc3a7c14d9f9bd0a04ba84f1d9092703c88c5f40c813f *e9baf3e3d5fe2bfdb3d07dac9aabdf015c9c0a1ff4ba71e58912194f8c3eb420fc98ce26de253a *2d213baab2fa515f966dc758b77d8229ab7dfdd4701f6bb4b678413edb5578b9ff4f9aca4034d9 *09d5275a22521483f2fbf59de4f19f6bc45a76efc8b799ae44db639c049a7b3e11f8c9a474a5e1 *c63dacc0f618c19771de1e20405956518cd6b56a80f9a33fb98a95d26cd34c6e2675cf583b7a8e *4e8f476f32d5fd398676e46494242af364c63a9a7589cad3877a90b9d4fe4dcd1b9939b30d4599 *c698518a150c35dba377a7a739c4971db3bd7ea3edc20b853628b50d83c20cbb28cbd175299c31 *002d0748fcc44f3511131136dd982ca1a85cd35ae3b9a6e30d32ffefd25806ab8beb31742b46bc *26959affb0fca5c8d995a006291bd10a034410de739d0741fd1481bb5e26869118c0f6f0304aba *cbd53316b59dade4b8fbf2a81b965886fb47dfb4789f7fc40491a8a8ca3ac7cd7fd63391af7b2f *172133d223f70fce39f17ec08cdc5957993fadcfb45cd49624e8c985b62812ec7590d54ed49bbb *d899c54a5a873fad3f7f5378e49eca8569dd1dd94f7f6c4879053aaf528fbc17dac39d8980cfae *88cef904e9e05e2a1c1ae0e6c86691c97470c4b79e17b5c2360b9d15f852c5237ee9c3d83a57f0 *e538a9552b33de600824b6f7b3003bcbeb97c1de415f59cd621b51516ee34c0c44ee794dc62d58 *a38a84fffd17a7268935dbfc90350f9b44e1144549a4b5f22e5d6fa8aaf2e8580927c489d69872 *7f1ec64e71307089e142bd19d5b06473d614774668f98d7d178451cef99912571b272fbd96ee35 *608873fd685b1aa1e05c98170436b6b50695ccb8724a81c8b822fcf4731892429ceedc237877f5 *6cdf836e7a31ed7f7056b6a8c1ee459baeb6225f246b29adfa50aac72eb2d4eaaa902b428236d1 *e99d64d67139fe12469a022082b565a624109bfec308a596b2065cd4df6b193978054f0f398a83 *fe5431fe527c02dfe11e9094cf9b562e7bbaa6b405d45b5eab247f5bf0e611d667d0efc1160711 *12c5b96105a4deb5d07cfddd5b9e27377801c1888f1cdd072515a9dd9b306a136a5ee12ab346fa *019cc0f78a949d4759e8d22ce26002901ff7d4f6d79ec484517629acd8d037f7e5138fa342037d *cbf5d66ff3b54819f6b0c9f2c63b9ee676e26be6127f5eb96fd946955a62dd1fd2c936ee248d31 *180b5e6717c0c47abc61c0e31b774c59f70f436523a1512a8b059c1189f6f3a96c689b77f0d7b8 *c178d0bd056a2fcf45391911df206cb00aaaa1782d757de4454099865e6bc4f4bc009138c48600 *7c37378f86c34dc4792e109fa404cf923b8136ffca4fafd4eed62dac95ed17ea22f7c179d99799 *b39609d98e1698531e3f69e442f06503d7eefe4b06302fdafb93ca65fcf4dc6044e8e3d9fc39a6 *fd3330dda8eced0e0b42631e3652cc4a3ba72d45bff0b3c3e557464d39897c045f3222f97b1701 *fb71605879b753bd50a960bfdff8ba45754caa36088a251ffd7048494955950207543e4fb833f7 *9bb9a22d45ec59c08b29842aa26684ca87fee0fcf421a23f57ccc73a3685129b5d4244f1fd9965 *008dc1099b534022afda08d3fdb333bd306c3f09dce6927e4ad162f977dbd4cbfa21864f9b9a08 *c39c6ec9a2977279bfa0a5ae1de9071b5e2567f38f9b6fc7df86168ccfa1c4f206ea909264aeff *cfd0ff0ff85f01fcb0b730757173723075b143ff1f7155ad60656e6473747265616d0a656e646f *626a0a392030206f626a203c3c0a2f54797065202f466f6e740a2f53756274797065202f547970 *65310a2f456e636f64696e67203735203020520a2f46697273744368617220320a2f4c61737443 *686172203132310a2f576964746873203736203020520a2f42617365466f6e74202f4b58544750 *422b55525750616c6c6164696f4c2d426f6c640a2f466f6e7444657363726970746f7220372030 *20520a3e3e20656e646f626a0a372030206f626a203c3c0a2f417363656e74203730380a2f4361 *70486569676874203637320a2f44657363656e74202d3236360a2f466f6e744e616d65202f4b58 *544750422b55525750616c6c6164696f4c2d426f6c640a2f4974616c6963416e676c6520300a2f *5374656d56203132330a2f58486569676874203437310a2f466f6e7442426f78205b2d31353220 *2d3330312031303030203933355d0a2f466c61677320340a2f4368617253657420282f66692f71 *756f746572696768742f706572696f642f7a65726f2f6f6e652f74776f2f74687265652f666f75 *722f666976652f7369782f736576656e2f65696768742f6e696e652f412f422f432f442f452f46 *2f472f482f492f4b2f4c2f4d2f4e2f4f2f502f522f532f542f562f572f592f71756f74656c6566 *742f612f622f632f642f652f662f672f682f692f6a2f6c2f6d2f6e2f6f2f702f722f732f742f75 *2f762f772f782f79290a2f466f6e7446696c652038203020520a3e3e20656e646f626a0a373620 *30206f626a0a5b3631312030203020302030203020302030203020302030203020302030203020 *302030203020302030203020302030203020302030203020302030203020302030203020302030 *203020302032373820302030203020302030203020323530203020353030203530302035303020 *353030203530302035303020353030203530302035303020353030203020302030203020302030 *203020373738203636372037323220383333203631312035353620383333203833332033383920 *302037373820363131203130303020383333203833332036313120302037323220363131203636 *372030203737382031303030203020363637203020302030203020302030203237382035303020 *363131203434342036313120353030203338392035353620363131203333332033333320302033 *333320383839203631312035353620363131203020333839203434342033333320363131203535 *36203833332035303020353536205d0a656e646f626a0a352030206f626a203c3c0a2f4c656e67 *74683120313633380a2f4c656e677468322032323435320a2f4c656e67746833203533320a2f4c *656e67746820323333363620202020200a2f46696c746572202f466c6174654465636f64650a3e *3e0a73747265616d0a78daac78639465ddb265dab6f3a46d56dab66ddbb66ddbb66ddba8b42ab3 *d2a8b4baee77fbf5ebf1ba7f75bf1f678cbd2262cd981173ad187b1f322205653a41137b235331 *7b3b173a267a462e80aa92ba82a18d8da189a5bd0c9d92bdad21e0af990d868c4cd8c9d4d0c5d2 *de4ec4d0c5940ba06e6a0210313506303303987efcf801430610b677f074b234b7700150fec5a0 *a2a1a1fd4fcbbf4200469effe1f9bbd3d9d2dc0e40fef7c1cdd4c6dec1d6d4cee52fc4fff34665 *5353808b8529c0ccd2c614202cafa02929270ea014975305889bda993a19da00145c8d6c2c8d01 *3296c6a676cea65400337b2780cdbf1700637b3b13cb7f95e64cff174bd019600870763035b6fc *bbcdd4c3d8d4e15f2e5a8083a993ada5b3f3df6780a533c0dcc9d0cee56f0f5cec019676c636ae *26ff22f0d76e66ff0f210727fbbf11b67f7d7fc114ec9d5d9c8d9d2c1d5c007fb32a8888fd9ba7 *8b85a1cbbf723b5bfe7503eccdfe469ad81bbbfeaba47f7c7f61fe7a5d0c2ded9c012ea61e2eff *ca65640a30b17476b031f4fc9bfb2f988393e53f345c9d2dedccff93012dc0c9d4dcd0c9c4c6d4 *d9f92fcc5fec7f75e73feb04fc6fd51b3a38d878feb3dbfe9fa8ffc5c1d2c5d9d4c68c1e8689f9 *6f4e6397bfb9cd2ded6018fe755424edccec014c8cffb69bb83afc87cfcdd4e99f0651feebcc50 *fd256168626f67e309303135836190b377f99b1240f9ffa632fd7f9fc8ff0d12ffb708fcdf22ef *ff9fb8ff55a3ffed12ffffdee7ff0a2de66a632367686bfacf26c07fcc18800ce05f43c6eeff88 *36b4b5b4f1fcbfc5ffd74875d37f93fcbfc248ba18fe6d85a09df95f3918e919ff6db47416b3f4 *303551b07431b6009819dafcedd33f76553b1353271b4b3bd3bf7afed34a001d1323e37ff1a958 *581a5bdbfdabf16cff7699da99fc57ee7f25fa873983b4b2aca08428cdff3953ff8953f8abbd8b *8aa7c35f6affb314597b93ffb5f8178a9090bd07c09b8e899d1d40c7ccc9f2f7ca3133017eb0b2 *f8fe5f32fe03c4f49f6b594317274b0f80f6dfb21999fe29fe7ffefe73a5fb5f6044ed8ced4dfe *755a945d0ced4cfe1eb0ff65f89f3db07474359514f95b39331313ebbf7319bb3a39fd55fb9f49 *f0b715ffb1fee702989a7a981ac36caed91b738758656467ba3460e68fcd88680f0d30818e853a *9437ab941405d4d9f7fb6744ecffa836f8a80fa56f99e3faeaf45c3d77f83c96a23e9918c0b0a1 *e84f33bd2ec4f325a11a2c42de21efe6a0390962d02b87cfbc508ff1be5991d903d36267543b39 *985154d22bfb80c09feb667182ba79a60a20712b0a40237d7240f0334e6f8a47ef416a01426928 *3ebf204f3e7b7ea218991c1f1bedbf031f3cc6a5c98b8726e3760383278f0e70ccc3e5d752ad12 *ad6957eb38ecd7e630f213fbf92925ef82139addfabc3eee3f5e95766d35c9033115941df8c574 *44a739b6dbd8cf6d33a3c39394b61db680167e1bd566f1a436bb11d78151b743f0267e8bf6ad19 *e731e9b187f5f264a0ce863b692d01ac75bf9fc7c714a0fc5be977ad0047fff8f5ebf4a7f7b0ba *989ab6dffbbda0717a721d9b13208449fc6d2b29bf971478228a9301a8df535516454785559505 *08a4e1cb963883511cce4385c0e3e72a9f0f8e61762291d63ed90bbaa108ee47d64f1103b68e8b *1c5ecb2e17ab85992ab05cc2e34df03d7e89252aa07d6a927792a756c79d89a6790728613c825a *7feb4d6a5aa1a9ab9457477991a339a6f77a9202932a6a7fd4b5138e384ae57c2068662e48d593 *e87235298168345a1208a712929f56762a5718d4ef2f6f7be5dab01f26b1ba65974c64b8469d4f *d8b52906e17637d3f1b92496538caa41a010cafc3cf8e2ab4537e986f943e3013d9b2a30419012 *ecf99fd5b94a920ca87030c313fb13ceee3f6d88ee768572d0ab9233dcc3ed430cf4cd435b6bcf *d39971ef736fd893ea95f56ece80d3f5534c949cd088288bbf261a7b2eecd43bd800ad233b96ec *5b31bb4fc7d99122534ca3f9e109b3fc571a7758745963db4debda12812d8c63beed962d2e7aa5 *422cb39f6a40ddd46980ace04fb0415ea9923a8add4d5fb2e4a7cfd22771e44b2fcacc9a8cded8 *08cfb26209720de64c19eeda808345e2c469f0246190f600112eb7823c3c8ab3eded0dff2fee03 *df7d211c71671e9a75929c704b21740d566c4453cd08a4fa98da0ca197c2a3eea53a1689def849 *acfcc32b35e14bd970b47057144c90eb76e3acd9801b7948159aee81fc8c17c24e1cbcc8b1c47e *ce39a11f8d7878f059d661e2ca8760033dd3d07ca8f9b986605fe0217b20b446846127fd87fbe2 *9f6a085191cde1b4e1cf8104793d95f358a44e213811a723442773963f17493a62e56c103774c2 *c645d8faa70e6368746ad53771b2459c136cc104425b59ac216c6c737ea72c35b3fc71a8655eee *a1eca2b3ccf6fa456391b30a77b8a2a140d0b3c449c8ca380c9eb75d44978f3e053a8b358d81a0 *39f0dbe03901699b206f04b62c513ebf3d15af65b5eaad906dd057d76436248a791c4727d46672 *529eb46db23e543ad81dc363a0a165ac6473406bd7f264402c3d5cf10e9f7aa5146ac670c12264 *8dd4be0c328088f4d47fc00d30b84d120054fb541b97eb8205a12a7952be6b22a00955e0f1a0fc *477c452e2d2aba12746b5fdedcc5732b2923f7adf789e3dbc85f5cadfe0591e29c266b96a82afa *24dfb5e2bc8efbf1ca05d23e885610ca668e20bc52582545a1b731e65c6335adf7aae95c3820f4 *23cda86d18b5755aa5b236662eba966c6b0ea60f84d9b0d053dcf02d84f198abac34fb63c777fe *06f295c58c765b9d74b974848b2c295b2532bab2359671ec2e5bb60e7f2f0e222a5a044f5b8ff0 *446d0b5b9732f023ab5e332662ee9ed885981ef12940f1845b0c9a6d688f2eca3dc05bf6ba96bf *96408c035724a5e4b28587821e067fa07faf02e3bd4471fb03d091ef061ac08512868778d94728 *7e9331aca75bb9ea6a7211bb8138c22bde3cba82cdecefe110a0c71808872a3b173ff8688130d5 *4ae366f6a5b5e0df73da362e66c33ef805b611669fa4d8280946e738c9b4b34122fd8ddbd6e3f6 *4b712a746042b4e673326e7e63c10b454f8d44ad7d039b237bbea782b11c357248ecd9b13ebd56 *5dfa2b53448c7036056a22d68aafb3e6fa24efad7add56cdbd89c9c92ff200a95ae3394afa9815 *6a7ce869454c9ba9f7e2bb349bda2e85f3f8115293c92c1acc329aa72f9e1c20dc833ea0148979 *c6ecdfd1d608e292e013974599a2e3d0473f89b8eba86b1840781059ede5ca58303e4974eb3234 *c6085c82be961e3701d77da8d0056e546d4b85aa5de2fec148d4162a1252a04991269275f6dae4 *4d4c04f4be8a935d0769a25e5079c638601a123a650cb6225a250df5db5b7b59ccc6221d4245ec *d99455eceb4fe6206c7fef3caa1c3e4147339a2170b039ab489b89b6eaf9822abce7c9b1a91e52 *1dea0858d880c9e9f87ca6f4d96e9813c01d74013ecf8a34043555b2d0311296bd97091e074b06 *4a12353596585d2ff4353f34e1898aa5897e625662036f007bb2e5182720883c7cdee697b1fa48 *82b4673bd878661d341c3d4a1d7c46e4fd77e2dc98954225eb910b98768ba87fe5499bd2f80ef1 *2cba33c58728b821f35218a107ce1f5d556d0feb6c9a51e329b65fb0a187483ff520056a301577 *d9f453905d388a65f9e543ab9943fdd07e89d55ad6896d8c519a944d9a97c87a02ad88278c9061 *8fbba54a7a2d5dace2b5fcbc80cf60fd33a31f77b10f7b9477c9886a1ddd4529b5c9dc194e5435 *740bff278d325eec9e70501125d22b0804057901c6ff499e49418b1e6f8bb934d2121c6c21bd11 *81f1b4a45c2d71a0e7cf4907281db658b12665fe211aa2349201b585cc1d8aeb094769526fb146 *638525d05dc736a54f3489c03ad37137cfd8a5f57752de0be2560ce93df3d846b6934727920497 *9888c480430e2692962092d22827a63b82c71fc193e7d8e64285db12a14bc6ef2fce38abb40e01 *930c899530a4c5e05a8df93a54778dc6e0dbb0643de7fc5b46c7142064fa2a46b8b6441801a711 *97d5dd217855bc0ab5208eb0ebeefb848d2836319192ef8718aea592803a76a2687931eb186f54 *5ccee043b908a5b328603ac12d3b7caeb55e40a84daa3834d4fbbbd8b1d71789fc8f54d801d0cf *7691c88916ede783354e0e7d069c6d7ac8df98c64bb7afb92026fefd1613d4ef337e5cbc57c490 *62df340e6e1d2cde63ad21ad8912c0556367c376bb1dd8e3bd632cea18153e0c3f56a5417f5706 *f7e7bda9dda4d886423fb42f2d65e6f27390bd4d738eed0fc9ce65c19b0a98cd55a089e516a683 *bca66f61a9dcb10db5e5c2fe5a0c66afa1ddef235847cd333a4d044f982ddd118df84885cbd2a9 *993ecac7d1d6246e07179a8aeee436be6ec8a77c48b3e911c9f18816f25398d2de86e69d746cac *43f17c0cda218b411e6a6273110f4a78f0191ac189404d0f27b59589115cf259be0d2335a77c69 *e9b4b898ea866ef4f20b1def0b8d6e180b5e0c969fa9ac0d7c4ba9ced16785ab821973d1c478c3 *ea8ebd7db2e6c11b77448faf415eb7f3c5e072162a9b5d1e3363d0bad4e693b27cf32ebb5a417b *cd67d514b7faed6ce2ccdaef775f2eb4a35c0ea136bc6fe5f5c53de3577edc18c4e8145faaeca8 *36f81913383c31c4a8cf5afd448803298562b66c6199e59e23242dd0b5aa972a1f9026281b0cae *1aad9f59c2b65ec5b536eedfaa19434c47252a6d6a64d42f56e134611d9d71881412af2485433f *543ae57734eaa1acfb6346c67a94d164ba94d0ca23d80f3344acb4617cd41725d7a4611bb19f90 *0be3a44b3ea11b0dcc6823558b0062fb3c095721a2118ff522e56824b2898e603d7d8efc50803b *b27913631961299bcf19b8c17a21c1d6271e34b6efa8222d931aef67f7e8d2847f0ee087a7a58f *0918c672d44b66fca5369c12e3819fcc64aae8bebb6ee4e062b0bded67fafbab317fa4a00fa57d *6754d3d27219144e2b90b011d82ebf3d413dda4c7b020e0f9e4a39789d302946bffc21ef6729be *c04ef6e3cef234a63e1f8121edaac8e5f8d74d85601385a8c3f609d251aecdc8567a621831c1fa *7e9b1e73c575d9a597a5391aa6904d455ad7757ede90b10bd5b4e805dffcc32578b3be555d8ef9 *541dd070435651f64b9a1df26f9586bab3b81be150112d3e836ed7dc48b9f196a87ccfe87482ad *6b76858ff18926cd99ae20f0b3d778a0a39550d891b28fde75146e482131c77e204f5f0b7c4ded *482aaf7066de0e0661b3d31779172dce7163dc0b5e687deedd860f6081afbec411ad6acb3b8e8c *12371f8bfaaf5eaa2b693beaf3f55fa59cebb9363df876a483de23d03032dd37dcc674ab884a13 *f52ebf9b3f48f52c224ac5d2ec73dd3281b099589a9ec55e14dd53afac614fabf09652523f9a91 *cdaf204a8b05c0e0f014ba2495641c77f013d1ba1cbbbfddb39c7cb1ce33f3d6ed506315f38462 *1296111c6d351924268f7db7f1dbdf8af35a5f74d2aa472991bead9ee1354ad6377391176f3f95 *82b42cf2d0bb60c673f9e37b98b6ae736afcdcd7b329f689980b4d4530f2e0a48cfee8878d4705 *50a5d788c04fac96356e9f0ddfe06a9484f736363f5fb44b6e8b08cce32ac61197eb3cfe9ece92 *6dfcf3aba567ab7f428b2ba9f9dd073b0d6bb96913c6b55e634666fe4853bd89e76b1c2ef12088 *07f405a8276c2ad6c9c8a095c0714e3ebf0442c4869fb1b7e9e314e50236fb2660b550ede806e1 *9c43cf2c41573292c64123d619253f76f1f6ad48230510ea92a7a04f5887b68b15bcca587bdc98 *b69b673832b1fafe673e13e725027047f2aa2ddc5b3f185086b7f445fd03c551901767c7d63ddb *5450010cbf5d44310a212ae029bcca8ab05074efd9f0265af845691f92788b8d79d63238fd32ff *d2bb4cc44cedbef60b8fbafd458381a5e920235908cda4528130a5fa9085bb0e413e380e556871 *58b15a805b08c4e79c53f6a1d07ed3b2f5738f824fa40a3a79553cfb6ebee923ad81607d281d16 *e6fc590a1b83666ee632110aa680bdc7e654fe7996e39444ed5c357b2259852ae87bcbe62eff5a *960ceeeb0f1a94cda8e597a5146382984eca7ce9780847b9085c544534f3e739d13a3fbb811a45 *b21cb8927353ffe59f2f857283087fa5337ed28a844efd89aed57b5f3bf13fef6920b576c81a2a *bc40651344133547c0d7f364de04d92511aa1499c7084874796a625f4532d0028b64901d245db8 *d123f5cae9b260bdd53370d41021f9da8e242901d22b7d0e4944e138d06b97756b0f83f26d9a67 *9ddd37e1004319460ece4c197438eac9fa460c3e0d537c3a60dfe8fa24863b6b4316197324e7d2 *a89bcf33fb125815a9c6ebd27befc4df315419d6680b20cd524bf8c007e9381b090a60431417a4 *aeebbe9cc0e8a107120ec3e37009b0ea39bbbe3e8cb667521d04995b8fd2f3946d2c614be749b4 *01bf1d680d0f513f5851dec2dc6b65b61e57cf94a4e1657cbaef8b5569154a774186b586001589 *24e572b0ea0ad9e5faa5868c444519af30cd39d85ee0c9edfc8edb1fbd34ee38e97dccde89beb8 *46699ba2bc92d820e3d73d83356f3f7a969cdba7769c8cde786d644a5fefa99d3e4bc23fd205b4 *f3360e8580eeeeb1fde9af2c5d4e3b8a5016e29d1b28c230cf7eb2a9e79f9e7616e5de67475a55 *78c611a3a21ac69ec612dfd257a0a79f0bf95fa9c583842f08b76cf1c44c449072e73b8357b8bc *6058bad12415fba614c20a7ac39a8e251f7d98de6ce17ebb1bcf13c0b5f0a1debdd1365f9b0068 *89f13dbb809f09d424687e938e887cddde8b9b17fb817516dacf193df0c36992f3132b025f4022 *df47348de2c522ecaeb65012bf4dd07248c2c0dea80965e6c91226ea122c64772a75d959bcf5ac *41403dd277b4680f07f8dae021ba9ef89bddda22a6f4db39ceed394629d81e6c0ce197c494f037 *ec39efeab41b0d53b3e608bafcfde0217dd914691c1470f0a3600d95a31c666d9c4deec7628077 *a5d4fd497f4a3b661f64c56549da12c2a0fb28935d3a828cd9ac719220eae287f04daaef166442 *e00fdd3fd7743ec0c814571839c73c4c6d56b33b8d125b2f42adc637602652f2fc8307abe9a49e *b69d9fb0bcb2ea67e9bc6ad26522257faae46dce071814538b7e7f14ce530db2b6572d22c56fe4 *08448a86b7c1784752d09acb2a2de3b143306efa0b29bd431815abccd9a250f51ad6b3dfbf9c97 *39202ddf3dde95a25db4153dee1c2b0d298f98bbb635b36526befea06e95817fec1bd67a6607e8 *e6288b13fd993c28a9ddde674fe5f1eae3d2823d3fa77d50d4c723b0efd042d83ece5e8ea3d438 *f2be9a8a91c8cfdb875dd5696fc67bb719ac69aa7f0c75ce504ed109e0ff79ef807f16b324ca03 *9de147a26b30b50509d4553768c0c753510883bf9c55c472d15ed0a7237e90adacef41ed8b4664 *af27251d19e271a6f6799413929aac19b2057ec6075201cdd1cfc216551d0b4f2d75706ea9735d *ef70d40477bc054c9f0f3013b30b7f7857e125236325d6d2809008c8569433584cd4c9d44819a5 *cd695eed766c641c2ad6daa88504337574bbf339cee2b254aface2a48ac0718fa718c7e7e847af *51391bce7ed04b9771d903536db1644c055dce12a58a6364d38ca7a17aee172ef981fc704c84ba *6a8103a669d72a2d3b1728f8d1daf9f64c6af26e5c3a426dbc26cf875149fd6e3210898bb69984 *2861cb93320fe7667995c7bec3922a21b6b950d3ab80e9af3d983809e9fd72c2b715b906094bb1 *92989e34d083c4c6394b2993f355454519408edcc46db2f5aba5037723276803c79e0f951ca242 *4936e2c09e09e50d11c8072508e4240a2f45dfbd1a0d2355fc9a0e41a562239adf8e053b7b5047 *9400071b3a0bf1e68f1aa57d4a704ca5fed5de1bc327c2769f1cb74e6cec591e2943b6314ab7fe *94f9e221fab9ce9e7ffd9f026eae6d87b37dc6ad2aa1f9dcf477132e8746b58e504c9ccd86122b *77153db74452671f30e92e55d488f5a517a527e18aca89b757b20950e0d1b88e3714ed9c9cca1a *c304365f22e3c3c8cdb4f9be9e33166438ac3f508da4f47b4114cdd118d7ea950455d8072bf39d *153364c1f139f7f04a89c6d22d2704a61b81cb9f24127c10d674704d6134541ba757e3ef8bf440 *ccd6acfc56a38128bc192540f5635cba582ce53f40ce445382bfb4997e0b221036f707198633bf *ea8a5cc86a1a62e434f3a4753a18717b3a4a7a8d771c27ff120e4539d1d05074ac821d7bc8796a *2703245ec5cfe1b4f84d8091704a81793f50a5b75d10bdd96ac34f916fbabfd34be5d47cd0a51e *c964c0228de8d12c0f0ba795de2e60748cc22d617b8e596d8ffeee840ce6a3ef0304c2002d7674 *abf32eaceda6cfbdd2b199f62417b3cc84001fe44b9f8b040d44442849d1b659f0c0cc3a22c126 *7b93b947daf6f716877026ba464c359fe437d16a872b8b2e7ad4f03f9cb23ad4876e98e0930c47 *214f3bd6f2c90641d280ccc9f90d7e234f992defdcf7b3f32ec5e69d280c84be2e626dc4b1983e *57fb7c6d5fd54ddd514a267cd5ef97408e0f7540665326b7fdeaa684e7e0521bfb72056b45d25e *aa0e2f726fd2112358a8e84f241d99bd98cc745e5557dcf472af54f1214a8c4d90bdb729b47ded *fa2e8a60798d28b37ab4f3df17768542392dc373fe3b73dd5145afdfc52df1de953be71f955561 *44e70cdb567024fac9c9b256fc2cd030ab3c74877708d46e3f3ad24d9703b5df9a3a658015a878 *631c335ca2319b5891505d433bae69f6c5be1ed14b7da5c349a32988609e07d46bbe9c0c064896 *af2ec816d4a4097873ef60be8eb2bdfbad6674df9294bb061714f8c85a71c09c03fb6c0b9a429a *f67afb357136658e76581d465285a0202171bfc6cc78283459fb59cc71577582e3a57ad9047fd8 *ab0b1e063011b629fb18e21689128ae1afd2e840923fc5ed3089dd5a422966ce6058105e512f94 *37e43b95ac34dba2f3696306c74afac6540b09d2c5da6cc5f612d69656855d431e8b6f7c6df46f *510079423fae721afb5f9b06486dfef15f5dc83f51bc134a55f6b52d3a7e3d79a3027f27f790cf *a7287eb82717c961005f9cc57afed22f438c973834907777ed196c1a1537ce9feaff73c93d9329 *73f029710afe020b94358382c63037d93ec4b7cfb098c3ecc8da6a983e827c7470ae12df740c72 *e1b7c427c94322bae9e6f3c3ec049cd7762d051e32e0acad7aab2d151457e01ce71ad6bc47a677 *ceaf0feebab63de8bb92ea8c8f2b4efe2e4d76518a2632a36ba2ee7e25d849b1bb1f428792dbc7 *9b7b21d6092c31b40eb5562e6d4289820d526a4d72aaff07001b488ccd88ecc75cb73d2a0394ab *0eae6a612f3d1143a123692cede3846e762c6deb99ce80f560e23cf9d95accc5cc0c5caf2cd3b1 *e84be434117c626ed82084797eedc3e16074e802590bd21f2519c912e6f4c9b96dc0ab19c9af64 *fab0812e5eea17939c136a2b5045125a606b90e6f672ca94507e72313d60cf44f198d5f085d047 *03a1d03385e0c5fbfba8fcad275c563292881ca75c4be7391eba6a8a3e99846e80320cac6c5d67 *b081530547a746cdaf6f06c6ad76be1c095ace23aad078f98487fa2ea857e32659adee2fc44276 *38e0f5f20abbc39104d3515fc98e683cb2442959e6d0eaa73af10f01dac4d0deda6bdf0b2d6d5e *975fe5e485bd9a101ee899d5b8adf2478e9b72369921843e46f9dce1925a298c2b7f044085b2c7 *9c771c9dc5cda98c17c87461e6c3ab1ced19d66a0a333d69d4f0aaaf7a5164dbe2768b16b93ed2 *b1c01b96855495b1e3c48251f3d681ef4e23d39303030cec7701e097c5c0bf2792f0b2fdee1711 *3ebedd28c144dcc91942a038009bad736dfbcd04d5e355dbc614cdcc7a8a5f1a1fe46fad5b6537 *6d9f97e9fe391e8fddd04e5f3e79000cc2c3516d48ca85e314b3ddb3f0238b0a36b5dc766fe203 *8d2e4c1a03c0432f19ad90a29b3272cf697089b87f4c6e6c302b5f246cf0ae9cab136d3ec7f164 *4b8a93a890420b062a6b78e06492f0ea0b115e228703e2b09630c96e820d4a9ae7bca2cb8dd5a2 *c4a73b6271b9e443c6bcf03bc5dc077e968f2884a529aa6993542cccebbb4a27a9d50870bab700 *104387e1e9f7d9acc705fadee47331d8b903cc6c41cd8340c84dab99dc852482563000fc5ad2d1 *fa952cc43fed126b6a7dfe29908d217f69ec90e7a81a36a34b1403092308d8244e6a4ebde67618 *78fa6671337127edf2863d19456d6551139189957aa9968f674d8d731c55e8ded7f3f9b184465f *f701156480b493ea5b1c32cdc81e321585c4b35103b7c7d9c36fe492eef55b83e95ea8a3b5e03d *81219b44f50f43a27be639ac94d4d95dcde5224b16ffc08b2900d7d627c77e5d846212edd65c3c *9b4bca7f603f88d3d1dd3e60f68648601be853df1e93ac0e63453afe4c860f854eaeb70419a63b *3d1b24f5bd55a78b06de19b79cb65e1572d2b5fa18f8aa95360259f98c3896e5a6931fdc4fd320 *8895cb2a4fb8800914e33908b9b60aa732552646b0b0b4de8034d7eff37262c75936fb438a3790 *671e75752b2209a9b5bf2f9613a64f66c7051976ad2b86ec723ec483a2dce07da3eb352093713d *82b57ca5975778a5c95838f54f62ba0ce2ed7ace587c63e9aedf8ba43f0dcb63c751c81e7c65fc *86d40a16422693d3f6b77c50c57a6dee18a6c169532f4e6bca11bca76be063c1194ec3733dbe8a *2a5f98c19efc4460635342b5dbc5220efb1e392cac2d42f9e6b9a64660bece3ef78db5669ba513 *b3c08d90a28171bee99065da589e49581190d30ddf7422b714a6585e91456a4798d31831339585 *f5509d8c91931bbbc66aa06fb4d9f81c0a2ac03df34757b16e89839881a40676ab9b69278e4bb1 *4d99cc967b6b92f3f9d646dee4feeae8d629698ef65c6b902a4f733f6c9f29e51833d04ba789da *407cb31f7d24cd4a14858ebc6f7d96d788f61107a8418e7fa24926cc5b850dd81513dff4b7c114 *6f8d967ec8234fd85bf61d34ef01fbc429f2108a1153714611f6ad704396dca989c4e22c1e3109 *13fa1b7886b8f7f38fd4aaf9ebd29f032d55eb6888cbb866e7a3dde936561e08555631f4c2678e *a6e4c47066be57eda9f5e853bb263f77d1e1c95d1e9404a54f8a503fbc741ea430bba23bf09b5f *2809363e1bfda9297ced8128e5218c67861ef925124c28bcb23e497ef46e30708c64ee7fa80291 *40df0456a68ad5a069ffc227742f6b2c8b549e87950946466519a829c533dda807412f8f28fffa *8101f748785df1b67cca3b8dd4da16f2186bfe40484f7f9d09c3e061e0cbbd5c94250c79827f7a *7e9d61d4f7458083da2143ab3dd5c1da2c70ba0457c7dc7aded89f86155b27244f6622ab51e355 *2601785441368dec93922d73af090a42f07f983428b0737bea087d398f8e8e8f0bcc6c7599c1af *88fc66b8a37460851c1d7a90eb5430aa039538400e4d6cc1f7f37aff581784e5a3c3a195701b18 *8c94f83266bc4594dc80f30ad0f788e456a88c07f708f8a4f4ed58175aab651811de064d46646f *09f714c9ae618cb117feb2a900498113a903e1c464ee6bead40056a2eeceebb8492f79d3e28063 *d01e3c283ce5ccb201997131a4739365506cfac155491642c22f4a62b70ac6e0b151c820ced36c *442751213c3bf9dcea974863b162dd105e8c05abfc8d6bce624ae4017e0cd376113dd70790ce06 *f314e459274f4e275db052bf62383c254413d76a33097c82dae57a2b37bfbde7f226c5ec5e3077 *5370b97b7050f844079a86c1482e36c4dd5f91b3d66d2ed3395b508ec9b0f26e04d375d81f9ccf *ef65a0dd22105664a4b2f98d8c1ca8b6b24c9a8e224e105aa0a994e36b087cb83a9583451596d4 *95b9f3c32854bd622a4732820de5e5d10c24027da49b5c1ac921f711645fb1f0fd49a8e2258560 *702682a8c1e1986df5b02a4f42d74e01979e20db0ac211ddf660b527705ae971089f14663b353f *eed16eb531875757e9974f018273f6b3d4be113841b45b5647441285c4e6849ee7ddc1e00eb52e *4166dde0b2971150374a055fc5d3be416ea9e67e8f8af1ae0bbfae57125dc7094485b20d5714e8 *d438a07b69058c9e5999deffc032c880f7094fc78c5b39c2e389d446600d79b476aeb4981d2990 *b77e9139336906080e3a60a5d9ec7dd2b5066790700bc26237e414edb30dbc828737e218a5d26d *2da88dd00322ed18eeb76e171c425c6e84f140e2e229f3655df88c224f330582075881408f3b69 *fae09f0ce929e145f20b81ddc04a6ca846780d3bb31e6b45cc099034eae62ecbfe1340f976657a *912a6bdc284d4b61260d8d12f8fcb1e79a068ab7db71ac168b2c3cf53af1ab171ebfb80d63b302 *896f5001916b502f980a70bfa00958f39b836b5422fbb0d3da5ac6f74082d4a70dc4b3056ca2c0 *482d6aec690336b03fe4db9fbef9619e6f64c20002161dceaa79f39d7d224ff02be43dd67c1574 *e640719a8aef3e73b299e184ad0e5ffb514f16f3cb44eb62ba8a4e9302573c8110c3084382748b *c4a2de0fb3ebd058b65faaa1ac695f656b7284a341a7fe7644e5f8704c596256663a7c7ba1cc77 *317da1a8bb33cd05ebfa256ae5f8056abe33deb993ce4c39e28c27cc1f592e25b0942812f16356 *8ae9a56afb3a23063ff55fba0accc0f84516eb99669b98e3635eb7cd7de9db38ca8980daa50fa9 *039a5b1e2f1ea0c1a7aa5abe17d143ac5f63d6766206115058ff484c72f1d8025ae07617abb6cb *60fc880fe486cd4531764389d06f1915802dd2c705d6bb7056400d06304b83434fd8fe9c8cc952 *2a76cea14aac7294fca2356bbe654119d89710903982ff4dc4356e810bf472fed1d2c636931ba1 *adcc7dee66cc3c7c9a7b83f55ae8185149e2d1aba806a5a811e8fb84930dc19acc318167932f40 *1c7381ce146addb26d9b270aba7fdebacb0afc03311eb80d62a4a06882381e051686c9a978ec2e *b7033f96e0b1e718f38ecb9deae0f7d2d3ebe9c93e9191c65cb3a33df4c4d5b7a43592857a57a2 *a0fb2d0d501b12af3ee8245dc44f066fd0925a6c980101442c93da71963a006f8e78646a5743c2 *91b0006b473f9ef363fbc2a0d85de24dc6e4cf6d6cbd1419632ee67c8e9153f980afae2f1d36ad *93c8ea83b0913d0be9e908a0ad0fb700c39824eeea06c3ba62d43b844f4bd9518014e94b4961f5 *d4b0167d4c9d441421b690e6f14091456e507c185ff3d5dceb00d6f006056f25ea8c930333e5ea *826f0bfefe59bf27eff012201610678198cae5c7a63a2e8ec94b19ddbe99b983f5354193402c98 *71da50ffa4cc88708e8ae6d5e0887e826bb2bfdc4c365819678c431bc2c63342a01ffb4bd8a5fc *cd4556f35c09618d78bb4cb811f8c16bf0978037863fd8f0389fe3390b71e97e10ee5b09506e47 *3106bae3784d38a4a65c5c45dd653c01d018aee26e81ef0e2da0be112eb5639f7e0f8758130d15 *6ff8db89947a745fa486c12c48ea40713688d733a560f0c103974a84e0b4a774853c888e36d621 *a70d69926d0c78cd9694963946061cf894068fe01e03d9eb622a5e54a07e19ff7a2544b7cde8cc *d1a2e682c807f7d0ded32b335f047c3f8a1bd7e61c46ab41d854ffcbcb9606e8aeca75c649d13e *8280eeb79d146909e40a943baaa023685c9fbf8ef40264277a65ddcb88bd584e564a4ffde4d62d *584e28b99d162a4fae17f3b8287f111329dde8d1bbc9b2ee823f14e64992651d261cd210e6b95a *3b37a788af004cecfc0ef9bd6ac2dcc49804ebc72cd743e58fa75b4a29f47e4ad86abb08375450 *0a149785229b25cca3615e096c97df4547c583b4d36208be1c7f1ebc6efb5aeeda092532ba372d *180b314fa86d3476b08dc6dd852a0690a5621f55320c12265ea1ee5afdc026b39f1fad7ea54056 *77698daa8c574a7f7219a9371db24e33b50ce601c09411e29d8dd877c3b083d3b3916043d0699f *b495cae48edf13f286b2c74a5b430615097021b529cb761a56ab8db86942b34c331f9f81f5cab4 *3b7e786ff920de0c0dd2f06c2c3693b1a155faa95e4f572fa3060173a13e550e67bcc0ed9b28c9 *e65a8cc6a065b2aa37ef0e18ab34d93b3cde83df0dac79cd90ab546d91f465ce3f4561128cf6eb *8bbbef9bdb4943c2e3649b4f450ed34f9c8e7246f38b74e3624c92af612c122ecbbc6c275c8029 *70392d6b6f10d1ac272641843da9cbc42c1fffaad177794d2a0f0785c24408726ddb0e3ae8b9ea *a92f872a9cb696938cf2df5fe09757aeb60acd942ea5e1b3c8fa835d05ab1b8f5ca78a32d44d81 *7a34504438668ec6a1ebc83e65afde2d6bc28d336b3bccf88e5000d50ed7fb0be5f98bd3f88d07 *f9ac6c43450c940703991d04835701015d31a6859cdeff63f7dd8ec89c0ba18812dc9a7299ea7e *6169bf7d79f6e1850c8df1b5acedee264fe6988bfbbc9c296afc2b9191fcc164ae8c5addb317ea *96676a93c9ae98d31f2adef68a4b9088c9fcdb1e043df10117ff96aad015e0ba30a97b3f185e1f *933eccc141fb1336e9aa47743fa805185fb41538f0499befdc624382ae4bb2ef45b9554d35a36d *e447d16f041e475165a2baf70a99ec11683e22c573c347ce50bfcb20b4e00d985de918c6835bbb *097d58b90f32156504efa5f04a99d7f95f5c4f2e620e93744eecb3f8d8369bb5711cdf35352551 *4866f7f3a39f256602301152aefa56eb0237def2b6ab3c28516ac4869c4ca1bb357b24649887a9 *a67acbc6c7d02973496b7a79b02ee510a94ca6d31db0b45dfb8d67b58636bd48d7ee6cdf379501 *04e2e503d70c1647862ba072620cc819f4d32e30e503b38eec200cfe105e83da59dc70f5fee70d *6ae7b01e6aab026d68ceabc4b99c9ef56f3ba317b396c9e6a3c8ceecd2962e952485a8e190519d *4046362e50df2974e23c3afe81c0194a1a5ff11e8887bad6729bf6cf21cd646b986ca9ef2037f6 *9e86d3347829cb38bf7951d8d2c9e463168d2ea30d0d779d25bdb82588f38c48766eabc8abd15d *179e2229012f623aa6bed275fef35cceac28b98de4bfbe965dbbdbaee735ae1aa21d7754119e5a *5751e18503cc77fbeedcda3a531f7bc6aa566975c5fe74304d5bfc48db85697cf667db5f9ea10f *7609e72953cff888a262610f4edc544113d65b4a039da56628556d6c0a601cfb822e8c8908f511 *81d67190901cc53d6284d044f9847b698e293f2ae83de68ddec8f69a99da362de3b6c9b1f46795 *545743381c0ef8931931a19a6c77a7ba6d10acd770e58239fb9be343e9807a129636ebf5d0d45e *efd6c0731df6c95df5dccd84db5d6832811fbb78de57103327cd3f7a4a6abf61a575b42918582f *c8f3cd474c51e0c2e4c7932def772482f0f9315512153f62a3220867e358fa7e1a9614d2e8fd1b *b093a20490656b441d895cbee018f741b16abe2bf454aeb95abfe7ddc6b15d45ab264386d96ed2 *8623d312e9d48707b8f9a701f47aee4eb634e0f369af3513575f6efb8f2c0aba6c4cbbe6915398 *46427060fb3c98a5b427eed8a3fcf8314321eb2c1d318462aeb2e51dfbf50c36498165207995e3 *83227b54a7b4e4ebd5ece55aeb53c213a30f90949bdcb3154accc662287a4ccdd9deda4a948a72 *f0fd949ce75c4ace559b36f2cf1d047ddcc8651d73fe22627f946c2af08c91dfd25a41523ceeaf *96af4b9bb4dcd9a66beb303b594e9e380373478c3f3092cb58459b9f382ad7abccf48dcdc44d65 *175ca47574ab05e6cc80c771553b943003b8dc21a81b2728f6e64736fa89cb72ad5da09d8cf01d *db06cdbfc9c78e0bd8623e534d2b6cebfd50aac71efc74a8c46433dc85dd0f3e7a50e8c3ad4afb *0c5f44a8deda07ff4487dd43ac1bc52211eb95006f894acfa49fc607fb58c759535ff2a90a90b1 *2c759c46faedd449b4e2168a1fe45a2869789246bb60bb0101daee0a449f881852e152204ed33b *6e760fc2924ae45a86749c4291f7f077c08ea5963f318bc64a2d5400b6a9d071240a43ea95c680 *4f186bc498021fbef05f501c5e68ee3253942566ce782763f58972744b3e01587db34159d29dd4 *443edb931aaf238dd9590bd5d248c8a22fe3a0dce190d4167a8437c6edc882bdf28e26ac92e24a *56afd342b9f55cf6fa04909e6862b1bee78c73598536c4c9b98ea9a04670fc687c917118349bdd *e4a84eca4e5d2e3c76a6d0dad377c6d951289c1913716718bb6a525cca97aaf4f643c04d201c7a *9c47fd01474828e3d29560c204208e798e90a471d43d9fe85cba1097b96bc917663e54b1644ce2 *02afba241305694aa8b8053b1efdfa93d0f37811e36a3a1bb94186af2dd3f7ecb645faeb987e15 *162531795999cc2cf1bc29c9e31e69b3b7bf5763bf82f1a295bcc8eab4a2f63e34a18817689a4a *8b9c1c176c910fa0cda17bdb362615e1fb29bc993afa69c25c15ee50b426aa95434df7cd32eb74 *2d5cb394a0ad3df50c8cee4aed4d3b3e88be4610053487ce79af53d6b3e298793f6d8ab00aa741 *3f3a453f4839ac44ef77e18858bd78234f3cef1b1df3bb1c93a08c44ad0f48685c14487c46d51f *56356c3b3cf821406111745ce3bd281291b629c0f964906498c9401fbcb45a803dee20248229c5 *dd1c3d0b94b0c1a19d7cffbe92be64b41f863890eaff910f33ddff25a656694e9c7c9a2da33467 *5cfdda21d0f1ce91d8fe1bd693bf22ee68cb3dc2fb21bc7459d603e9bd44de22bb410aa53cbcaf *288d50d5e287462685c77d8f8da19d04ebc3be8927d0a4bf956a3bfb1870ebefb4efb91da97545 *8cf9903b46b75cd735ec40384d58d6b15c8258e011e07b0f5d6ab638d8f8a0f5c44384446b4376 *ce4bddcfc4f0594c3629fbb29945918485195ddcb208db1199d3b703908abe1e5d33bd8461d078 *d488110331d77367f7e78f3781dac58dc684dc26b5c72235ea28d262dada0544df7892311f8963 *de9f5b5f2855e516c15aee65b41f033a574a5790a65468fd10e32e4b25ac882b326c64a054ab5c *47bd281a18718baa00689754b068a04e4630143d434c2738a968fcdd979ecdf65bbf649ac9e798 *05719b93dc4b42222d490f0634d9cdc7b4f1555941b2f2738624808fdaccf2339b4656a4710e9e *2f8bb4491cf2b06976f9ecbbfe705c04a4499ba814a1181ec8a690264a2c0d9d515116ada44664 *99a86816fbc693b0208fca1dc5e794c59f8063c5cd3007590697e4806bf4f990a4fd95caf78a4e *241826faa0a6ec394bb08dcaf817b3ea03d6b465e935de14b0e8e68e27f14eadb16618f41d1394 *e199aabe0087a089585ef834c4776b4ebbb1090a871cd47ef99c648fc7eb792f2efbe472500ec7 *bdb8ce59f85739d8853348b6a7e04e914059db74b3a2b9e8db38ed61afcbd1efec53f0a5e3fab2 *5924137dda8933bbf7dd2916532a2ae86bcf2f2ad10cee49c3a8945ab4441e221a82b6ed140d15 *d70c232b2472dd21f0d9f8cfc0dfb053f7c8c0024a713678c2d5e158f6e40a8d6f43e3478bd945 *191128d4a4522215a644b67340fc2346fb6dab528cc35beb65b8106b2c9105729fc5c08a395bba *77c321ecc1d01b31e7f9e51f41af8710993164cf0618395d78d787d7a45da341b5fcbe2b7fea7b *41e9ef5d61ba73e01dc822ea038f9b8e06b6d485e452c3bff23f865e4db0c8e4da62fcb490da8e *5ec5502c11cb2f4ee955ab914a326214d5b693b28fe1233d72656703a95a427bb32451ff081c59 *df1bb08f66b5c42572dc0115fc14b9b607de03afd6100a0f00c2f7d8b227ff7e8fd7e86bb5fd79 *67d1b118784beb7f9fde04b3fdc631c877ed1c6dbecc6349ac44e2ad008fb1c99737fa8b8b9e35 *facd1d5cef0cc3b84aedbcef7964f608a0b9cdc21efbb1d695f5bb6f0b65ef72985571c70f9cf6 *16711b26540ed421070947cbd1c114e21415bdc9abc2b2f3b0eed1e48198d800213e1415720c20 *e5ce084c0f29722cc919df2cc43ab458940b156f0f11eadde5cab054bed6c398cd36f99c0d2d15 *d3c1fdd3589468d6555a3144ceffa7423d59c03a7c23574247734598102f52b9adb930eb887f7f *416e1cdcfa1578c2f7d4e64f21e6d0221bb034f8f71d4d6958277d8581193c588101598c805524 *167499dd574c2d105b19c9b58744a00933850abcc0101f188cea2e9a0a777b91db7a56309f2c0f *446e2598385710c655c80394fa4387dfa0fa283fb27effce83308b8890ed2b7a7655cfa052f7fe *530907e3c581716c2f26851dd7f76ba8f22e0f6707e843b8eb67d6af485c57dde8611d7f2d5a2e *d43eceab0bc320bb2f5e530250e033796900c281315056a1afbca06e88f8e533acf9d68a997077 *d3e614f48ab481bdf7cbfdc02bed94e448648d5ab77c5d8be0d15883ba2f6346cfa91fd7548d64 *1de237957a571a524d4353944e733d6136413ac6d70810cf10f120aced4705f398c03d2f0a9a0f *4c91a436e363442010ee54cdf28d4175babea401f4039a3aec82bd6c018c95de1c05cbf049e160 *d7fc9b1ac68f493e5ddde1a954ee16749308f3e6aa08d5e1e8502b0c163dadbbbaecd2a9d6e3c4 *cecf059fd188a7543b32999a7b9b9062bd86c72c94daeefa0d3ea0ef829039f3b2f8d2e2286aef *2b1fabd088797d83c32d75f354d1dcad7a771ca349030254a2ceb6dd1baf6f6c43509cc0021405 *b51ff14cb309c5835b2e659830504f51ab5ff44cc53befac877d26df58c46a155dbd82af2dbbeb *2f3eaabc8553407b512185a7cdb0b62d14db8498f9d7faa2a864a4c3d94a9a8220a7d125d65725 *80f82c201826145cb9af01fcb4f7f505b73616becf52c792043acaf10f389116f37edf3b311132 *d2c38278ac9eb97aeaa51c608cdd1ec4977ecfd6cd38548a3f366c839ff5e5a366b9b06ceff72e *f06659bc5b1f8fd31baff950dc610a54c3533d7285c1f66f6da6a949191932beb4c26e5d3e9c18 *d2cdb4b269f417c14452fd70501af8cd5a1d072d617cd934d1782827ac9dc5899f7fca02343856 *3bbcfc7a280b014acbe099d89ff1c58b072b815769a31f3672f10581d0db74fbd8c7c74a6dadca *b80bb6131ac117483117e9e0dee5e9369f11c19a4725a989cc9b4339cc3d42591138dd2fec2f97 *a8e43201bb9f379a30931238efd6f822a7af496b7b7211e136742bfb2c5df0b8b7fff1a73001fe *17c48c7797e51037ca681b2f87fdd66647cc248fa45a5e1fa4edd02b7e9e934cf76ad72d9cb280 *aec04946ba5a96def797e675f44401a230399672b829fc27a9fe68fc6f06428d44dc8e1b10094d *a8ec769fc5bafe4317477a5274c0a6b82d774fe769ee2fd8cf1fe6fbb55649b18347b17cfe47c2 *f1fb27cc2489adafb3e02a028cb78b1571f807db4444f93fe8b6ced170a6b4e22fc8b3e87edc07 *5b1da547d5ed6fd6b1de41f032d1e338eaecc710fab8afe1e0e3eb4901141a3a3943bbfd08a229 *bbb513cb81939be5f67d0871d9e67f2ba1deaa5ee45a8fb280df18bd8371b6fd70457c0d7c943c *5d4dd0bef9fd9b27f605c74d8433f75aed7577dfcc8614b291df1ef0540974899c95cc80144da9 *d12a541bf3597818d4b36d7895dca4d8889360c03c8fdd777a1f16723fb2ff012fab59ae7fb677 *3dc139966ed8b0df08005610c877c46b4ebf8c51211b23b43d91f49addfd786af382b0013c3d1c *279ea1c529437bce22d311a9d363bd96f8c7ec85ff32b3693d65d03e9916e943126ab261eacf13 *784470b95bb561f467a0ce7f29f8a959c1a9625693fef8f2871dbfcaccc22af26864286325897d *ea33cc16a8365ecf4793a5b6cf0bb94da6a27f6761874e754d4bb9c6179887c742d9f14b6ed658 *7da90424f2728bd19ed8d4331c6fccc9b3525f35aea1e7caff0e72da830090dc9abdf247b08436 *e87b4c6979ba72759340e97b47d0df614cd2253581c0f2f800378b19093c01e6f008d6ea188573 *fd97545a41d801552ea309646191113b9bf0adec49db13b2127c89a57db7f3c30c31a33dbb4e15 *7fcffb9ea12616ae8467be5d5bf33c957fda2426d0453deff14311f3f421ceb660e48124ff98c6 *85f62b4953ee117d59a780e6f513c09a55b4da1a54b9ec4d8a824d065fcfff0a47bcec7004fee9 *daa1f25bec9692bdff70f1772c83873378862d03463ecf0ee3ca112403f85739a5f8d165672738 *eb5a01c81d254933cbca1964e478964c293b1fe54435c6f6a81c029ace063cae57985233cc30ef *c0964695c9b696a83745fd5670ffe4a38c95ed65aeae090b4f0d3055bab527a22a7f9300189e0c *78bff000d6dd3be7bed64f67246378e061f2cda7f6b745c68328a111df853702e3142ac296f6c9 *315d5c88bab45990f2f7970cd116baa2cb6369b9abea6caae639247b6b9e1746ea553872adcf43 *d34a29d6462c3223c2342d53f49216861f25c97a4877d176dd1a2d0a0f1188c92177e3781d462e *6ef7c924d191a4393cd5760c93b29b15c95caa8cc64fbb9af12df3bbe240511e60d9517999f147 *c12b45f6ed0703792bd0c5ae1cbb5fa351f7bd88923a1c3d22cdaf2b3760d853878c6191d14d5a *c4f4e704d3f5db414bba6291eceab712b922f2cc13b0f8b3ee77c81394888a3d2440a35656f6e5 *0ef0f636a858820db5625e6f02eda23eecfd59506205a3407eb14e35f7cb0c3168818ad8b06f8d *7447df37728d839ec854a3e4a797021f81c37bb0144e0dba6588bc8217af660fe472fdfefefb55 *fc84be7bd3984470d0303cd4c1c5944d921666e1dc2d7975c58698bc7034869604a50c4c0860f4 *8686029f9472f3646da488d02acb211bbf0fec9466dd3cbfbf3571440d51f9c73dc176b3e4ad95 *e07279250e9ea462d214a93217f3d094acb18f2f31191d390b3c61f258f32aa6b06ab52a3836c4 *371986abcbacf603e6819dfbcde9ca471fa21b45b29fcb35f93adc0e455667bfa0e0055885e8e0 *46ba38c3c2bc1c1ba251024f9532960ccf1711e6dd5ff1a4f4726aeff6b5c5e947a39c8e494a0c *fa928cd1c1f2b418555904bb12b4c20ec706e13030f58548c81bdadfde30f65a952e52480e999f *792988f473e292ad02329ad0b0f5660b838a9e5a219215c0be3fe2b509034396a5fde1e562e87d *a08810f6448047ee7b4c34a9b97d8a5b97068afa732dfde01c2bb9876ddf7f811cc1795e1d7455 *52716a4ab90b28a89ec9e86b93d6458f6a84c54f4138fb7f2478b0bb6961a59e8bddf7743c142b *fe2a8c8d5bfcc5e0e59b86fca7cfa92536a2e8b44e14cdb13b4f7f0046c4f8421d5622c131ebf4 *98eb2ea833d5c8a4f1c1d84737c3bdf8b3dd1d3e8826655d38e4e237b02ecef0f2c3e430a8317d *d2f4a667bdc45abd2192dd7729fa06fd18f9243b208bdf13759590385d40d92c9ce7e7f34bbefb *967daca3c1bec9cf01d525f34f56ff66e0b344b5bbbf6f780aa16ce8a5c839aa99538d81162002 *3fa7cdc6bee62b3505471474b35e2ee03781f9bcecab3901cc7e4424c4f6267047d5143c1ce569 *22d580007402f19e1d57bc6d944969e3aca469545dda06c1764068272bff7df6d7dca9e29b24d7 *a06940c910e34420039941b5c43da1e4c22637dc09637487aaaabf6b188b07ac6c8f5a56d94b5f *e25403baf570f9b98a5a3b67f9db961492254e54a6b256b374d28a70239eaf4be9d34372f95213 *c8587d1a99ef059a311c2a830eac29b7b4378c29d4a82021532e16f734f96e4303acd7b3a5156b *66910c6106d43046ca85b33bb8d056c2b5a52d84f83d893c2d484e186ae7255a25af307d393903 *b578282f97885107d683ef54b56c81adb0a3d67ef7f3f62b86b54d4d9b272825a6d0840c2b767b *a292f308c15b71f8a6d6780c1bda3c438b81e5c8e60b548c08da50a542c16fc1b6773b3a0d8b3b *72d2853a239936899b02b7f4de5ff0f9b248b0ee4c2a005709fa3e1d3a28ff3cf25f755115be9b *b874be4f04c421c49e9f8907dc86760438db31f73123be03e0794c0799c907335a5b9902b31699 *2cc92b521993d08f319fe34009f11e97910fc3fd14d6807748368f6a6fe512725feca919bfe458 *c4c486cee27efac1e2145318bed2ad6ede9541622bf41d67fca9f5d0ad9290da661710fe2f72d8 *687af8afa2e70b73c1eca386a0688967749e25fd867efb2caa411fc829562094a0c00832565e05 *94d472b8092822090d170c64eccf0a8e99b65542e92f5d3558fb8539c1690d2f3b247bde69f2fd *6c94c3417332750d4d0d50d9fc5c21291fd800710cd15bf01fb887aa2ff248bc22842e46351175 *fd735b8a300185cb341b85251fab7e933da54cfa386857e3e6863b8b605c06a9a699526f15e9f0 *3870085f5ae6dd1044080dd75a71838e000e282a4f742c456fa347914a940e175c968275c7eb68 *e93bc8467f3a3ad2345cdbb16b597af66e87b34a29c8fca03250872a1f890c3d7f4b23591b3441 *604bbcb3d305d6891776daa7cbb6b3f4a77e91941a8b681b0e8c95bdbd65a28b24ae405c02b5cc *ce526c9a71ea68757777aa832727199886e9feab33c4965fd43a9f418f83d2c62b704e9bd4823c *12604c41d33603ba9b13ee0b7b2e41aebb06175af35e36c772c87851a495b03e71bdbfb68e6020 *4ebd7d4e9e35d7e96cfb951b60d1fb442223ea48d3f383b90e77f90cdfa1a01111e3b21cccbd47 *da167d01f60eac0b0280a24208bf2b26f79b950ac5aaba466003d04e58addbefb492245484e9f9 *00f60030541a143c05d733db31e304178ac50b7b8ef586646fcdd881977dd237655c61398eae01 *a7fb6dd7132b29607d7c053c8557e2b9df38a2c3c76b90d422cb8db1a7450adbb3d6c5cd78d99f *281b9daeeb0af4cc6da816227cc5b1e47ae87fc004b9e6e71400ab1a43652acb2cd5bca2a6b22a *13b99e7aa8c318f7a4c64743e0aab1fb3571bbc3bb63e27b63fd22f2bf55b3f0fc42978cfcd247 *d237187c5ff6d4662a292bbf55a27d09145c57d9aa594e696c7d75b19f728d618de28c8c8e71d4 *79edd03676973b6ec98b640890d78671a914de2729a3c1dc4a762c1aac10e1f6e4ffa4b5d4166c *14febac7321a5b759d7641dd11c176f6daf330567e39955891ca037ebcb1220b2903b17b0c0ac6 *f27c362360753659a034ec4c64ed8cf4732e501086dcb1a098f0e9ab890d9e90fda9319ca31677 *3b16a709d8ea29acd44848675d19368455ee310b262c66f5835b251ff591cdbfaf92f2470230f6 *25413e06bba8cf169e59d471822d0411b3477dcda58bb1c4990cdad70a4d900ab7ef4b90caca4c *2bdbdc5f42d114c89930190cf417851bcaac48d6cbcb2087fbd33a7fcec253232eb8fd3ee28e18 *c444b8d5084b100587704e0609fc036fa3a97682496d9af3d6a5721826682ebed2f70b56ae7fe8 *07d4c875d877c105340b51a164d998f002b1af0e700bf723cb150e01f5ff68bfacd6a200180548 *4877777797ab2c9d4b2ddd1d4b774883480a4837082cdd214b239d52d2dddd0dd2f0ff37e709ce *ddf9ce3cc05ccf849cb69fb5b6617de2d65e247255a31e5b77fb41da7f7ba266f093e8d8073e78 *0b95fb1e48d6c1d54239dbd6db373a14d6b14a66f3f52e74a354db3223b891feb59c2f3a080cc7 *5242dc9b0dfd7bf4d16a6739da0be3144564b254a994975dd92961892d2b6e7cfb6a32dbe0042a *bdc4ab4fe24331852bf0d293296a6656b3fbc154d3cf14624fa22b39d1341a82d7386b928bcfd7 *7c6a68f747a264b593ec4505f5593a1b1e077f7ce779137a82451064b9b6711c714956e3ae9506 *8d62a1f7690c9d4e09627fe72e2ed981124c8c74fb664a7c0e30a99b37b5b333a749db2e9f9283 *8e784214b4e2f7caca6074def7b6d1630f35032439ac989ab644d0310ec3dce5b8c1569b8ad526 *abbf6fa82a889ae365d39eaeaa78b9ab96530fb4404a5cb3be785a970874c3931f695bc72fd672 *1526badc5677babe18810abf55a934ea73b602cf291f6e3ed1841afcd9c315083ebb3d7e508840 *f708cb06937e4149fd7a7495a013546cb41e7e17a7c122c1c8c412aeb567b832e360be4aac6f23 *6f2a4c8549c7969be43c6398ce3973428d3cd10859db3dd31ba2836e13c9e240b3096a9909a735 *36b96abeb8bc458e6b8922bfbedbc7029b37e21ce3d252764c9eef8e0d0dca6ddfd46cbb2d98e8 *00169ec5afa5896f2b438c2f6de2b526518607b201ab9e38a5886f3dd3466c67188afa0a9d4b85 *523bac186174b0bbaf01faeac6741598c8c84f184d6c64d25cae1301ef9b4f64be6575ae4519ad *b83c76620ecac0eeb4e03b137a4fa1c53ff2b7f45a45b7039543dd76529e08d59a00a65b5dc921 *cc3a6b8b7fa76251668ffe428acafba6737d96fdfbd38d852afb5416a908aab2e00d55752149af *820ddb139ff11da44d757085b9d4753c92511acbdcd6cfd0d3238a151cfc5736f2c1374f56cb96 *f78fdc4d38eaba16e165ded1e886d50d829f55f2e06f1dad7433a89753dca8db6bb135e626a8dd *ac6b47e76332f9c915f3d6c93fd006c456904c20ca4b37a82735a26210edcb9651f9bd7b04028e *0f6761dae2a23c73419c66e2009ad8aa5284da7f16b1399e96f18661070f825aafe7f71edb1e01 *89f5d886c5e510069aae986fb3c8c1bb196dc26fe74531006a8d2412839d3c87f0223169703691 *72f9b3e4aba38288c107b12b97150a59801081df218c397d92f5e2d455bf6e7a735cfccaaaedc6 *91690725d98b85bc7270d907ee28e8034a70faa84960010d98fe2aafbb0ac8cee3cd8e1998ad7a *da86135b6c9f103ba4805dac5d562c82393061e954c7c4b98bec876a22242a7be7eab71fd67b34 *32c7090ad278d9fa3e956578836d41790668cfa7fdd14c882075b5055522d97084135c9359b694 *98d67ed56bc36abb1abcf734f12a5b4b5b7d425709a680b123a6c1deb91ec94cfc1cded5b269ed *1e39e0b2b7c704bfbd3600406fd62b6174f9cf282e42794c7adf9aa5db9d8da134892ddd6a0f22 *9dc2799df63d26f25aa94bebe116ff341110fceacf4e0612dc2bfb37237bab57178b8154c58d20 *363bcaa55158ae3a487fb6ff892af69f184d80b9471eeb8cd35b088ba956db80986a90e01dabb7 *4f20c752457eb9fdc6ea9356b0c96cdc50c3513f96bcde5a2aafe3f2923b2e5ec8cc73e3ba19c9 *4de13880d279bea5900379c1358f7c15ae44d718f4eea346d9e5e039d0456937dbc676f6b5a85e *486693f6e96e9e4c4a6db565e45290136b01ce1ba14c54be2d543ad2347bbaa8900fbcf374d169 *cc0edfc83821392eac25c54023e04e77667bdcb04ee3da1d91e9d08e471211e2394c55796bc6bd *9ef357b5f685d4a99ef78ecf4dd0e6c97616e8a237788a467fbd2f565a0177d7c0f46eab7f2ded *bbfb09bc2e0fc3222abbefebd711ffc6134387ffc1e53dc0f5cf17bb2006e26bd922d628b86fff *c60e2fb15cd2631c381099329d909fa2fa365f498938f6326c2465c0821f1d32be1c6fd34ff472 *4534f03cd2d8442871b2e72a38b45ab72d6a64bcb6433154781e88ac1542a395926968085eec6a *522461d7f793399206027f21f82acb95fc04b8d7171efb978cb7f865950382af89f92ed7872185 *859c6f949258822bb98617c380bef7e0e8e69e93fc447d0a365c6affd528fa8917881853f900ca *920dcad852961e211c8c2fe732982a5b2a440ea98b2a7c41fd0b3f75ab2831ad644281000a8687 *bb82815d145afa1f4691cddbf14dda7692dd231b57b414656f62940a4f4b42376d2b141f74aac5 *bfa8edd936371bdf69ff79a0feb56223e5ba6c28b56ecfa55824782a5f9871e15253955f1b8e72 *8dabfb7e8ac714966ce4f23485352c43059c3688182f984fe714f86889e7fcfc4857c3fc8b467f *c11ea760900545ad283495be79ff0d1c192afa3d997bbfc59c632a28573125fcfb43b0a59abb74 *77489ecf017c9033c38daff5e0252174789f0bcddebf3a6fe8023ea2a8ca5a7b4bc62dcca139b5 *9a3578dec7d34bc48efac47bcb70a698c2c67477a0e7e784aa4850b4eb958a50b2a274c058a6e2 *6c079cd514bd2a626bb1dd995fdaf6d358bc3939da33b8062f89ae826f4cc05bdb781545859cdd *cd01fddcb230c8121e0fac74729c88fc9314c15847726957c1dc8d8df3cdeb9e1d3114b090855c *cf04132fa09f6944fc9b28190afcd9d5cb7ee15950f6509ff4021a301f0fbb23879f02642c5f91 *4739dfed2543c45c335b29e4f0d0177831546cfc09fe79b9f4d3bf6a417f3d0f07d13087ff1c40 *7b5f561bb52b8c1a42d2485114f4ff958754daf585c4dcd77d44cd55ddb87abb28407819e459a0 *7c707636374f29d3aeef642dae741a769410f4f1aea8244185394897e80f0dda8ad3cf02e23cad *ae1ec17fd53586fcdb47f5ad4147e7462ddcc505b1619bdd40371c098e1e017afeb54aaaaa38b5 *cdfbc24fb36cfe1e5ee42df5a1c644530289c9cb9ff82e72b29272878def7895f8584208d694d4 *e56b7f6dd61e4d6129c9dd1b2359b14a49c36b41dca4fb00d525af005dc467b69a6f7b46fb3a57 *4ca5584ed91969f4aa7cf8899998cb3295925edf2fc95b6c378f82dcbb86ac035b97958651405b *37719c64d2ee96191fa08733d23eeda8b00964c2d7837bed3532a13aca87d2f833794861dc16e8 *122eed09975c7430383350dfea8205121a54efbba5340d63802037edbb6baccd517f0fe7d797b7 *f9de222090f8cc7f8e3d155094e3df880d53ea1cf49c35ceec9176ab068865444d7e8275fe42d0 *c3f2e006f6c68d9c8356e603fcb36a427fb1cdb7afb7f762ba922b3a532bad8ad541c134620ece *caa0ee7be671be050ba0ba34c5cd7079df4345b32822123252fdda83d25487acc5c6733ea1c932 *e9c94ee2ecbf97b6f9828d42a80e450afa822c896b97ea73ff8850e5c106ad214d49efcb04b663 *9f24062331f18bad88323d5209386ba169ebf180afc9687bf72dbf7d9061fb67fc88ce2c96fc8f *ebcbe902aa97b3768fb16bdef0fb33e5703647eae13cb12edecd5478f7b33b59f170fc22359fde *79a5eacdb1b1b85e14e891cbd97d5954eb76945c8352ffe9e06a47e4e3be045d523885ebfac7f1 *b2c317377182a184af5ceb9376ba514d74a55ba7222137558bac3cb1458cad08e5edc610f20e28 *879573f69b82eddc6a8604f757afc8b85f322cedf6de8b7898f6f2268f2ace194db524db4b7db1 *e3214b8f6aa48131423cce841526f43f7abaf1a9caaff9f715d5d6ec10b67a246d47bf04186803 *8fee65545d1f097290e4a7c94d8733fcdb020db6717328458aab2bf59a42555a89e6175acc075d *19f836573f0d599460aab3091313ebe186cb42b7d57e93fdc1a3b29107039a39778cb84e9c8f56 *b89802099c01e8d279ed479cee245b989e12447ec64c7da4d91538b6af5aefeadc16cefffa0023 *bf5894400ad59e6799232b9723b729978ecac04626d4a531144c71f60c8aa375cb8ae71a61adce *caa299aa2a8eb3f5466a7e95c5d315b1556704c5c4618ad1bcf7de091e0a35b29e408f1f6e26aa *fdc852ee727f733e7befd664cb7e1a368f26b88a0a0b5795c89177425140af722aec2c9751acc9 *a835ebadf95728a89ed20f73adf4bbb165996814ee5766bc1f95af4f083d654446df5e701cc530 *d159f85c168161613d49a8b138dafdf7b72cb64a40d670c0381c15bfcfb1cbd159f8edcecc98e5 *603031b8b7cfcbc0a4f12db738c3977e73a28a2a32859825d6481fc2a3844057113c325559e3b7 *aa98299a2a66e466f8962fb999aa77e8dd370284bad5fd4975cf67267382f70d1a219667f7f8c6 *de71ad6fd57309b9960a793ba96419c12d85ecd1ceabb561b36de459d5d81bbcfcb4ce36ae64ac *030508a57122eb0cd4643d1b5196b4e307dc16f8cc5719d2fca326cd37676d01d47858a38ecb49 *43f6326edff81a4d15e89f2965b4d81813522ff512f68db02b92de2e59aa126f123cb796f9bba8 *98a72f866696297542dc372413e8ff352c7088d714cf261d930605d6d14fba661a8caf697c2134 *a90c23cc8fde2744b4d9523e7f5bac3b6dbfc3ef6abdccabf60020bd28555ea1c7efa46c1ac3b4 *598a930590a496fd72750066945b689952319904c5ff9d9f8fbfb7a19b0716be7d0769bd0e2c9f *73bbc14dd526f11bddb07c1535044ce5a22e9e1e32e6cd4fc7082d83ca7fa8d47bc731d117265f *b5b9c7e7e14fd14bf66f56337c6a950591c96ed71a70f8e7f0388b239bb308a6b97cecb06a5168 *28086ae5d5faa11aeddf6a304ac87b006bc2cadbcdf6acbcce75fd703fb41ddb2783d741d7a0af *0bdea83939c414dc1b0c5641fc335497d88574c4b2e66ea70118ddd448b77f3e046125ab06ca04 *d2864e678ce5a32830c8184abfbf57fe1eece29a54844c3b8eee124687497dc7e073fecdd6910d *ffc8411453ed67752bf24fed1118bdf811edd643745461af4eac5a981a8dc4536bf277be6edb19 *597b91b2e7bb97400dafe59cc6f1c06668304628c79dd79db0da62eccd792e5f821d855b88fcc6 *e178adc22a5da5bdf0b5c722a280db284901bc026a916c0d58aa09f0efd015623fff30ed8a9f31 *0605dd15e679fb53ba9499fc29497a85cf18354d214e34612041ad786492dc24488f898eb7d49b *b83af90d867395579a62952f50ad89eeb2f35402540be946f635ca3ff4f1c56c8557e2e2476a5f *c66786b3c0c6668297ca124fe3bf1c1c7f5e46c687b7b0cb4061209e3fea6d65cde1f1cb847f8f *1f68c62b020e46fa3a27d30a5e264a2ff44bb6e3e204bed6d303e2502b08518e42e53b26cf0514 *97587be17073acd51316c67f827a9c06416137defbbcf3cfced4a6cba65f266df2e8ec1d223e0a *bc41bdc3a449f9c98d3d6f231184ce8c504d8f69e02c41bbc5b7f4644c4e9214a8b40998643951 *c0c1954034b808225a7b325eec16c4487d738ae01458a192f69fa3b5909f8ccf958c96f437be5a *b5364bb501131789eae2a064a5e441ab86946d66ea608d6c76e22c58ef755f587c0616a1dda770 *50209baf0ad59d65c01b0fa53836e7e42ec4987b957391418a16bf0b8d918a3b6e82edd3015853 *a365216e3d9dfb449143bdf0db8647f5d54ae0e62f7152cbc8c0bf4dfec41ac1f692dffec40d0c *8f5b161432da3dc8a3bd57ed295f3ca627b6c055b7675f420867a02cf026297d33f53e31347947 *b3dcac0ebad9cb599cff7ed534c4eb4a9be9e385d11134bc1f5d7e36adbd76eaba32f9926403fc *6213924d1e62a0c71f908df4fd418b29f7873344a57b57e5223a15cfbcdc5b4f0d3027f63ab7e8 *a621c018463d6dedab2c10b7e2e8eee5af336d22c486928582a7a94e9451de8bcfa5b2afada904 *168d6ad5a2d830321a7973ea3c8425c656a5a2b2444dd2c8eae935c4085911f32ed06247f40e48 *43f63b8bbcdc23992ecc6e635d9f33face42858f1aa9739bb66fc584fe9b2b09cd6e2bf949f693 *d86c7868bac37fb56d158673a6abc1daeab0c38c8f236d1254651b18e0fefc7402f28f352d3fc4 *8c55a7478f0e15fa403e3218604b8995f72b6f016f49c3dd7216f98a4c2f4de506c8f140d26b78 *914f6a4c9434f97eddd22e91986162b63332dfb0fda3767ab5fb6cadc888a2dcfd0fe907793ef4 *bb2d75e447881582f6ebc66cb2d9edfc59d8583d70340d080ec750a4359a6ea0e1cffd96ca9771 *7fa3bd81199eedc4ddebf558b8a59728c633d0a161e85514be32a284d5ef34a940fed33d82b4af *2b1c170fc25ad6c0786bc6506a228654b00b25792ed31bee196299767c9a5c4542fab3252cef8b *348e271325ec10aaccf1cfdb51254974d2da257c61ee7fd66209d95cc612020eaafbf09e6a06aa *732abe646957e1d4e6e560d776132f33f84a34b5ce7ffff9f111df2bfa14e735879330c8838083 *57afb5bc4f66e34c35d4ac5729c55b6db0a786714800de99f3d207a9848933ad58cf36193a2c99 *f2012a7e9a560251eb8f10d01326a5235c15514cf2c87191d015a62c175ae94b87b3fc63dd12e7 *ae48794ecc215f6bd9b98793006b53209c3a1890a8aedea973e464e64f788de5f8bc950eda30ea *ff22a68bdc98eb1d27e9d1a1e5e9afa94652bb978e14c3b008c6111b3808c483f4116add4c11d0 *2b0070b6f5c64f628698dbf14b3ee7aa23a4b7c8b8ef7d8dc85de939c4a0e67cb5529714b5bb9f *bcff5c63382d4c8a414e24697c2f1a578d9332d66da6dbb344f1e22bc7ea6edb326677e2343a84 *d98371cbbe33aafe2bf3d04783d860650a72caa92586fd9822da7bf5690cbf6a5734fdf303887b *6d257b2c728fe8afc86c912961b401a007f82b2fd8b3c7fa3b958fd5072b20d9b08cd8f2e36537 *f67387945352e1f84efc8715517b9f4d5fcd3ab897e43926c3a20f6f4c151a23096beda03a0dc5 *6f8e0adfc583891f7e64a1ec5d0352c91c8c229d675bd6a0777ac311508346b9a7b60822307018 *b4e52b6725dbfb22f5b38ccc7f93850d17c053c4affaf6f941f2db0b4413a0d3d1171675a230b5 *8a72ff26734aba7b636599d9f6a89c67cb752fa0af428d63e22f93082aec5e3f4e5f1bbf23a26b *2792601c7e459a9e21a1a87537cc600177a80a32df63c5a87779fb95a800e6ae13cfc5359429d9 *119a9abb0cb308ea106358a827e24f1c1453870aa9f280d65fdfe2d0e37de1e234f408ea5bf924 *28064c4909787101c4b16b12cc6fb3bd89dec1789856b30e1a69d838e862e5d4c002f74870c2e2 *c1004e7e57e114622f40a59155e82bfb8e02b6cde31b121173ffa24976a7bf78ae27232031990e *45e46918f87aaf16fb59e0ea43fb885923bbcaa402ff60800b2ca935cf42c56d0ab1bc31872ba8 *841e8f2e0c1783ce5d41269e64c4868c38820cde5c602cbf74fff0f3c377f2658d2d9604f2c1ce *bdc7f283a9aac24f15eee256c61b83cc220aeaca7b6ebcd9fae98aee9cd79d156fe8fd85ed991b *45a77b247d9950db8564e914fb053dc7d8b1a63841b226ef5efd9f15cc1f2f933f09b85e9a61d4 *b41aa5f604926ec883eeb2d8ed67f23a4a3c3cf3f24a2e10b2467a379b34e066f4fc43f68d7580 *17e05ed1e651dd0e6d64b6548f4d1dbd57feeaa684a6d869784df667b1a1b930aa9b5866f660ad *d64f124959edfd43e3975aea1a5995dab9a11ecc84298bdf0069e92047fb0d91b8e0b477fb9f2f *7a3e3190603ea9bd2f6b69270c8f0f514e0b8611e27dba63874648ae682dbb790aece2601b23e8 *c09eb948f2c9215010a1a5f808615b8a5cf503f3d777446c330698be25f0517d9a91e3c98f34f7 *771d23d20716872a60fbf9457219a701c28a95f29728f2cc118bed81880e7fc033a75405e4a586 *49c5615bc01ed331e44391385e8285705a2766f4554f8a60fd929e7b71e81c8f59b7b89490ff55 *9c893901abbf594d10112cbba9ffbd3642b5e9d8baf39d5df34c68f3c2c4b9edb490a675fdfb8e *ede9e7066392cddf886781704830b5a24442f5731ab7b31824cd03802d104372c0366b0dd66a1e *935ffb80d60f4af783366389670417e4a90944fce269667a62fc5390ac651cb2c3d5be0d473f06 *87f2ede28de929f307169cce2390d942577d0c2c97f45507ddedab1f3cd3e50815550fdbd3d607 *232367390aa49e53a25dcca6a49f6469c7d793cdc61fcf273af99e3d8c7fac7a1ecbeea3564e46 *49acf768560f20ffc5d04c65ddc6faeb373ffc2a3ad3f716f971b176d9f9352045c85ea462870a *ab13bf36038edd488799289741ab890d516f57a771400056e11b47be35ec5b12c88ebcd999d562 *b1ae54a58de999f0a54b8fc6b0ec40ae5a284934c67facb37a2b99721c896873eb1b1a6ed127d9 *a5035a3f8bb9f06169020dc936fa348ebbbea65cb80b32763ffbc4e49c92cf97c814a5469cc4ce *4fb41e021b2c0990afd29ec1276cde7e98ab07da62446a8da8ce0ac2362676411766e5b3e2808b *18f3a8b851fd2412bfd9e40bdddf187eff1c7e37fbb6c403e87101594b9679b60df6f438e6e4d8 *95076834b54b2a75bedc0cc46cfa1cc9ec1fb2fe4e65e5ad8f53951043e9acc38a5c982aaad27a *64c7f3835fb12c6ac4a89d9b9659395ad4d5b290b8eb96fc3d26dfc512af1fb5e41e885148792f *df8579eb6618ccf5595ad5ad37c0c0689062d0c939c8145f70e874a7e0cff8e3b4a041ce4e023f *b35c051353b44b6334b4ae43cb3caf74150093902ea3542228ea1c2a1fdeb759dec3dc11c194eb *1c0c8dbd427650298c95c01bb99669967d1f9c8ca1e092ee01ad20e8cdb2fd3afc1ddd0d7b7ede *1fd98306fdfe31ad0894576cc44023519e9eec19bf6febc1f9526965da94968eaa2c27c8ca8d94 *9a653cd180ba38339f3bef9c7060afef61dda1a09313073acbedd2be910c6e1a9921d509625203 *b915c1cfc5aaf0c0046088cb019c3c1a576b5670ed4f3649c5e755c973546796cfa3b5068b60a3 *8d810231c493e3924d6ba86ad37bb0b0e8c0c29d1bfef19a0de8bb48af165ae1f77e45162eaffd *f50c3ac99dc0ce19fad57eac19ae6c1f4db1f3758232c7035085b17c8e56c9efe91fe9a7269a2e *cb6874525c6d9843af368fb8eeea14ca61193d5a2394ed060cd7aefb025f5de0aa27b61658da32 *4579373479ef11962579b94b49d8d2b1f87a012bc2c98787bc636598b936ac21a2fa6a0d30d74c *f0286e563384821f5f8fb5661472cd7950af89158a4027cc02e89222dd43cd69626e89f4d2c686 *4c4f9dab437a80c3b7e22a2dea2b5a25fdddec4b97c1f1c7a1537f77654f861e98a8f958de2349 *b7b7d23e2db6990a0305623e369bd88013146e61db37ae39f8524599e7236e951413f37132e7c3 *6fef7af4a7393fb9d3a1bf62f1414d79bf9307b74cff98c822e6fb1a5711f4cb889a219587c7bf *eac252da3688468d47737a3eba26f7bbe37e2af520a9f8c148c6fbbf04fdff05ff270410472b73 *f72f2e4ee6ee0ee8ff01c9cb2713656e6473747265616d0a656e646f626a0a362030206f626a20 *3c3c0a2f54797065202f466f6e740a2f53756274797065202f54797065310a2f456e636f64696e *67203735203020520a2f46697273744368617220320a2f4c61737443686172203134380a2f5769 *64746873203737203020520a2f42617365466f6e74202f4b534d4148452b55525750616c6c6164 *696f4c2d526f6d610a2f466f6e7444657363726970746f722034203020520a3e3e20656e646f62 *6a0a342030206f626a203c3c0a2f417363656e74203731360a2f43617048656967687420363831 *0a2f44657363656e74202d3238320a2f466f6e744e616d65202f4b534d4148452b55525750616c *6c6164696f4c2d526f6d610a2f4974616c6963416e676c6520300a2f5374656d562038340a2f58 *486569676874203436390a2f466f6e7442426f78205b2d313636202d3238332031303231203934 *335d0a2f466c61677320340a2f4368617253657420282f66692f666c2f71756f74657269676874 *2f706172656e6c6566742f706172656e72696768742f636f6d6d612f68797068656e2f70657269 *6f642f736c6173682f7a65726f2f6f6e652f74776f2f74687265652f666f75722f666976652f73 *69782f736576656e2f65696768742f6e696e652f636f6c6f6e2f657175616c2f412f422f432f44 *2f452f462f472f482f492f4a2f4b2f4c2f4d2f4e2f4f2f502f512f522f532f542f552f562f572f *582f592f612f622f632f642f652f662f672f682f692f6a2f6b2f6c2f6d2f6e2f6f2f702f712f72 *2f732f742f752f762f772f782f792f7a2f71756f746564626c6c6566742f71756f746564626c72 *69676874290a2f466f6e7446696c652035203020520a3e3e20656e646f626a0a37372030206f62 *6a0a5b363035203630382030203020302030203020302030203020302030203020302030203020 *302030203020302030203020302030203020302030203020302030203020302030203020302030 *203020323738203333332033333320302030203235302033333320323530203630362035303020 *353030203530302035303020353030203530302035303020353030203530302035303020323530 *203020302036303620302030203020373738203631312037303920373734203631312035353620 *373633203833322033333720333333203732362036313120393436203833312037383620363034 *203738362036363820353235203631332037373820373232203130303020363637203636372030 *203020302030203020302030203530302035353320343434203631312034373920333333203535 *362035383220323931203233342035353620323931203838332035383220353436203630312035 *363020333935203432342033323620363033203536352038333420353136203535362035303020 *302030203020302030203020302030203020302030203020302030203020302030203020302030 *20302030203020302035303020353030205d0a656e646f626a0a31302030206f626a203c3c0a2f *54797065202f50616765730a2f436f756e7420360a2f506172656e74203738203020520a2f4b69 *6473205b3220302052203132203020522032302030205220323320302052203236203020522032 *39203020525d0a3e3e20656e646f626a0a33342030206f626a203c3c0a2f54797065202f506167 *65730a2f436f756e7420360a2f506172656e74203738203020520a2f4b696473205b3332203020 *5220333620302052203339203020522034322030205220343520302052203438203020525d0a3e *3e20656e646f626a0a35332030206f626a203c3c0a2f54797065202f50616765730a2f436f756e *7420360a2f506172656e74203738203020520a2f4b696473205b35312030205220353520302052 *203538203020522036312030205220363420302052203637203020525d0a3e3e20656e646f626a *0a37322030206f626a203c3c0a2f54797065202f50616765730a2f436f756e7420310a2f506172 *656e74203738203020520a2f4b696473205b3730203020525d0a3e3e20656e646f626a0a373820 *30206f626a203c3c0a2f54797065202f50616765730a2f436f756e742031390a2f4b696473205b *3130203020522033342030205220353320302052203732203020525d0a3e3e20656e646f626a0a *37392030206f626a203c3c0a2f54797065202f436174616c6f670a2f5061676573203738203020 *520a2f505445582e46756c6c62616e6e6572202854686973206973207064665465582c20566572 *73696f6e20332e31343135392d312e313062290a3e3e20656e646f626a0a38302030206f626a20 *3c3c0a2f50726f647563657220287064665465582d312e313062290a2f43726561746f72202854 *6558290a2f4372656174696f6e446174652028443a3230303530333134323232373030290a3e3e *20656e646f626a0a787265660a302038310a303030303030303031342036353533352066200a30 *303030303031323434203030303030206e200a30303030303031313332203030303030206e200a *30303030303030303039203030303030206e200a30303030313034323838203030303030206e20 *0a30303030303830363336203030303030206e200a30303030313034313232203030303030206e *200a30303030303739383835203030303030206e200a3030303030353835363220303030303020 *6e200a30303030303739373139203030303030206e200a30303030313035323039203030303030 *206e200a30303030303033333536203030303030206e200a303030303030333234312030303030 *30206e200a30303030303031333233203030303030206e200a3030303030303030303020303030 *30302066200a30303030303538343736203030303030206e200a30303030303535363731203030 *303030206e200a30303030303430313436203030303030206e200a303030303035353531342030 *30303030206e200a30303030303035393631203030303030206e200a3030303030303538343620 *3030303030206e200a30303030303033343630203030303030206e200a30303030303038303635 *203030303030206e200a30303030303037393530203030303030206e200a303030303030363036 *35203030303030206e200a30303030303130333238203030303030206e200a3030303030313032 *3133203030303030206e200a30303030303038313639203030303030206e200a30303030303132 *333230203030303030206e200a30303030303132323035203030303030206e200a303030303031 *30343332203030303030206e200a30303030303134363839203030303030206e200a3030303030 *3134353734203030303030206e200a30303030303132343234203030303030206e200a30303030 *313035333137203030303030206e200a30303030303136373034203030303030206e200a303030 *30303136353839203030303030206e200a30303030303134373933203030303030206e200a3030 *3030303138383131203030303030206e200a30303030303138363936203030303030206e200a30 *303030303136383038203030303030206e200a30303030303231313437203030303030206e200a *30303030303231303332203030303030206e200a30303030303138393135203030303030206e20 *0a30303030303233313932203030303030206e200a30303030303233303737203030303030206e *200a30303030303231323531203030303030206e200a3030303030323535393520303030303020 *6e200a30303030303235343830203030303030206e200a30303030303233323936203030303030 *206e200a30303030303237393138203030303030206e200a303030303032373830332030303030 *30206e200a30303030303235363939203030303030206e200a3030303031303534323620303030 *3030206e200a30303030303330303237203030303030206e200a30303030303239393132203030 *303030206e200a30303030303238303232203030303030206e200a303030303033323432312030 *30303030206e200a30303030303332333036203030303030206e200a3030303030333031333120 *3030303030206e200a30303030303334373832203030303030206e200a30303030303334363637 *203030303030206e200a30303030303332353235203030303030206e200a303030303033363931 *36203030303030206e200a30303030303336383031203030303030206e200a3030303030333438 *3836203030303030206e200a30303030303338323131203030303030206e200a30303030303338 *303936203030303030206e200a30303030303337303230203030303030206e200a303030303033 *39303630203030303030206e200a30303030303338393435203030303030206e200a3030303030 *3338323931203030303030206e200a30303030313035353335203030303030206e200a30303030 *303339313239203030303030206e200a30303030303536323735203030303030206e200a303030 *30303536363636203030303030206e200a30303030303830323539203030303030206e200a3030 *3030313034373437203030303030206e200a30303030313035363039203030303030206e200a30 *303030313035363930203030303030206e200a30303030313035373938203030303030206e200a *747261696c65720a3c3c0a2f53697a652038310a2f526f6f74203739203020520a2f496e666f20 *3830203020520a3e3e0a7374617274787265660a3130353839330a2525454f460a addfile ./tutorial.lisp hunk ./tutorial.lisp 1 +;;;# ParenScript Tutorial + +;;; This chapter is a short introductory tutorial to ParenScript. It +;;; hopefully will give you an idea how ParenScript can be used in a +;;; Lisp web application. + +;;;# Setting up the ParenScript environment + +;;; In this tutorial, we will use the Portable Allegroserve webserver +;;; to serve the tutorial web application. We use the ASDF system to +;;; load both Allegroserve and ParenScript. I assume you have +;;; installed and downloaded Allegroserve and Parenscript, and know +;;; how to setup the central registry for ASDF. + +(asdf:oos 'asdf:load-op :aserve) + +; ... lots of compiler output ... + +(asdf:oos 'asdf:load-op :parenscript) + +; ... lots of compiler output ... + +;;; The tutorial will be placed in its own package, which we first +;;; have to define. + +(defpackage :js-tutorial + (:use :common-lisp :net.aserve :js :net.html.generator)) + +(in-package :js-tutorial) + +;;; The next command starts the webserver on the port 8000. + +(start :port 8000) + +;;; We are now ready to generate the first JavaScript-enabled webpages +;;; using ParenScript. + +;;;# A simple embedded example + +;;; The first document we will generate is a simple HTML document, +;;; which features a single hyperlink. When clicking the hyperlink, a +;;; JavaScript handler opens a popup alert window with the string +;;; "Hello world". To facilitate the development, we will factor out +;;; the HTML generation to a separate function, and setup a handler +;;; for the url "/tutorial1", which will generate HTTP headers and +;;; call the function `TUTORIAL1'. At first, our function does nothing. + +(defun tutorial1 (req ent) + (declare (ignore req ent)) + nil) + +(publish :path "/tutorial1" + :content-type "text/html; charset=ISO-8859-1" + :function #'(lambda (req ent) + (with-http-response (req ent) + (with-http-body (req ent) + (tutorial1 req ent))))) + +;;; Browsing "http://localhost:8000/tutorial1" should return an empty +;;; HTML page. It's now time to fill this rather page with +;;; content. ParenScript features a macro that generates a string that +;;; can be used as an attribute value of HTML nodes. + +(defun tutorial1 (req ent) + (declare (ignore req ent)) + (html + (:html + (:head (:title "ParenScript tutorial: 1st example")) + (:body (:h1 "ParenScript tutorial: 1st example") + (:p "Please click the link below." :br + ((:a :href "#" :onclick (js-inline + (alert "Hello World"))) + "Hello World")))))) + +;;; Browsing "http://localhost:8000/tutorial1" should return the +;;; following HTML: + +;;;f "images/tutorial1-1.png" 0.6 Embedded ParenScript example + +ParenScript tutorial: 1st example + +

ParenScript tutorial: 1st example

+

Please click the link below.
+Hello World +

+ + + +;;;# Adding an inline ParenScript + +;;; Suppose we now want to have a general greeting function. One way +;;; to do this is to add the javascript in a `SCRIPT' element at the +;;; top of the HTML page. This is done using the `JS-SCRIPT' macro +;;; which will generate the necessary XML and comment tricks to +;;; cleanly embed JavaScript. We will redefine our `TUTORIAL1' +;;; function and add a few links: + +(defun tutorial1 (req ent) + (declare (ignore req ent)) + (html + (:html + (:head + (:title "ParenScript tutorial: 2nd example") + (js-script + (defun greeting-callback () + (alert "Hello World")))) + (:body + (:h1 "ParenScript tutorial: 2nd example") + (:p "Please click the link below." :br + ((:a :href "#" :onclick (js-inline (greeting-callback))) + "Hello World") + :br "And maybe this link too." :br + ((:a :href "#" :onclick (js-inline (greeting-callback))) + "Knock knock") + :br "And finally a third link." :br + ((:a :href "#" :onclick (js-inline (greeting-callback))) + "Hello there")))))) + +;;; This will generate the following HTML page, with the embedded +;;; JavaScript nicely sitting on top. Take note how +;;; `GREETING-CALLBACK' was converted to camelcase, and how the lispy +;;; `DEFUN' was converted to a JavaScript function declaration. + +;;;f "images/tutorial1-2.png" 0.6 Inline ParenScript example + +ParenScript tutorial: 2nd example + + +

ParenScript tutorial: 2nd example

+

Please click the link below.
+Hello World +
+And maybe this link too.
+Knock knock +
+ +And finally a third link.
+Hello there +

+ + + +;;;# Generating a JavaScript file + +;;; The best way to integrate ParenScript into a Lisp application is +;;; to generate a JavaScript file from ParenScript code. This file can +;;; be cached by intermediate proxies, and webbrowsers won't have to +;;; reload the javascript code on each pageview. A standalone +;;; JavaScript can be generated using the macro `JS-FILE'. We will +;;; publish the tutorial JavaScript under "/tutorial.js". + +(defun tutorial1-file (req ent) + (declare (ignore req ent)) + (js-file + (defun greeting-callback () + (alert "Hello World")))) + +(publish :path "/tutorial1.js" + :content-type "text/javascript; charset=ISO-8859-1" + :function #'(lambda (req ent) + (with-http-response (req ent) + (with-http-body (req ent) + (tutorial1-file req ent))))) + +(defun tutorial1 (req ent) + (declare (ignore req ent)) + (html + (:html + (:head + (:title "ParenScript tutorial: 3rd example") + ((:script :language "JavaScript" :src "/tutorial1.js"))) + (:body + (:h1 "ParenScript tutorial: 3rd example") + (:p "Please click the link below." :br + ((:a :href "#" :onclick (js-inline (greeting-callback))) + "Hello World") + :br "And maybe this link too." :br + ((:a :href "#" :onclick (js-inline (greeting-callback))) + "Knock knock") + :br "And finally a third link." :br + ((:a :href "#" :onclick (js-inline (greeting-callback))) + "Hello there")))))) + +;;; This will generate the following JavaScript code under +;;; "/tutorial1.js": + +function greetingCallback() { + alert("Hello World"); +} + +;;; and the following HTML code: + +ParenScript tutorial: 3rd example + + +

ParenScript tutorial: 3rd example

+

Please click the link below.
+Hello World +
+And maybe this link too.
+Knock knock +
+ +And finally a third link.
+Hello there +

+ + + +;;;# A ParenScript slideshow + +;;; While developing ParenScript, I used JavaScript programs from the +;;; web and rewrote them using ParenScript. This is a nice slideshow +;;; example from + + http://www.dynamicdrive.com/dynamicindex14/dhtmlslide.htm + +;;; The slideshow will be accessible under "/slideshow", and will +;;; slide through the images "photo1.png", "photo2.png" and +;;; "photo3.png". The first ParenScript version will be very similar +;;; to the original JavaScript code. The second version will then show +;;; how to integrate data from the Lisp environment into the +;;; ParenScript code, allowing us to customize the slideshow +;;; application by supplying a list of image names. We first setup the +;;; slideshow path. + +(publish :path "/slideshow" + :content-type "text/html" + :function #'(lambda (req ent) + (with-http-response (req ent) + (with-http-body (req ent) + (slideshow req ent))))) + +(publish :path "/slideshow.js" + :content-type "text/html" + :function #'(lambda (req ent) + (with-http-response (req ent) + (with-http-body (req ent) + (js-slideshow req ent))))) + +;;; The images are just random images I found on my harddrive. We will +;;; publish them by hand for now. + +(publish-file :path "/photo1.png" + :file "/home/manuel/bknr-sputnik.png") +(publish-file :path "/photo2.png" + :file "/home/manuel/bknrlogo_red648.png") +(publish-file :path "/photo3.png" + :file "/home/manuel/bknr-sputnik.png") + +;;; The function `SLIDESHOW' generates the HTML code for the main +;;; slideshow page. It also features little bits of ParenScript. These +;;; are the callbacks on the links for the slideshow application. In +;;; this special case, the javascript generates the links itself by +;;; using `document.write' in a "SCRIPT" element. Users that don't +;;; have JavaScript enabled won't see anything at all. +;;; +;;; `SLIDESHOW' also generates a static array called `PHOTOS' which +;;; holds the links to the photos of the slideshow. This array is +;;; handled by the ParenScript code in "slideshow.js". Note how the +;;; HTML code issued by the JavaScript is generated using the `HTML' +;;; construct. In fact, we have two different HTML generators in the +;;; example below, one is the standard Lisp HTML generator, and the +;;; other is the JavaScript HTML generator, which generates a +;;; JavaScript expression. + +(defun slideshow (req ent) + (declare (ignore req ent)) + (html + (:html + (:head (:title "ParenScript slideshow") + ((:script :language "JavaScript" + :src "/slideshow.js")) + (js-script + (defvar *linkornot* 0) + (defvar photos (array "photo1.png" + "photo2.png" + "photo3.png")))) + (:body (:h1 "ParenScript slideshow") + (:body (:h2 "Hello") + ((:table :border 0 + :cellspacing 0 + :cellpadding 0) + (:tr ((:td :width "100%" :colspan 2 :height 22) + (:center + (js-script + (let ((img + (html + ((:img :src (aref photos 0) + :name "photoslider" + :style ( + "filter:" + (js (reveal-trans + (setf duration 2) + (setf transition 23)))) + :border 0))))) + (document.write + (if (= *linkornot* 1) + (html ((:a :href "#" + :onclick (js-inline (transport))) + img)) + img))))))) + (:tr ((:td :width "50%" :height "21") + ((:p :align "left") + ((:a :href "#" + :onclick (js-inline (backward) + (return false))) + "Previous Slide"))) + ((:td :width "50%" :height "21") + ((:p :align "right") + ((:a :href "#" + :onclick (js-inline (forward) + (return false))) + "Next Slide")))))))))) + +;;; `SLIDESHOW' generates the following HTML code (long lines have +;;; been broken down): + +ParenScript slideshow + + + +

ParenScript slideshow

+

Hello

+ + + + + + +
+
+
+

+Previous Slide + +

+

+Next Slide +

+
+ + + + +;;;f "images/slideshow.png" 0.45 ParenScript Slideshow + +;;; The actual slideshow application is generated by the function +;;; `JS-SLIDESHOW', which generates a ParenScript file. The code is +;;; pretty straightforward for a lisp savy person. Symbols are +;;; converted to JavaScript variables, but the dot "." is left as +;;; is. This enables us to access object "slots" without using the +;;; `SLOT-VALUE' function all the time. However, when the object we +;;; are referring to is not a variable, but for example an element of +;;; an array, we have to revert to `SLOT-VALUE'. + +(defun js-slideshow (req ent) + (declare (ignore req ent)) + (js-file + (defvar *preloaded-images* (make-array)) + (defun preload-images (photos) + (dotimes (i photos.length) + (setf (aref *preloaded-images* i) (new *Image) + (slot-value (aref *preloaded-images* i) 'src) + (aref photos i)))) + + (defun apply-effect () + (when (and document.all photoslider.filters) + (let ((trans photoslider.filters.reveal-trans)) + (setf (slot-value trans '*Transition) + (floor (* (random) 23))) + (trans.stop) + (trans.apply)))) + + (defun play-effect () + (when (and document.all photoslider.filters) + (photoslider.filters.reveal-trans.play))) + + (defvar *which* 0) + + (defun keep-track () + (setf window.status + (+ "Image " (1+ *which*) " of " photos.length))) + + (defun backward () + (when (> *which* 0) + (decf *which*) + (apply-effect) + (setf document.images.photoslider.src + (aref photos *which*)) + (play-effect) + (keep-track))) + + (defun forward () + (when (< *which* (1- photos.length)) + (incf *which*) + (apply-effect) + (setf document.images.photoslider.src + (aref photos *which*)) + (play-effect) + (keep-track))) + + (defun transport () + (setf window.location (aref photoslink *which*))))) + +;;; `JS-SLIDESHOW' generates the following JavaScript code: + +var PRELOADEDIMAGES = new Array(); +function preloadImages(photos) { + for (var i = 0; i != photos.length; i = i++) { + PRELOADEDIMAGES[i] = new Image; + PRELOADEDIMAGES[i].src = photos[i]; + } +} +function applyEffect() { + if (document.all && photoslider.filters) { + var trans = photoslider.filters.revealTrans; + trans.Transition = Math.floor(Math.random() * 23); + trans.stop(); + trans.apply(); + } +} +function playEffect() { + if (document.all && photoslider.filters) { + photoslider.filters.revealTrans.play(); + } +} +var WHICH = 0; +function keepTrack() { + window.status = "Image " + (WHICH + 1) + " of " + + photos.length; +} +function backward() { + if (WHICH > 0) { + --WHICH; + applyEffect(); + document.images.photoslider.src = photos[WHICH]; + playEffect(); + keepTrack(); + } +} +function forward() { + if (WHICH < photos.length - 1) { + ++WHICH; + applyEffect(); + document.images.photoslider.src = photos[WHICH]; + playEffect(); + keepTrack(); + } +} +function transport() { + window.location = photoslink[WHICH]; +} + +;;;# Customizing the slideshow + +;;; For now, the slideshow has the path to all the slideshow images +;;; hardcoded in the HTML code, as well as in the publish +;;; statements. We now want to customize this by publishing a +;;; slideshow under a certain path, and giving it a list of image urls +;;; and pathnames where those images can be found. For this, we will +;;; create a function `PUBLISH-SLIDESHOW' which takes a prefix as +;;; argument, as well as a list of image pathnames to be published. + +(defun publish-slideshow (prefix images) + (let* ((js-url (format nil "~Aslideshow.js" prefix)) + (html-url (format nil "~Aslideshow" prefix)) + (image-urls + (mapcar #'(lambda (image) + (format nil "~A~A.~A" prefix + (pathname-name image) + (pathname-type image))) + images))) + (publish :path html-url + :content-type "text/html" + :function #'(lambda (req ent) + (with-http-response (req ent) + (with-http-body (req ent) + (slideshow2 req ent image-urls))))) + (publish :path js-url + :content-type "text/html" + :function #'(lambda (req ent) + (with-http-response (req ent) + (with-http-body (req ent) + (js-slideshow req ent))))) + (map nil #'(lambda (image url) + (publish-file :path url + :file image)) + images image-urls))) + +(defun slideshow2 (req ent image-urls) + (declare (ignore req ent)) + (html + (:html + (:head (:title "ParenScript slideshow") + ((:script :language "JavaScript" + :src "/slideshow.js")) + ((:script :type "text/javascript") + (:princ (format nil "~%// ~%")))) + (:body (:h1 "ParenScript slideshow") + (:body (:h2 "Hello") + ((:table :border 0 + :cellspacing 0 + :cellpadding 0) + (:tr ((:td :width "100%" :colspan 2 :height 22) + (:center + (js-script + (let ((img + (html + ((:img :src (aref photos 0) + :name "photoslider" + :style ( + "filter:" + (js (reveal-trans + (setf duration 2) + (setf transition 23)))) + :border 0))))) + (document.write + (if (= *linkornot* 1) + (html ((:a :href "#" + :onclick (js-inline (transport))) + img)) + img))))))) + (:tr ((:td :width "50%" :height "21") + ((:p :align "left") + ((:a :href "#" + :onclick (js-inline (backward) + (return false))) + "Previous Slide"))) + ((:td :width "50%" :height "21") + ((:p :align "right") + ((:a :href "#" + :onclick (js-inline (forward) + (return false))) + "Next Slide")))))))))) + +;;; We can now publish the same slideshow as before, under the +;;; "/bknr/" prefix: + +(publish-slideshow "/bknr/" + `("/home/manuel/bknr-sputnik.png" + "/home/manuel/bknrlogo_red648.png" + "/home/manuel/screenshots/screenshot-14.03.2005-11.54.33.png")) + +;;; That's it, we can now access our customized slideshow under + + http://localhost:8000/bknr/slideshow + addfile ./utils.lisp hunk ./utils.lisp 1 - +(in-package :js) + +(defun list-join (list elt) + (let (res) + (dolist (i list) + (push i res) + (push elt res)) + (pop res) + (nreverse res))) + +;;; wie herrlich effizient +(defun list-to-string (list) + (reduce #'(lambda (str1 &optional (str2 "")) + (concatenate 'string str1 str2)) + list)) + +(defun append-to-last (form elt) + (cond ((stringp form) + (concatenate 'string form elt)) + ((consp form) + (let ((last (last form))) + (if (stringp (car last)) + (rplaca last (concatenate 'string (car last) elt)) + (append-to-last (car last) elt)) + form)) + (t (error "unsupported form ~S" form)))) + +(defun prepend-to-first (form elt) + (cond ((stringp form) + (concatenate 'string elt form)) + ((consp form) + (let ((first (first form))) + (if (stringp first) + (rplaca form (concatenate 'string elt first)) + (prepend-to-first first elt)) + form)) + (t (error "unsupported form ~S" form)))) + +(defun string-join (strings elt) + (list-to-string (list-join strings elt))) + +(defun val-to-string (val) + (cond ((stringp val) val) + ((symbolp val) (string-downcase (symbol-name val))) + (t (princ-to-string val)))) + +(defun string-split (string separators) + (do ((len (length string)) + (i 0 (1+ i)) + (last 0) + res) + ((= i len) + (nreverse (if (> i last) + (cons (subseq string last i) res) + res))) + (when (member (char string i) separators) + (push (subseq string last i) res) + (setf last (1+ i))))) }